PIC16F15225 a synchronní sériový port

Jindrich Fucik fulda na seznam.cz
Neděle Duben 28 22:21:38 CEST 2024


Ahoj,

mám takový problém, kterému moc nerozumím.
Mám synchronní sériovou komunikaci, ve které jsem slave. Master generuje 
clock i data. Protokol je takový, že běží komunikace, clock je 
generovaný v rozsahu 10 až 500 µs. Občas ale udělá pauzu delší než 8 ms 
a podle toho slave pozná, že tady začíná nový bajt a má začít 
odpočítávat začátek.
Komunikaci čtu pomocí USART v režimu sync a continuous receiver, pauzu 
delší než 8ms čtu pomocí Timer 2 s externím resetem nastaveným na clock, 
to funguje správně.

A teď můj problém - nevím jak vyresetovat ten USART, respektive jak mu 
říci, že má zahodit co doposud nasbíral do posuvného registru a má začít 
znovu. Myslel jsem, že bude stačit shodit SPEN (disable serial port) a 
pak jej zase nahodit (enable serial port). To ale evidentně nefunguje.
Nezná někdo nějakou chytřejší metodu?

Díky


Další informace o konferenci Hw-list