Przeglądaj źródła

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 lat temu
rodzic
commit
9ea3dd95e6
1 zmienionych plików z 4 dodań i 1 usunięć
  1. +4
    -1
      SPI.cpp

+ 4
- 1
SPI.cpp Wyświetl plik

@@ -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 {

Ładowanie…
Anuluj
Zapisz