Сбой в петле Master-Slave по SPI - методы восстановления (PIC)

Hi Rifkat, hope you are having a nice day!

10 Авг 04, Rifkat Abdulin wrote to All:

RA> В PIC (18F8720) сдвиговый регистр SSPSR недоступен из камня - то есть RA> счетчик битов из проги вроде бы не сбрасывается. Можно ли восстановить RA> ситуацию выключением и новым включением модуля MSSP?

Да.

WBR, AVB

Reply to
Alexey V Bugrov
Loading thread data ...

Столкнулся с интересной ситуацией - заказчик выдал ТЗ - конфигурировать устройство консолью по SPI. Включение "горячее" - на ходу. Но - как только делаю такое подключение, Slave по CLK вылавливает синроимпульс и его сдвиговый регистр сдвигается на 1 бит. В PIC (18F8720) сдвиговый регистр SSPSR недоступен из камня - то есть счетчик битов из проги вроде бы не сбрасывается. Можно ли восстановить ситуацию выключением и новым включением модуля MSSP? Пока я лечу тупым RESETом от внешнего WDT.

Reply to
Rifkat Abdulin

Hello,Rifkat !

RA> его сдвиговый регистр сдвигается на 1 бит. В PIC (18F8720) сдвиговый RA> регистр SSPSR недоступен из камня - то есть счетчик битов из проги RA> вроде бы не сбрасывается.

Я не из ПИКов, но аналогичный случай был у меня на AVR-ах. Там я из ADuC812 гонял в Мегу103 по SPI. Где она ловила этот лишний импульс - хез но он продолжал ползать, портя все последующее. Я после принятия сообщения передергивал Мегу в мастер и обратно в слейв. Помогало. Может, и тебе пригодится. Потом, правда, выбросили ADuC812 вообще, и вопрос отпал сам.

WBR Eugene

Reply to
Rubens Baricello

Hello, Rifkat Abdulin !

В PIC16 я именно так и переинициализировал SPI при ошибках.

С уважением, Дима Орлов.

Reply to
Dima Orlov

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.