Witam, pracuję nad implementacją protokołu 1Wire wykorzystując moduł USART - w necie niby sporo dokumentów i poradników na ten temat jednak średnio coś mi wychodzi. We większości skorzystałem z kodu zamieszczonego na elektrodzie (nie wiem czy moge podać link, ale chętnie to zrobię). Procesor STM32f051 na płytce Discovery a środowisko Eclipse Luna. Sam moduł USART działa i wielokrotnie go wykorzystywałem. Na oscyloskopie linia DQ jest ciągle w stanie wysokim, nie widzę żadnego przebiegu wysyłanego z pinu TX USARTu. Schemat "konwerterka" 1wire-usart czyli de facto zaimplementowanie wyjścia open drain na TX wziąłem z:
http://www.maximintegrated.com/en/app-n ... mvp/id/214i wygląda on tak:

--- GND1 i GND2 zawrte jakby co
Tranzystory dałem BSS138 (mosfet typu N(:
0.22 A, 50 V. RDS(ON) = 3.5Ω @ VGS = 10 V
RDS(ON) = 6.0Ω @ VGS = 4.5 V
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Myślę, że może być zamiast tych 2N7002, co zatem robię nie tak ? Program umiera na linijce:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
podczas komendy reset...