|
|
 |
 |
 Artykuły > DIY > Termometr ATMEGA8, LED, DS18b20 |
 |
| |
Pewnego dnia naszła mnie chęć zbudowania termometru. A dla początkujacego z dziedziny programowania mikroprocesorów jest to spore wyzwanie. Nie chodzi tutaj o skonstruowanie termometru który podaje wynik na wyświetlaczu alfanumerycznym z gotowym sterownikiem, bo jest to dziecinnie proste. Ja chciałem zrobić ten termometr na wyświetlaczach segmentowych led. Jest to chyba moje pierwsze poważniejsze urządzenie jakie zbudowałem na mikrokontrolerze, które używam już od pół roku i świetnie się sprawuje. Nie posiada obudowy, ale może się kiedyś doczeka :)
Zakres pracy termometru: od -55 do 125 stopni C. Wynik jest przedstawiany z dokładnością do jednej dziesiatej.
Elementy któe zastosowałem prawie wszytskie pochodzą z elektronicznego złomu. Wyświetlacze ze starych TV, tranzystory sterujace wyświetlaczami oraz stabilizator napiecia na 5v z jakiegoś tunera satelitarnego. Reszta prosto z allegro (mikroprocesor oraz czujnik DS18B20). Z czujnikami miałem przygodę, bo zamówiłem jedną sztukę, a przysłano mi 5 sztuk. Taki gratis "mały" :) I w ten sposób ktos mi zrobił prezent za 20 zł (jeden czujnik kosztuje 5 zł). Układ jest zasilany jakąś ładowarką od telefonu, która daje około 6,5 v. Schemat mam w głowie, a nie umiem obsługi Eagle niestety, dlatego schematu nie będzie :(. Ale z kodu programu można się wszytskiego dowiedzieć. Największym problemem w tym projekcie było multipleksowanie. Czujnik wymaga czasu 750 milisekund na konwersję wyniku i do tego celu zastosowałem pętlę która "na oko" odmierza czas na konwersję, ponieważ nie można było zastosować tutaj polecenia WAITMS. Oto kod programu (w BASCOM'ie oczywiście):
A tutaj zdjęcia mojego termometra:
|
|
|
 |
|
 |
|