Witam,
Posiadam do naprawy stację diagnostyczna Ford WDS w której jest problem z baterią, mianowicie system jej nie rozpoznaje.
Pierwsze co zrobiłem to wgrałem ponownie wsad do pamięci EEPROM sterownika (BQ2040) ale nic to nie dało.
Następnie ogłosiłem się tutaj że kupię takowy układ i po pewnym czasie pojawił się odgłos.
Niestety okazało się że układ jest używany (ale to nie wina sprzedającego, sam nie wiedział że taki przyjdzie i czeka na informacje ode mnie) i teraz nie wiem czy to problem z baterią czy coś w WDS.
Z dokumentacji wynika, że sterownik posiada możliwość wyświetlania stanu baterii za pomocą 4 diod LED które fabrycznie nie były wlutowane w płytkę.
Tak więc dolutowałem je i zwarłem odpowiedni pin określony w dokumentacji do masy, po czym zobaczyłem jak jeden segment diody miga (pod pinem nr. 4).
Wynika więc że bateria jest rozładowana, chodź napięcie na niej to jakieś 10.6V (8 ogniw).
Więc już w desperacji postanowiłem połączyć się z tym układem za pomocą atmegi.
Z dokumentacji wynika że komunikacja z nim jest wręcz identyczna jak ze zwykłą pamięcią EEPROM oraz że prędkość komunikacji nie może być większa jak 100kHz.
Tak więc rejestr odpowiedzialny na prędkość (TWBR) ustawiłem na 150 (20MHz dla atmegi) co daje mi 63.3kHz sygnału zegarowego.
I następnie wziąłem się za próbę komunikacji:
Jak widać za każdym razem gdy jest wysyłana dana wyświetlam status transmisji.
I problem pojawia się już w czasie wysyłania adresu urządzenia, ponieważ zwracany kod to TW_MT_SLA_NACK czyli BQ2040 nie odpowiedziało.
Pomyślałem że może to problem z adresem, że jednak jest inny więc w prostej pętli przeleciałem wszystkie możliwe kombinacje, ale za każdym razem nie otrzymuję ACK.
Co mogę robić źle? A może to ten układ jest także uszkodzony?
Dokumentacja BQ2040:
http://www.ti.com/lit/ds/symlink/bq2040.pdf
Pozdrawiam
Posiadam do naprawy stację diagnostyczna Ford WDS w której jest problem z baterią, mianowicie system jej nie rozpoznaje.
Pierwsze co zrobiłem to wgrałem ponownie wsad do pamięci EEPROM sterownika (BQ2040) ale nic to nie dało.
Następnie ogłosiłem się tutaj że kupię takowy układ i po pewnym czasie pojawił się odgłos.
Niestety okazało się że układ jest używany (ale to nie wina sprzedającego, sam nie wiedział że taki przyjdzie i czeka na informacje ode mnie) i teraz nie wiem czy to problem z baterią czy coś w WDS.
Z dokumentacji wynika, że sterownik posiada możliwość wyświetlania stanu baterii za pomocą 4 diod LED które fabrycznie nie były wlutowane w płytkę.
Tak więc dolutowałem je i zwarłem odpowiedni pin określony w dokumentacji do masy, po czym zobaczyłem jak jeden segment diody miga (pod pinem nr. 4).
Wynika więc że bateria jest rozładowana, chodź napięcie na niej to jakieś 10.6V (8 ogniw).
Więc już w desperacji postanowiłem połączyć się z tym układem za pomocą atmegi.
Z dokumentacji wynika że komunikacja z nim jest wręcz identyczna jak ze zwykłą pamięcią EEPROM oraz że prędkość komunikacji nie może być większa jak 100kHz.
Tak więc rejestr odpowiedzialny na prędkość (TWBR) ustawiłem na 150 (20MHz dla atmegi) co daje mi 63.3kHz sygnału zegarowego.
I następnie wziąłem się za próbę komunikacji:
Kod: C / C++
Jak widać za każdym razem gdy jest wysyłana dana wyświetlam status transmisji.
I problem pojawia się już w czasie wysyłania adresu urządzenia, ponieważ zwracany kod to TW_MT_SLA_NACK czyli BQ2040 nie odpowiedziało.
Pomyślałem że może to problem z adresem, że jednak jest inny więc w prostej pętli przeleciałem wszystkie możliwe kombinacje, ale za każdym razem nie otrzymuję ACK.
Co mogę robić źle? A może to ten układ jest także uszkodzony?
Dokumentacja BQ2040:
http://www.ti.com/lit/ds/symlink/bq2040.pdf
Pozdrawiam