Od niedawna zajmuję się mikrokontrolerami i nauką Bascoma.
Zakupiłem czujniki temperatury DS18B20.
Po podłączeniu do atmegi8 szybko się zagrzały. Do zasilania układu podłączyłem 5V(nóżka3), nóżkę danych DQ(nóżka2) do atmegi i do zasilania przez rezystor3,3k
a masę (nóżka1) do masy.
Po takim podłączeniu czujnik i stabilizator napięcia przy zasilaniu szybko się zagrzał.
Po podłączeniu drugiego czujnika na odwrót nic się nie stało w programie.
Po w końcu zagrzałem trzy czujniki w ten sam sposób.
Mam program który pokazuje numer seryjny czujników i teraz pokazuje on zawsze
255255255255
255255255255
niezależnie od tego który czujnik jest podłączony(po podłączeniu w ten sam sposób ale już się nie grzeją)
załączam poniżej kod programu odczytującego numer seryjny
powiedzcie mi co robię źle bo już wydaje mi się że spaliłem 3 czujniki.
Bo żaden nie działa według mnie poprawnie.
Zakupiłem czujniki temperatury DS18B20.
Po podłączeniu do atmegi8 szybko się zagrzały. Do zasilania układu podłączyłem 5V(nóżka3), nóżkę danych DQ(nóżka2) do atmegi i do zasilania przez rezystor3,3k
a masę (nóżka1) do masy.
Po takim podłączeniu czujnik i stabilizator napięcia przy zasilaniu szybko się zagrzał.
Po podłączeniu drugiego czujnika na odwrót nic się nie stało w programie.
Po w końcu zagrzałem trzy czujniki w ten sam sposób.
Mam program który pokazuje numer seryjny czujników i teraz pokazuje on zawsze
255255255255
255255255255
niezależnie od tego który czujnik jest podłączony(po podłączeniu w ten sam sposób ale już się nie grzeją)
załączam poniżej kod programu odczytującego numer seryjny
$regfile = "m8def.dat" 'informuje kompilator o pliku
'dyrektyw mikrokontrolera
$crystal = 8000000 'informuje kompilator
'o częstotliwości oscylatora
'taktującego mikrokontroler
Config Pinb.1 = Input
'linia PB1 jako wejściowa
Config Lcd = 16 * 2 'konfiguracja typu wyťwietlacza LCD
Config Lcdpin = Pin , Db4 = Portd.1 , Db5 = Portd.2 , Db6 = Portd.3 , Db7 = Portd.4 , E = Portd.0 , Rs = Portb.0 'konfiguracja linii
'do których pinów dołączono wyťwietlacz LCD
Config 1wire = Portd.6
Dim Ds(8) As Byte
1wreset
1wwrite &H33
Ds(1) = 1wread(8):
'Do
Cls
Lcd Ds(1) ; Ds(2) ; Ds(3) ; Ds(4)
Lowerline
Lcd Ds(5) ; Ds(6) ; Ds(7) ; Ds(8)
'Loop
Endpowiedzcie mi co robię źle bo już wydaje mi się że spaliłem 3 czujniki.
Bo żaden nie działa według mnie poprawnie.

