Michał Paskowski
Guest
Tue Oct 24, 2006 5:56 pm
Witam wszystkich
Mam takie proste może pytanie, ale nie wiem czemu nie znalazłem
odpowiedzi na nie w GOOGLACH.
Chciałbym do mikrokontrolera ATMEGA podłączyć termometr cyfrowy DS18B20
wykorzystując interfejs TWI. Wiem jak to zrobić z RSem, ale mam już te
porty zajęte. Z dokumentacji wynika, że wystarczy podłączyć dwa
rezystorki podciągające do SCL i SDA. W przypadku termometru wyjście SCL
nie było by chyba wykorzystywane, ale czy da się to jakoś zgrać ze sobą?
Czy jest gdzieś w sieci schemat i przykładowy program w C dla tej
konfiguracji? Pare programów widziałem w BASCOMIE (ale chyba bez TWI),
ale wole C.
Czy jednocześnie dało by się podłączyć do tych samych linii oprócz
termometrów inny mikrokontroler (jako slave).
Inne pytanie nie związane z tematem wątku. Po co stosuje się kombinację
kondensatorów (elektrolit+ceramiczny) "w zasilaczu" urządzonek po np.
7805? Nie wystarczą 100nF przy masie układów + elektrolit przy zasilaniu?
Przykład jest tu:
http://republika.pl/n64emu/schemat.jpg
Pozdrawiam
Filip Ozimek
Guest
Tue Oct 24, 2006 6:14 pm
Michał Paskowski napisał(a):
Quote:
Czy jest gdzieś w sieci schemat i przykładowy program w C dla tej
konfiguracji? Pare programów widziałem w BASCOMIE (ale chyba bez TWI),
ale wole C.
Czy jednocześnie dało by się podłączyć do tych samych linii oprócz
termometrów inny mikrokontroler (jako slave).
Widziałem tutaj
http://avrfreaks.net/ bibliotekę to komunikacji, tylko
nie wiem czy samego DS18B20 czy całej szyny. Był kod do rozpoznawania
liczby termometrów, ściąganie nr seryjnych itp.
--
Filip.
PeCe
Guest
Wed Oct 25, 2006 8:09 am
DB18B20 to 1wire a TWI to I2C. Chyba, że chcesz wykorzystać jeden z pinów
TWI jako 1wire.
PC
Michał Paskowski
Guest
Wed Oct 25, 2006 10:20 am
Filip Ozimek napisał(a):
Quote:
Widziałem tutaj
http://avrfreaks.net/ bibliotekę to komunikacji, tylko
nie wiem czy samego DS18B20 czy całej szyny. Był kod do rozpoznawania
liczby termometrów, ściąganie nr seryjnych itp.
Tak, juz wcześniej tam zaglądałem, ale tam są zrobione na UARTa z tego
co udało mi się z kodu wyczytać :/
Pozdrawiam
Michał Paskowski
Guest
Wed Oct 25, 2006 11:47 am
PeCe napisał(a):
Quote:
DB18B20 to 1wire a TWI to I2C. Chyba, że chcesz wykorzystać jeden z pinów
TWI jako 1wire.
Tak wiem czym to się różni mniej więcej. Liczyłem jednak na jakiś myk,
który pozwoli wykorzystać sprzętowe buforowanie i kolejkowanie bitów.
Prawdopodobnie zdecyduję się jednak na magistralę i2c, ze względu
właśnie na wspomaganie sprzętowe. Chce do niej podłączyć termometry i w
przyszłości inny mikrokontroler. Tak chyba będzie najłatwiej.
Jako termometr i2c wybrałem na razie DS1621, ale jest dwa razy droższy
od DS18B20 :/ Coś za coś.
Pozdrawiam
Filip Ozimek
Guest
Sat Oct 28, 2006 7:44 pm
Michał Paskowski napisał(a):
Quote:
Filip Ozimek napisał(a):
Widziałem tutaj
http://avrfreaks.net/ bibliotekę to komunikacji,
tylko nie wiem czy samego DS18B20 czy całej szyny. Był kod do
rozpoznawania liczby termometrów, ściąganie nr seryjnych itp.
Tak, juz wcześniej tam zaglądałem, ale tam są zrobione na UARTa z tego
co udało mi się z kodu wyczytać :/
Ten
http://www.siwawi.arubi.uni-kl.de/avr_projects/tempsensor/index.html
nie jest, bo po RSie przysyła dane do komputera :-)
--
Filip.