Witam, napotkałem problem z obsługą akcelerometru MMA7455 po I2C. Mianowicie nie udaje mi się nawet wygenerować bitu startu. Wywołuję funkcję TWI_start i zaraz po niej chcę wypisać sobie rejestr statusu a tu program staje. Funkcja TWI_start po ustawieniu rejestru czeka na sprzętowe wyzerowanie bitu TWINT, które nie następuje. Na liniach magistrali po "zawieszeniu" programu mam napięcie ok 2V?? (układ zasilany z 3.3V, rezystory podciągające 4.7k).
Moja pierwsza myśl to, że źle polutowałem akcelerometr ale chyba nawet jak nie ma żadnego slave na magistrali to powinienem dać radę wysłąć bit startu?
Spotkał się ktoś kiedyś z czymś podobnym? Będę wdzięczny za jakąkolwiek radę. Poniżej testowana i na pewno działająca biblioteka do I2C oraz fragment mojego testowego programu
Moja pierwsza myśl to, że źle polutowałem akcelerometr ale chyba nawet jak nie ma żadnego slave na magistrali to powinienem dać radę wysłąć bit startu?
Spotkał się ktoś kiedyś z czymś podobnym? Będę wdzięczny za jakąkolwiek radę. Poniżej testowana i na pewno działająca biblioteka do I2C oraz fragment mojego testowego programu
Kod: C / C++
Kod: C / C++