Multipleksowanie wyśw. LED, a DS18B20 ??

Cześć! Mam problem z pogodzeniem obsługi 4 wyświetlaczy LED (multipleksowanych za pomocą ATMEGA32) i odczytem temperatury z Dallasa :( Programuje w BascomieAVR. Jest możliwość korzystania z obsługi przerwań (TIMER0) w celu multipleksowania wyświetlaczy i równocześnie "rozmawiać" szyną 1wire z czujnikiem DS18B20 bez konieczności wyłączenia wyświetlaczy na czas odczytu temp??

Dzięki za pomoc Pozdrawiam Marcin

Reply to
Myler
Loading thread data ...

Jest taka możliwość jeśli będziesz sprzętowo odmierzał czas impulsów na szynie 1wire. Można to zrobić np. portem szeregowym. Możesz też blokować przerwania tylko na czas transmisji pojedynczego bitu zamiast na czas trwania całej transmisji. Ja wybrałem to drugie rozwiązanie i efekt jest całkiem dobry.

Reply to
Zbych

Sam teraz chce sobie zrobic temp z LED multipleksowanymi i DS'em - co oznacza "calkiem dobry" ?? :)

Reply to
BYRRT!

Ja mam troszkę inny układ. Steruję matrycą led 65x21 pikseli, do tego odczyt temperatury jest zsynchronizowany z odświeżaniem (bo temperatura wraz z datą jest wyświetlana na "płynącej linijce"). A "całkiem dobry" oznacza, że jak ktoś nie wie to nie zauważy, że czasem w momencie odczytu temperatury jeden wiersz matrycy przez moment świeci odrobinę ciemniej. Jednak u mnie wrzucanie danych na wyświetlacz zajmuje bardzo dużo czasu. Przy wyświetlaczu siedmiosegmentowym efekt może być niezauważalny.

Reply to
Zbych

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.