Witam. Od kilku dni męczę się z obsługą tego czujnika. Napisałem programową obsługę SPI, ale niestety czujnik milczy.
Tutaj podaję jego notę katalogową.
Program napisałem na podstawie dokumentacji, na razie chcę odczytać tylko temperaturę (8 bitów polecenie i 8 bitów na wynik) Podłączyłem prosty analizator stanów logicznych na LPT i oto co uzyskałem:
3 - CS
4 - SCK
5 - MOSI
6 - MISO
Jak widać dane wysyłane są poprawnie(chyba) a linia MISO jest cały czas na 0. Z katalogu wynika ze kolejne bity polecenia zapisywane są przy zboczu narastającym: "Each bit is sampled on the rising edge of SCK (MOSI line)"
Poniżej funkcja napisana do wysyłania i odbioru (wiem, są małe nieścisłości w nazwach, ale chyba widać o co chodzi):
W załączniku zamieszczam cały program. Ma ktoś jakiś pomysł co jest nie tak? Bo moje się już kończą..
Tutaj podaję jego notę katalogową.
Program napisałem na podstawie dokumentacji, na razie chcę odczytać tylko temperaturę (8 bitów polecenie i 8 bitów na wynik) Podłączyłem prosty analizator stanów logicznych na LPT i oto co uzyskałem:
3 - CS
4 - SCK
5 - MOSI
6 - MISO
Jak widać dane wysyłane są poprawnie(chyba) a linia MISO jest cały czas na 0. Z katalogu wynika ze kolejne bity polecenia zapisywane są przy zboczu narastającym: "Each bit is sampled on the rising edge of SCK (MOSI line)"
Poniżej funkcja napisana do wysyłania i odbioru (wiem, są małe nieścisłości w nazwach, ale chyba widać o co chodzi):
Kod: C / C++
W załączniku zamieszczam cały program. Ma ktoś jakiś pomysł co jest nie tak? Bo moje się już kończą..