|
АВР должна принять 16 бит с АЦП.
1. Естественно АВР д.б. Мастером.
2. Чтобы принять данные, нужно в SPDR (Data Register) записать любое значение, т.е. вызвать появление SCK (подключенное к тактированию АЦП) , тогда это значение через MOSI уйдет вникуда, но одновременно через MISO (подключенное к выходу АЦП) приму нужные данные.
3. SPI общается байтами, то для приема 16 бит нужно в SPDR (Data Register) два раза записать любое значение, причем вторая посылка может быть организована, например, по прерыванию об окончании первой посылки, т.е. между первыми 8 SCK и вторыми - будет промежуток.
4. Если устроит получившаяся скорость обмена (наверное, будет меньше, чем у SPI), то можно программно сформировать 16 SCK и принять нужные данные.
Правильно ли я изложил, т.е. понял SPI механизм?
E-mail: info@telesys.ru