Sfoglia il codice sorgente

Turning on the PUSHR_CONT removes gap

Experiment with making the whole transfer of the buffer act like it is
to logically hold the CS pins for that whole transfer.  This removes
gaps between each 16 bit transfer.
main
Kurt Eckhardt 8 anni fa
parent
commit
9ea3dd95e6
1 ha cambiato i file con 4 aggiunte e 1 eliminazioni
  1. +4
    -1
      SPI.cpp

+ 4
- 1
SPI.cpp Vedi File

@@ -347,7 +347,10 @@ void SPIClass::transfer(void *buf, size_t count) {
// Push out the next byte;
uint16_t w = (*p_write++) << 8;
w |= *p_write++;
KINETISK_SPI0.PUSHR = w | SPI_PUSHR_CTAS(1);
if (count == 2)
KINETISK_SPI0.PUSHR = w | SPI_PUSHR_CTAS(1);
else
KINETISK_SPI0.PUSHR = w | SPI_PUSHR_CONT | SPI_PUSHR_CTAS(1);
count -= 2; // how many bytes to output.
// Make sure queue is not full before pushing next byte out
do {

Loading…
Annulla
Salva