PORTA = 0xff DDRA = 0xff A potem: sbi(port_czujek,pin); _delay_us (70); if (bit_is_clear (port_czujek_pin,pin)) result=1; Port ustawiasz jako wyjście , wystawiasz na nim stan wysoki , a czujka w trakcie komunikacji zwiera do masy . I masz odpowiedź. Potrzebowałbyś portu takiego jak w '51, ze "słabym" stanem wysokim (podciaganym)....
nie wiem czy coś ze mną nie tak czy z tym forum, ale piszę tą odpowiedź drugi raz, albo odpowiedziałem w innym temacie ... użyj tej funkcji, u mnie działa to jest dla DS18 S 20 (niepotrzebnie wkleiłem , ale niech już zostanie) float zamien_temp(unsigned char MSB,unsigned char LSB) { float ftmp; if(MSB==0x00)//dodatnia,lub 0 {...
Zobacz post 3 linijki wyżej: http://www.elektroda.pl/rtvforum/topic16... i zajrzyj do dokumentacji układu: http://pdf.elenota.pl/pdf/Maxim/2812.pdf Jeśli położysz układ płaską stroną na biurku i nóżkami skierowany do Ciebie to pierwsza nóżka od lewej to: Vdd, środkowa: DQ i lewa: GND
If Ttt < 0 Then 'wg. porady zumka Lcd "-" Ttt = Abs(ttt) Else Lcd " " End If w takim razie w ten sposób masz zamienić kawałek kodu odpowiedzialnego za automatyczny minus. zapewne chodzi tylko o dodanie komendy Else Lcd " "
Może ja wyjaśnię jaśniej. Generujesz przerwanie od timera np. co 800ms, czy 1s. I w przerwaniu wykonujesz operacje: 1. Odczyt temperatury do zmiennej 2. Komenda Convert_T Odpowiadając na Twoje pytanie - 750ms to MINIMALNY czas między CONVERT_T a odczytem (dla 12-bit). Więc odczyt po 1, 2, 3600 sekundach po CONVERT_T nie jest błędem. Dzięki takiej metodzie...
http://obrazki.elektroda.pl/9822499800_1... UWAGA! AKTUALIZACJA!! Jako, że dostaliśmy dodatkowy tydzień na dopracowanie - nie traciłem czasu. Niestety studia uniemożliwiły mi napisanie tetrisa, jednak dodałem kilka bajerów. Pierwszym jest zrobienie obudowy. Nie zdążyłem tylko listwą obłożyć (widać od spodu). Dodałem możliwość sterowanie w...
Poprawiłem - nie sprawdzałem. Dim Odczyt(2) As Byte dim T As Integer dim T1 As Single dim T2 As Single Dim Temp As Long Do Ds18b20 Print Temp Wait 1 Loop End Sub Ds18b20 1wreset 1wwrite &HCC 1wwrite &H44 Waitms 750 1wreset 1wwrite &HCC 1wwrite &HBE Odczyt(1) = 1wread(2) T = Odczyt(2) Shift T , Left , 8 T = T + Odczyt(1)...
A po co ty czytasz 9 bajtów z rejestru jak tylko dwa pierwsze do czegoś używasz? Nie podajesz fragmentu deklaracji zmiennych nie wiadomo ile zadeklarowałeś dla Bd() A poza tym co to za konstrukcja podprogramu? Ds18b20: Select Case Ds Case 0 : instrukcje..... i potem znowu. Ds18b20: Select Case Ds Case 0 : instrukcje..... a gdzie koniec Select Case?...
Trochę masz to dziwnie napisane jeśli chodzi o odczyt temperatury. Co jak czas masz odświeżanie pętli głównej ?. Używanie rozkazu Skip Rom to lipa trochę. Jeśli masz ochotę to popraw to trochę tzn. warto odczytać przy starcie numery seryjne termometrów jak masz dwa i nie chce Ci się implementować procedury automatycznego przeszukania to poprostu odczytaj...
Potestowałem Twój kod u siebie. Zakomentowałem obsługę czujnika temperatury i wyświetlacza i odpaliłem na swojej zestawie startowym z ATmega32. Na terminalu dostawałem krzaki. Po dodatniu linijki: #define F_CPU 4000000UL // 4MHz zegar procesora Wygląda że zaczęło mi działać.
Ale to musisz zrobić globalnie, dla całego projektu. http://mikrokontrolery.blogspot.com/2011...
Jeżeli kolega może podłączyć kwarc 16MHz, to po powrocie z pracy mogę załączyć sprawdzony program termometru z atmegą 32, wspomnianym kwarcem i obsługą LCD 2x16. Układ DS18b20, jak inne układy 1-wire wymagają bardzo dokładnych czasów, żeby się poprawnie skomunikować. Ja też trochę powalczyłem zanim zobaczyłem prawidłową temperaturę. Zgodnie z obietnicą:...
Błąd w logice. Twój kod czytam tak -> Dopóki zmienna nie ma 5 to cały czas resetujemy pomiar i startujemy nowy (już Select Case byłoby lepsze). Potem próbujemy to czytać jak zmienna ma powyżej 100. No daj spokój. Są tu tego tony jak to obsługiwać. Mój/nie mój sposób to dwa suby. Jeden Startuje konwersję a drugi Czyta. Sprawa polega na tym by odwrócić...
Podciągnij linię zewnętrznym opornikiem 4k7 do +5V, Ustaw na tej linii stan niski i steruj kierunkiem. Szybko można przerobić jak poniżej: [syntax=c]#define CLR_DQ sbi(OW_DDR, OW_NUM);cbi(OW_PORT, OW_NUM); //0 na wyjscie #define SET_DQ cbi(OW_DDR, OW_NUM);cbi(OW_PORT, OW_NUM); //1 na wyjscie[/syntax]
http://obrazki.elektroda.net/66_12520120... Witam! Chcialem sie pochwalić moim termometrem. Składa się z ATmega 32, 2x DS18B20, wyswietlacz LCD 4x40. Wiem ze podobnych konstrukcji było już duzo tu na forum, ale i tak chciałem się pochwalić. Mój projekt pełni rolę zegara, termometru 2punktowego połączonego z wykresami temperatury z ostatnich...
co jeszcze powinno sie zrobic??? Pokazać kod którym to robisz?
Zerknij do tego tematu [url=http://www.elektroda.pl/rtvforum/to... + długie kable
Co zrobić żeby to zadziałało na dłuższych kablach. żadne kable czincz .... słyszał kolega o kablu skręktowym do sieci lan, kat.5 nie ekranowany ???? gwarantuję że na tym będzie działać nawet na duuużo większych odległościach - mi działała sieć kilku takich czujników na kablu skrętkowym o długości ok 40-50m. A kabel leciał przez różne miejsca - nawet...
nie zagłebiajac sie w kod, wydaje mi sie ze to jest ten delay_ms. ma prawo wystepowac cos takiego ze siedzisz w delay'u to juz sie zmienil czas ale minie spory kawałek sekundy zanim odswiezysz wyswietlacz.. na test usun delay'a, jak pomoze to zrob to czekanie na timerze
hmmm stawiasz na dallasa? - dopiero co zaiwestowałem w nowego. Co do wyswietlen lcd to wszytko zachowuje sie wlasnie tak jakby VCC wogole nie mialo polaczenia. Czy złe podlaczenia dallasa tzn VCC do GND itd moglo spowodowac jego uszkodzenie?
A co to są za czujniki-jakieś termometry po 1-wire może(DS18b20)??
Witam Mam zbudowany układ na atmega 32 i do niego podpięte 4 czujniki DS18B20. Po włączeniu przez kilka godzin wszystkie pokazują właściwą temperaturę. Po tym czasie trzeci czujnik co jakiś czas pokazuje trzecie miejsce po przecinku, a czwarty czujnik również co jakiś czas pokazuje niewłaściwą temperaturę - w okolicach 130 stopni ( rzeczywista temperatura...
Odłącz wszystko i sprawdź układ, podejrzewam że jest zwarcie, za mały rezystor pull-up lub błędnie podłączony DS18B20
Najpewniej złe timingi OW, które rozjeżdżają się w wyższych temperaturach. Popraw używany przez ciebie program i wszystko będzie ok. Inna możliwość to używanie trybu pasożytniczego czujnika, nominalnie chodzi on do 85 stopni, lecz trzeba pamiętać, że wraz ze wzrostem temp. rosną upływności i wszystkie parametry stają się co raz bardziej krytyczne.
Witam. Mam procedurę odczytu trzech czujników temperatury: [syntax=vbnet] Sub Odczyt_ds18b20 Reset Watchdog Disable Interrupts 1wreset Select Case Ktory_ds Case 0: 1wwrite &HCC 1wwrite &H44 Case 1: 1wwrite &H55 1wwrite Ds1(1) , 8 'adres pierwszego czujnika 1wwrite &HBE Odczyt(1) = 1wread(2) 'odczytaj dwa pierwsze bajty T = Odczyt(2) : Shift T , Left...
Witam. Oczywiście do jednej linii danych 1Wire możesz podpiąć kilka czujników jednak w takim przypadku trochę zmieni ci sie program. Bo będziesz musiał każdy z nich wywoływać po ich unikalnym adresie. Pozdrawiam
Czyli pogmerałeś w konfiguracji źródła sygnału zegarowego. Co do temperatury - musiałbyś mieć oba układy ze sobą połączone na jakimś radiatorze czy coś w tym stylu, blisko siebie, żeby miały podobną temperaturę. Wtedy możesz eksperymentować. Ale 2 stopnie różnicy to i tak chyba nie tak źle. Pamiętaj też, że wartości w dataszitach wynikają ze statystyki,...
Po prostu trzeba odjąć te 3 stopnie przed wyświetleniem temperatury. A jak często odczytujesz temperaturę? Zbyt częsty odczyt powoduje nagrzewanie się czujnika. Pozdrowienia -teedd
#include <mega8.h> #include <stdio.h> #include <delay.h> #include <math.h> // 1 Wire Bus functions #asm .equ __w1_port=0x15 ;PORTC .equ __w1_bit=5 #endasm #include <1wire.h> unsigned int status=0, error=0; int temperatura=0, temperatura_zadana=0; unsigned char rom_codes[5,9]; unsigned char devices, ii; int ds1820_status=1,...
Mógłbyś napisać teraz poprawną procedurkę delay, tzn. ewentualnie już z wartościami bo też się męczę z DS18B20. dzieki
Jeśli wyswietla wartość 127,9 to znaczy ze z czujnika ida same wartości FF. Z doświadczenia wiem że taki stan rzeczy powoduje błędne podłączenie czujnika! Patrz dokumentacja ( ale w niej widok nóżek od spodu czujnika!!). Jeśli raz to źle podepniesz juz zwsze będzie pokazywał 127,9...... Jesli chodzi o poprawność transmisji to napisz sobie krótki programik...
Zastosuj bezprzewodowe czujniki z zasilaniem bateryjnym. Nie będzie żadnych kabli i zniknie problem współpracy z wieloma urządzeniami.
http://www.elektroda.pl/rtvforum/topic66...
Chodzi o to że czasami odczytujesz nie cały wiersz lecz jego fragment. [syntax=delphi]var P:Integer; begin ComPort.ReadStr(Str, Count); Memo.Text:= Memo.Text+Str; P:=Pos(#13,Str); if P>0 then begin Str:=Memo.Lines[Memo.Lines.Count-2+Ord(P... T1:= Copy(Str,1,4); T2:= Copy(Str,6,4); Label3.Caption:= 'Temperatura IGBT [T1] = '+T1; Label2.Caption:=...
Boze jak można popełnić tak głupi błąd, no aż się wierzyć nie chce :D Dziękuję za pomoc i proszę o ostra krytykę Dodano po 18 Jeszcze jedno pytanko - jakim rezystorem połączyć dwa DS18B20?
Po pobieżnym przyjrzeniu się programowi nasuwają mi się takie wnioski. 1. Zadeklarowałeś wejścia, ale zostawiłeś je jako "pływające". Powinieneś port-y przycisków podciągnąć do plusa, czyli ustwić stan wysoki =1 2. Nie widzę deklaracji dla magistrali 1wire dla DS-ów i całej procedury odczytu i zapisu danych do pamięci. Być może to celowe na tym etapie,...
Witam, Mam atmegę32, 16MHz, chciałem podłączyć czujnik ds18b20. Oczywiście opornik pull-up 4,7k podłączony. Przedstawiam kod (nie jest mój): [syntax=C] #include <avr/io.h> #include <stdlib.h> #include "delay.h" #include "HD44780.h" #include <stdio.h> #define DQ 7 #define SET_DQ DDRD &= ~_BV(DQ) #define CLR_DQ DDRD |= _BV(DQ) #define...
Wygląda na błąd w programie, bo z DS18B20 nie może wyjść 6548.
nie, nie, nie, nikomu nie chciało się zajrzeć do dokumentacji BASCOMA? wszystkie polecenia obsługi 1wire można przeprowadzać na DOWOLNEJ LINII: 1WREAD Top Previous Next Action This statement reads data from the 1wire bus into a variable. Syntax var2 = 1WREAD( [ bytes] ) var2 = 1WREAD( bytes , port , pin) Remarks var2 Reads a...
Zmienić na $Crystal = 16000000
Witam Jestem mocno początkujący w dziedzinie programowania, choć udało mi się już stworzyć coś na kształt zegarka w oparciu o atmegę 32, chciałbym jednak dodać do niego jeszcze wyświetlanie temperatury, jednak nigdzie nie mogę znaleźć informacji na temat obsługi czujnika DS18B20, która była by napisana w asemblerze, więc proszę o pomoc.
Jeżeli otrzymam oficjalny protest na e-mail lub od PW od jakiekolwiek uczestnika konkursu w sprawie pozycji IV - Matryca LED - snake, zegar, data, 3 x DS18B20, ATMEGA32, Bluetooth od raffiki, to niestety zgodnie z regulaminem trzeba będzie projekt zdyskwalifikować. W tym momencie zaprezentowałem wyniki niezależne, jakie wybrali użytkownicy i moderatorzy...
A o to mój kawałek kodu : ow_reset(); write_byte(0xcc); // pomin czytanie nr write_byte(0x44); // nakaz pomiar temperatury waitms(250); waitms(250); waitms(250); ow_reset(); write_byte(0xcc); // pomin czytanie nr write_byte(0xbe); // zadaj odczytania temperatury tempL = read_byte();...
Zależało by mi raczej na jakimś tutorialu jak to zrobić krok po kroku albo jakimś kodzie na którym się wzorować. Po zajęciach na uczelni wszyscy w grupie u mnie nic nie ogarniają. Nawet nie mam pojęcia jak zczytać temperature z tego czytnika, bo wykładowca nawet tego nie zdążył przerobić. "Cięcie godzin" na studiach dzienny się odbija. Już nie wspominając...
Fusebity dobrze ustawione? CKDIV?
Pokaż swój schemat.
A ile czekasz od rozkazu konwersji do odczytu? DS18B20 podczas konwersji pobiera dość duży impuls prądu. Jeżeli MASTER nie wymusza jedynki na linii 1Wire podczas transmisji, albo po niej (w stanie spoczynku), to napięcie na tej linii mocno spadnie i DS się zresetuje. Na szczęście BASCOM właśnie tak robi, ale możliwe że nie każda wersja.
Dzięki temu rejestrowi możesz sprawdzić co wywołało reset.
No to pewnie dla tego:) Ja zawsze na pasożyta;)
Dzięki gts1991 Wszystko działa nie zmieniłem FusBity dla wewnętrznego 8Mhz
(...) y jeżeli elektronicznie podłączenie jest sprawne, zaproponujesz listing (AVR GCC) testujący taka "obciążoną" magistralę wyświetlający adresy odczytanych termometrów, ich parametry i temperatury oraz szacunek, który z nich to fake. Program ma możliwie najwięcej nieprawidłowości wychwycić (obsługa błędów). Rozpoznanie podróbek DS18B20 wymaga zaimplementowania...
Temat chyba przekazał wszystko kod od 10 lat nie ruszany działający ale zachciało mi się aby zwracał błąd gdy nie ma jednego czujnika na magistrali kombinuję i stoję w miejscu. [syntax=basic4gl] Sub Odcz_temp K = 1 For J = Poczatek To Koniec 'Odczyt numeru seryjnego z eeprom Readeeprom Register_number(k) , J Incr K Next J Call Zap_num 'Wywolanie procedury...
nie widzę, żeby ktoś napisał, że rezystory w obudowie 0805 SMD (tak samo kwarc) nie za bardzo pasują do płytki stykowej - kup THT (przewlekane). Poza tym nie polecam płytki stykowej, jak coś nie będzie działać to poszukiwania błędu doprowadzą Cie do niedziałających styków. Poza tym sporo modułów będziesz wykorzystywał w przyszłości (np RTC, 1-wire,...
Dobra uporałem się z problemem. Zmieniłem kwarc na 8MHz i ruszyło.Wcześniej nie wykrywało karty sd.
Wklej komenty 1wire, bo ten fragment kodu nic nie mówi.
Ja również miałem problem z multiplesowaniem wyświetlaczy i jednoczesnym odczytem 1wire. Pomysł z wyłaczeniem przerwań od timera na czas transmisji 1wire okazał się prawidłowy. Ponieważ w trakcie pomiaru świeci się jeden wyświetlacz aby efekt był nie zauważalny możemy dokonywać pomiaru temeperatury rzadziej. Oto mój programik : $regfile = "m8def.dat"...
;* ;***************************************... ;*PROCEDURA WYLICZANIA SUMY KONTROLNEJ Z NUMERU SERYJNEGO UKŁADU 1-Wire ;***************************************... ;* ;* ;*******************************OPIS****... ;*Kolejne bajty numeru seryjnego...
Sprawdzałeś co podaje ci ERC?
Jan_Werbinski; Z tym COP 3 to trochę przesadziłeś. Poprostu jest tak, że bez zaangażowania w temat nie otrzymasz dobrych rezultatów. W moim przypadku COP 5-5,5 jest zbieżny dla CO(podłogówka) oraz CWU(mamka 800 litrów) i to nie jest zachcianka ... Cała logika oparta jest na Atmega32 z DS18B20 co daje rewelacyjny podgląd na to co się w danej chwili dzieje....
DS18B20 chyba nie ma SPI tylko 1Wire SPI z kilkoma uzadzeniami, to najlatwiej jak AVR bedzie caly czas Master i przelaczac sie pomiedzy podlaczonymi urzadzeniami.
Mam pytanko czy na linii SDA SCL może być złącze ISP chodzi głównie o TDA7318 i pamięć eeprom. Czy te scalaki nie ulegną uszkodzeniu, jeśli będzie układ programowany (ATMEGA32) ?
Jeszcze AVCC podlacz
Przecież w tym linku który podałeś jest gotowiec do obsługi BS18B20. W C.
...Termometr wyswietla mi cały czas temp -0.02 Niemam pojecia dlaczego No to zaraz podam Ci , pierwszy powód ;) ...podłączyłem go do 0 pina portu d Tiaaaa.... a w kodzie ... /*...*/ #define DQ 1 #define SET_DQ DDRD &= ~_BV(DQ) #define CLR_DQ DDRD |= _BV(DQ) #define IN_DQ PIND & _BV(DQ) /*...*/ Dzieki za rady... Nie ma za co...
Ich wartość nie powinna być mniejsza niż 2k ( tyle stosuję przy długich liniach pow. 100m i kilku czujnikach DS18b20)
1. Z tego co widzę w datasheet od DS18B20 to linia 1wire powinna miec rezystor 4k7, więc włączanie dodatkowo rezystora wewnętrznego pewnie niewiele da. 2. Jeżeli odpowiedni bit w rejestrze PORTx (u Ciebie PORTD) będzie już miał wartość 0 to tak.
Witaj. Ja w swoim układzie nie mam czujników DS18B20 tylko DHT22 :) Pozdrawiam
ludziska może jakas wstawka asemblerowa coś tu pomoże. Jakby ktoś mógł to byłbym wdzieczny. Atmega32, 8Mhz zewnetrzny, portc.0, :)
Jak mówisz, że Ci działało, to warto spróbować. Jak będę miał problem to napiszę. Jak mi się uda, to powiem, co przerobiłem, żeby działało pod AVR.
mam ukladzik polutowane jest dobrze na 100 % pytanie 1 czy moge popsuc taki czujnik w trakcie lutowania ? pytanie 2 czy mogłem popsuc czunik wkladajac go na odwrot czyli to mase do Vcc a Vcc do masy Czujnik chyba nie zyje wnioskuje to z void ow_reset(void) { CLR_DQ; wait_us(250); wait_us(250); wait_us(100); SET_DQ; wait_us(120); if((PINB&0x01)==0) {...
Barbossa usuń z kodu _delay_ms(750) i powinno działać, nie będzie to co prawda idealna konfiguracja ds18b20 ale myślę, że spokojnie Ci to wystarczy
No niestety powstał jak nie mogłem ogarnąć transmisji z DS18b20 jak miałem 7 podłączonych do jednej nóżki Atmega32. I tak miga sobie już z 5lat. Zdarza się że program się zawiesi raz na miesiąc ale to już widać po mruganiu diody :) Ot po prostu taka kontrolka.
Podaj więcej szczegółów: - jak zrealizowana jest transmisja z kompem (na przerwaniach?), - jakie dane transmitowane są z kompa (z jaką częstotliwością), - jak często dokonujesz odczytu z DS18B20 Bo wpłynąć może...
Problem rozwiązany. Wystarczyło zrobić nowy przewód LCD - układ i już działa. W starym było prawdopodobnie jakieś przerwanie. Natomiast za problem z DS18B20 odpowiedzialny był brak rezystora podciągającego linię Data do plusa zasilania.
Witam, podłączam 4 czujniki temp ds18b20 poprzez 1wire do atmega32. Chciałbym zapisać ich id do eepromu a potem odczytać z tablicy. [syntax=basic4gl]Dim Id1(8) As Byte zapis: For C = 1 To 8 Step 1 writeeeprom id1(c), c Next C odczyt: For C = 1 To 8 Step 1 readeeprom id1(c), c Next C wyswietlanie: For C = 1 To 8 Step 1 Lcd Hex(id1(c)) Next C[/syntax]...
Mam problem z termometrem DS18B20. Zasilany trzema przewodami. Podciągnięty do Vcc przez 4,7k. Mikrokontroler ATMega32 - 8 mHz. Odczyt co sekunda. Prawidłowy. Wszystko działa. Aż do czasu. W ciągu 4 miesięcy już trzy razy awaria. Błędny odczyt. Grzanie kontrolera i nagrzanie czujnika chyba powyżej 100 stopni (poparzone palce). Po wyłączeniu i ostygnięciu...
Anodą do minusa to LED raczej Ci nie zaświeci. Multipleksowanie na 12 faz też czarno widzę. Potrzebujesz sterować wspólne anody prądem powyżej 1 A - niezbędny byłby tranzystor PMOS. Z kolei do katod lepiej byłoby użyć gotowego układu źródła prądowego do LED, np. SCT2167 zamiast ledwie dyszących HC595. żeby nie zakłócać multipleksowania - musiałbyś zrobić...
Witam, Magistrala 1-wire doskonale nadaje się na komunikację pomiędzy mikroprocesorami. Procesorki slave mogą być na wewnętrznym generatorze. U mnie attiny45 i atmega88 są razem na linii z ds18b20, plus oczywiście dodatkowe zasilanie. Pozdrawiam
http://obrazki.elektroda.pl/8192024800_1... Witam, Przedstawiam kolejny projekt z wykorzystaniem karty TeleVGA, tym razem jest to " 4- kanałowy termometr z zegarem RTC i wyjściem VGA " Projekt powstał przy okazji realizacji zlecenia na kontrolę temperatury na linii produkcyjnej. Jednym z wymagań była dobra widoczność odczytów dlatego...
Oto odpowiedź: http://mikrokontrolery.blogspot.com/2011...
- Procesor Atmega644p albo Atmega32 16MHz - Temperatura DS18b20 sprawdzona konstrukcja - Wyświetlacz bardzo duży 240x128 T6963c albo coś mniejszego 128x64 KS0108 - RTC zegarek PCF8583 albo DS1307 + stabilny generator DS32kHz - Do złączania grzałek triak BT136 i optotriak MOC3043 - Do załączania pompki i oświetlenia LED itp....przekaźnik OMRON G5la albo...
Nie to sprawdzałem. Wygląda to jakby procedury odczytu DS-a działały bo ta temperatura wyświetlana -0.1 o tym świadczy. DS jest zasilany z 3,3V i wyczytałem że przy takim zasilaniu rezystor podciągający linie DQ ma mieć około 2k i taki mam. Ale z rezystorem 4,7k też nie działało. Gdzie to wyczytałeś? Datasheet nic na ten temat nie mówi, poza "Can be...
A jesteś pewien, że procesor jest taktowany 16 MHz? Jakie wartości mają fusebity? Zrób prostą pętlę z _delay_ms(1000) i miganiem diodą i sprawdź czy miga z właściwą częstotliwością. BTW, jaką wartość ma rezystor podciągający na linii Data OW?
No to wrzucam. http://obrazki.elektroda.pl/5457729900_1... Tak wygląda płytka. Czujniki mam takie jak na rysunku i ta samo mam je podłączone. Zasilanie : zasilacz stabilizowany 9V 1A Dodam, że czujnik temperatury DS18B20 działa i pomiar jest dokładny Bateria podtrzymująca też jest.
Używam jednego ADC do pomiaru napięcia stabilizatora dla kontroli jego sprawności bo miałem przypadek kiedy napięcie spadało wraz ze zwrostem temp. stab. .Miałem wolne piny to dlaczego nie wykorzystać . Ustawiłem pady tak aby można było przerobić na DS18B20 na dwa lub trzy przewody. A faktycznie. No ale to raczej dla zabawy bo ten stabilizator nie...
(at)wojtek6000 Te diody niczemu nie służą i nic nie zabezpieczają. Jeśli podłączysz DS'a odwrotnie to i tak będzie podłączony odwrotnie ze wszystkimi tego konsekwencjami. Rezystor 4k7 przy zasilaniu 5V jest zupełnie ok. Pomysł z jakimkolwiek zabezpieczeniem ESD jest dobry. Na schemacie nie ma RS485. Natomiast takie podłączenie DSów, każdy do osobnego...
Z kłopotami spowodowanymi brakiem doświadczenia doszedlem do celu. Wielkość kodu na Atmega32 z 55% zajętości (Bascom) spadła do 36% pod Fastavr. Warto było się pobawić :) Do miłego ...
Musisz w pliku boards.txt wpisać w swoim fragmencie zamiast xxx.build.f_cpu=16000000L i wpisujesz po 8000000L zamiast 16000000L I jeśli m328p jest ustawiona we fusebitach na 8MHz to będzie działać.
Witam wszystkich. Buduję projekt oparty miedzy innymi na atmega32, 12-15 szt DS18b20 i ok. 40szt kontaktronów odczytywanych za pomocą PCF8574. Całość wyników wystawiam na RS232 do pobrania przez PC do dalszej obróbki. Było wszystko OK do czasu, kiedy nie wyniosłem 5 czujników na znaczne odległości - każdy na osobnej skrętce UTP oddalonych ok. 100m od...
Witam. Jak już wcześniej pisałem mam notes który wykorzystuje jako słowniczek słówek j. angielskiego. Schematu płytki nie będe pokazywał bo jest to płytka zaprojektowana jako uniwersalna i jest na niej pare niepotrzebnych śmieci i błędów :) Główne elementy to ATMEGA32 + LCD Nokia 3310 + DS18b20 + 24C64 + pcf8583 + MAX232 + Klawiatura 4x4. Program pisałem...
wypada pokazać cały schemat szczególnie sposób zasilania uC i filtracji zasilania , diody zabezpieczające to podstawa Schemat, że tak to ujme, mam w głowie. Platforma testowa, to atmega32 wyposażona w wyświetlacz, ds18b20, max232 do nauki. Zasilana jest przez LM7805 z jednym kondensatorem 47µF. Mostek H zasilam z drugiego zasilacza, masy są połączone...
Moze ktos podac sposob podlaczenia DS18B20, bo kazdy cos dodaje i robi sie w tym maly bałagan, tak od poczatku do końca??? Bardzo prosze... Pozdrawiam Mariusz
Moja koncepcja jest taka. Na 89c2051 + DS18b20 + MAX485 stanowi czujnik temperatury, który połączony jest przez interfrjs RS485 z procesorem głównym na ATmega32, który to wybrane wyniki wyświetla na wyświetlaczu. W moim modelowym urządzeniu były tylko dwa czujniki ale praktycznie może ich być nawet 32 sztuki.
zumek jesli masz na mysli mnie to uzywam atmega32 i mam jeszcze 12kb wolnego miejsca wiec jest ok ale jak braknie to przejde na atmega 128 . dziekuje wszystkim za pomoc
Prosze bardzo, zmenne oraz main. Zakomentowane linie sluza do odczytu temperatury z ds1820, wyswietlania jej na LCD czy tez zapiswanie do eepromu. [syntax=c]#include <avr/io.h> #include <util/delay.h> #include <stdio.h> #include <stdlib.h> #include <util/twi.h> #include "hd44780.h" #include "ds18b20.h" #include "i2cds1307.h"...
taktowanie procesora: 16MHz atmega32a main.c: [syntax=c] int main(void) {/* sprawdzamy ile czujników DS18xxx widocznych jest na magistrali */ czujniki_cnt = search_sensors(); /* wysyłamy rozkaz wykonania pomiaru temperatury * do wszystkich czujników na magistrali 1Wire * zakładając, że zasilane są w trybie NORMAL, * gdyby był to tryb Parasite, należałoby...
https://obrazki.elektroda.pl/2741391200_... Witam! Chciałbym przedstawić własną konstrukcję zegara matrycowego opartego na popularnych elementach. Konstrukcja powstała jako prezent dla ukochanej dziewczyny ❤️ Konstrukcja urządzenia Zegar w założeniu miał być typu stołowego, zasilany z zewnętrznego zasilacza. Skonstruowany...
http://obrazki.elektroda.net/29_12650436... Witam. Chciałbym przedstawić moją nową konstrukcję - rejestrator temperatury z obsługą kart Secure Digital (SD). Projekt powstał oczywiście w celach naukowych. Podstawą układu jest moja płytka testowa z mikrokontrolerem ATMega32. Dołączyłem do niej termometr cyfrowy DS18B20, zegar RTC DS1307 oraz...
Nie chce dopisywać dnia tygodnia i pełnego roku, bo wyświetlacz wtedy staje się bardzo nieczytelny (za dużo informacji się robi). Po co aż atmega32? Raczej wszystko powinno się zmieścić w Atmedze168. Trzeba by tylko zmodyfikować płytkę i oba czujniki DS18b20 na wspólnej magistrali 1-wire, przyciski zamontować też do wspólnego portu ADC z czego jeden...
Witam! Tytułem wstępu kilka informacji o samym projeckie. Jest to regulator temperatury(czujnik ds18b20) na bazie Atmega32, z temperaturą zadaną poprzez pilota (RC5). Calosc napisana w C. Pytanie dotyczy histerezy. W tej chwili przebieg wartości temperatury wygląda następująco: http://obrazki.elektroda.net/70_11908961... Otrzymałem polecenie...
atmega32 ds18b20 termometr ds18b20 atmega32 atmega32 ds18b20 hd44780
wymiana palca rozdzielacza mazda diagnostyczny schemat amperomierza woltomierza
Wyjścia liniowe w magnetofonie Aria 2411 - lokalizacja i podłączenie Tryb serwisowy Thomson Chassis MT51 - jak wejść?