Здравствуйте уважаемые разработчики.
Реализую обмен по SPI с другим процессором. SPI работает через DMA я SLAVE.
В случае когда мастер передает данные, DMA настраиваю: Source Address Register (DMSRC) – 0x21(порт MCBSP0) Destination Address Register (DMDST) – некий буфер в памяти В этом случае все отлично работает.
В случае когда SLAVE передает данные, DMA настраиваю: Source Address Register (DMSRC) – некий буфер в памяти Destination Address Register (DMDST) – 0x23(порт MCBSP0) В этом случае данные из буфера передаются только по 2 слова, т.е. если от мастер будет забирать 3 слова то передаться первые 2, а 3-е будет первое слово из буфера. Такое впечатление, что адрес буфера циклически бегает то первым 2 словам.
Может кто знает от чего это, все регистры проинициализированы вроде правильно. Помогите несколько дней е..сь уж сил нет.
Заранее спасибо!!!
|