Chettuser писал(а):Здравствуйте.
Настроил STM32F103 на работу с SPI+DMA. Это нужно для работы с LCD от Nokia 1616. Но вот не пойму - как мне дёргать ногу дисплея nCS при таком настроенном автомате? Дело в том, что дисплей кушает 9-битный SPI, а вот у МК только на выбор или 8 или 16 бит. Шлю 16 бит со сдвигом. В конце передачи надо бы защёлкнуть, но настроено DMA и не пойму как это сделать с минимальными вмешательствами.[/b].
Спасибо.
Повесить CS на любой GPIO и выставлять его в высокий уровень по окончанию передачи по DMA. На память не помню. Вроде бы на 350 наносекунд минимум, чтобы контроллер TFT осознал break в обмене.
На самом деле, если не читаете из фреймбуфера, можно CS намертво повесить на землю и добивать последний байт/слово командой(командами) NOP, с перекрытием следующего байта/слова. Ну и фиксировать в переменной, что часть байта/слова уже заняты. С чтением такой вариант не пройдет. Чтение при любом раскладе следует завершать высоким уровнем CS.

