Cześć,
Przenoszę obsługę czujnika HIH6030 z AVR na STM32. Na Atmedze działał poprawnie, więc adresy i wysyłane sekwencje są w odpowiedniej kolejności. Problem polega na tym, że po ponownym wysłaniu bitu startu i próbie zapisu ( i2c_write_byte( (HIH6030_ADDR << 1) | 0x01 ) ) program się zawiesza i czeka na odpowiednią flagę w pętli while. Załączam kod i schemat podłączonego układu.
plik I2C.C
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
plik I2C.H
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
plik HIH6030.C
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
plik HIH_6030.H
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
------------------------ [ Dodano po: 3 minutach ]P.S. Dodaję zdj schematu

linie SDA i SCL są podłączone do pinów PB7 i PB6