STM32L152RB problem s interruptom na I2C

Stano stano.hw na gmail.com
Středa Září 11 21:16:07 CEST 2013


Zdravim konferenci
Pisem si vlastnu kniznicu pre I2C vyuzivajucu interrupt na STM32L152RC. 
Program funguje viacmenej podla ocakavania. Teda vsetko je presne ako 
som ocakaval podla datasheetu az na posledne prerusenie pri vysielani. 
Poslednym IRQ by malo byt EV8_2 (Figure 210. Transfer sequence diagram 
for master transmitter). Ale po tomto nastava presne po odoslani stop 
condition este jedno prerusenie. Ked program stepujem v debuggeri 
nenastane ale ak dam RUN tak ano. Zvlastne je to tym ze nieje nastaveny 
ziaden flag ktory moze I2C EVENT vyvolat (SB, ADDR, AD10, STOPF, BTF, 
TXE, RXNE). Posledne 2 by sa dokonca vobec nemali uplatnovat kedze 
ITBUFEN je tiez 0.
DMA zatial nepouzivam.
Ak povolim ITBUFEN dany interrupt NENASTANE.
Prerusenia sledujem pomocou GPIO a LA, jadro a zbernice bezia na 32MHz. 
Ked SYSCLK podtaktujem (rychlost I2C zostava 400kHz) dane prerusenie 
zmizne. Stretol sa s tym niekto?
V principe mi ten IRQ nevadi, len chcem vediet co sa zanim skryva a 
hlavne ako mohol nastat ked nieje aktivny ziaden z flagov ktore ho mozu 
vyvolat.

Vopred dakujem za odpovede
Stano


Další informace o konferenci Hw-list