problem tkwi w tym, że program masz do obsługi układu DS1820, a podpięty masz DS18 B 20 (różnią się one rozdzielczością i sposobem zapisu temperatury w rejestrach). W internecie znajdziesz masę programów pod BASCOM i nie tylko obsługujących ten termometr.
Opis magistrali 1Wire masz w helpie. Poniżej kod na obsługę dallasa DS18B20. Config 1wire = P1.0 'konfiguracja magistrali 1wire Config Lcd = 16 * 1a 'konfiguracja wyswietlacza Deflcdchar 1 , 4 , 10 , 4 , 32 , 32 , 32 , 32 , 32 'znak stopnia Dim T1 As Single Dim T2 As Single Dim B1 As Byte , B2 As Byte , R As Byte Dim Tmp As String * 6 Dim Znak As String...
Najpewniej w tabeli masz złe wartości. Przykładowo 0 ma tu kod 3=00000011B czyli na pewno portb.0 = 1 i portb.1 = 1 jeśli portb.1 jest podpięty pod segment A to jest błędnie.
Jasne, że się da :) np tak: If Pind.1 = 1 And Pind.2 = 1 Then Waitms 500 'oczekiwanie żeby odrazu nie wyjść z pętli Do 'nieskończona pętla Lowerline 'ustawienie kursora Lcd "Histereza:" ; H ; Chr(0) ; "C" 'wyświetlenie histerezy If Pind.1 = 1 Then 'jeśli guzik wciśnięty to zwiększ H = H + 1 Waitms 200 'odczekaj chwile,...
Napisane na szybko nie sprawdzałem ale chyba powinno działać. [syntax=basic4gl] $regfile = "m8def.DAT" 'deklaracja procesora, w tym wypadku Atmega8 $crystal = 1000000 'deklaracja cześtotlwiości pracy (wew oscylator 1MHz w zupełności wystarcza) '*************************************WA... 'Pamiętać o podłączeniu...
czytałem wolniej i efekt ten sam:(
Witam Nie wiem czy trzeba zmieniać coś jeszcze w Fusebit, czy porostu problem jest po stronie wyświetlacza? Pozdrawiam Wyświetlacz powinien pracować zupełnie dobrze także przy 1 Mhz taktowaniu processora. W zależności od deklarowanej F(clk), Bascom kalkuluje odpowiednio timingi do stadardu HD44780 display controlera. Przy błednej konfiguracji (lub...
Witam ! Program nie zależy od sposobu podłączenia. http://obrazki.elektroda.net/19_12582693... Pozdrawiam. Stefan
Poniżej przykład. Zwróć uwagę, że w tym przykładzie komenda konwersji temperatury występuje na końcu, a nie na początku. Odczytana temperatura będzie zatem tą która została konwertowana po poprzednim odczycie. To oczywiście nie ma znaczenia dla tego jak adresować czujniki. Powodzenia ! PL Config 1wire = Portd.6 Dim Adresy(16) As Byte Dim T1 As Byte...
Witam. Poszukałem trochę w sieci, poczytałem polskiego helpa do Bascoma i zlepiłem taki program: [syntax=basic4gl]$regfile = "m8adef.dat" $crystal = 8000000 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portc.2 , Db5 = Portc.3 , Db6 = Portc.4 , Db7 = Portc.5 , E = Portc.0 , Rs = Portc.1 Cursor Off Cls Deflcdchar 0 , 14 , 17 , 17 , 14 , 32 , 32 , 32...
Przepraszam, że dopiero teraz ale jestem w delegacji. Minęły dwa dni a Twój termometr nie działa... Możesz słuchać każdego. Ja proponuję takie rozwiązanie które zajmuje dosłownie dwie minuty jeśli robiło się to wczesniej. Sprawa jest w pełni odwracalna. To nie ślub z kobietą :D Więc co szkodzi spróbować? Kiedyś może sam komuś pomożesz. Należy zacząć...
DS-ów już działa, ale nie wiem jak dodać trzeciego. Przy sprawdzaniu ID 3 czujnika jest ono takie same jak ID 2, tak to próbowałem odczytać: Dsid1(1) = 1wsearchfirst() Do Dsid2(1) = 1wsearchnext() 'nadpisuje ID2 , ID3 Loop Until Err = 1 Do Dsid3(1) = 1wsearchnext() Loop Until Err = 1 Ja zaryzykuję stwierdzenie...
Siemka! Nie ma większego problemu i z paroma czujnikami. Rozwiązania tego problemu są conajmniej dwa. 1. Wrzucasz czujniki każdy na innym pinie portu mikrokontrolera i odczytujesz wynik korzystając właśnie z algorytmu dla jednego czujnika. Jedyna kwestia to tylko sekwencyjne przełączanie interface'u 1-Wire pomiędzy połączonymi z czujnikami pinami portu....
Witam, chcialbym sie podlaczyc po ten topic gdyz mam pewien problem z obsluga DS1820 i DS18B20 z ATMega128 Mianowicie, po podlaczeniu w trybie 2wire (1 - GND, 2 - PinB.7/PinE.7 itp., 3 - Vcc 5V) do ATMega128 z kwarcem zewnetrznym 10MHz (innego uzyc nie moge) po wykonaniu komend w Bascom AVR: config 1wire= portb.7 dim rgn(8) as byte 1wreset wait...
http://obrazki.elektroda.pl/8267947700_1... Ponad 20 lat temu jako amator hobbysta budowałem proste układy elektroniczne. Studia i styczność z informatyką spowodowały, że porzuciłem hobby pod nazwą "składanie elektroniki" na rzecz "składanie programów komputerowych". W bieżącym roku (2011) dzięki uprzejmości kolegi Jacka.M, który okazał...
Zaczynam nowy wątek na temat który jak widzę jest wałkowany kilka razy w tygodniu. Czytałem dużo, przetestowałem kilkanaście programów i nici z efektów. Jestem młodzikiem w programowaniu więc proszę o przyziemne odpowiedzi :) a już pisze w czym rzecz. Chciałem zmierzyć sobie temperaturkę za pomoca wspomnianego DS18S20 na Atmedze8 i dodam, że bawię sie...
Deflcdchar 1 , 14 , 17 , 17 , 14 , 32 , 32 , 32 , 32 ' definicja znaki stopnia Config 1wire = Portd.5 ' konfiguracja portu PD.5 jako wejcia magistrali 1-wire Dim Odczyt(2) As Byte , A As Byte , Licznik As Byte , T As Integer , T1 As Single , Napis As String * 5 'Deklaracja wszystkich zmiennych potrzebnych do pracy programu Do 1wreset 'reset...
Witam. Napisałem program w bascomie, zwykły termostat z wyjściem na przekaźnik. Mikroprocesor to Atmega8 + lcd + DS18b20 + 2 przyciski. Przerwania działają, lcd tak samo, jednak program nie chce odczytywać danych z czujnika. Sądzę że jest dobry gdyż tą cześć kodu która ma służyć do obsługi czujnika zaczerpnąłem z tego forum. Kod zamieszczam poniżej...
Witam.. może odkopie temat.... Ma ktoś przykład w bascomie co by z procesorka np: Atemga8 zrobić klienta 1-wire?? Tak jak to ma miejsce z DS18b20. Poprostu chcę zasymulować sprzętowo działanie DS18b20. Czyli będzie np: Atmega8(master) a do niego podpięta druga atmega8(slave) po 1-wire która będzie udawać DS18b20
Witam, właśnie zabrałem się za budowę termostatu- ma być oparty na układzie DS18B20 i napisałem prosty program w Bascomie Config 1wire = Portd.5 ' + jumper J2 B-C Dim Odczyt(2) As Byte , A As Byte , Licznik As Byte , T As Integer , T1 As Single Do 1wreset 'reset 1wwrite &HCC 'jedna kostka, więc wykorzystujemy rozkaz SKIP ROM 1wwrite &H44 'dokonaj...
Z noty katalogowej widze że trzeba zmienić w rejestrze konfiguracyjnym (czyli 4ty bajt scratchpada) bit 6 i 5 na 0. sam odczyt temperatury robię tak: 1wreset 1wwrite &HCC 1wwrite &H44 Waitms 750 1wreset 1wwrite &HCC 1wwrite &HBE I = 1wread(2) S = I / 16 T = Fusing(s , "##.#") chodzi mi o to żeby zmniejszyć waitms do 95 jak...
Witam Muszę stworzyć układ w którym bedę używał 8 czujników DS18B20 , i każdy musi pracować na osobnym pinie. Nie mogę podpiąć wszystkich na jednej linii i odpytywać ich po ich ID. Kiedyś robiłem sterownik w którym odczyty robiłem w ten sposób: Sub Odcz_temp1 Config 1wire = Portb.0 1wreset 1wwrite &HCC 'opuszczenie zapisu numeru ID 1wwrite &H44 'start...
Witam. Zrobiłem już część programu: $regfile = "2313def.dat" $crystal = 12000000 '-- konfiguracja zmiennch: 'potrebne do odczytu 1wire itd. Dim Liczba As Byte Dim Jednosci As Byte Dim Dziesiatki As Byte Dim Czdziesietne As Byte '--deklaracja podprogramow: Declare Sub 1 Declare Sub 2 Declare Sub 3 Declare Sub 4 Declare Sub 5 Declare...
Witammój problem polega na tym że podłączyłem do megi termometr i po wywołaniu tego kodu im T1 As Single Dim T2 As Single Dim B1 As Byte , B2 As Byte , R As Byte Dim Tmp As String * 6 Dim Znak As String * 1 Sub Temp 1wr 'podprogram 1wr 1wwrite &HCC 'komenda skip ROM 1wwrite &H33 'komenda convert T Waitms 250 Waitms 250 1wr 'podprogram 1wr 1wwrite &HCC...
Witam. Od kilku godzin szukam czegoś w języku C do przynajmniej sprawdzenia czy mam dobrze podpięty czujnik temperatury. W bascomie trochę znalazłem ale nie rozumiem tego języka więc kopiowanie i wklejanie nie ma sensu. Czujnik podłączony mam do portu PD0 Znalazłem coś takiego: unsigned char exist1w(void){ //sprawdzanie czy urzadzenie 1wire...
Temat jest podobny do: http://www.elektroda.pl/rtvforum/topic10... Próbowałem ten kod z książki o którym mowa i ten poniżej co jest oraz zmieniałem na 1MHz i nic Mam albo Brak układu albo Temp:0.0C w zależności od kodu. Napięcie na ds jest a układ jest dobrze podłączony. Poniżej mój kod $regfile = "m32def.dat" $crystal = 16000000 Config...
Witam Wykonalem termometr na czujniku DS18B20, zaprogramowałem procesor wg kodu znalezionego w sieci, podaje kod: $regfile = "m8def.dat" $crystal = 8000000 Config Lcd = 16 * 2 Config Pinb.1 = Output Config Portc = Output Config Lcdpin = Pin , Db4 = Portc.3 , Db5 = Portc.2 , Db6 = Portc.1 , Db7 = Portc.0 , E = Portc.4 , Rs = Portc.5 Config...
Z nieczytania postów (szukaj/google).
Postaraj się zdobyć Nowy Elektronik sierpień/wrzesień 2007 .Jest tam projekt takiego gadżetu na atmedze 8.Projekt posiada komunikator głosowy z ośmioma komunikatami 2,5s.Można też coś dopisać samemu do podanego kodu. Pozdrawiam
Ręce to opadają i masz rację ;) Masz błąd w definicji zmiennej do której wpisujesz ID czujników to nie jest jeden bajt tylko tablica 8x8bitów czyli 8 bajtów. Adresujesz nie istniejące czujniki bo ich adresy sa niepoprawne, wysyła procek ciagle ten sam bajt. Dim Adres1 As Byte 'adres pierwszego Dim Adres2 As Byte 'adres drugiego Dim Adres3 As Byte 'adres...
Witam serdecznie! Poniżej zamieszczam program regulacji PID oparty na kodzie AN #109 - PID Controller ze strony: [url=http://www.mcselec.com/index.php?op... oraz wzorowany na niektórych liniach kodu "Regulator PID Atmega8 + Bascom" Piotra Ludwikowskiego. Zadana temperatura oraz współczynniki PID są na stałę...
Panowie mam debilne pytanie bo nie rozumiem tego a sporo się naszukałem i nie znalazłem wyjaśnienia. Chodzi mi o to: kody rozkazów do ds18b20 w manuału są takie: ' 1 Wire commands: ' 1. Read ROM - 33h ' 2. Match ROM - 55h ' 3. Search ROM - F0h ' 4. Skip ROM - CCh ' 5. Alarm Search - ECh ' Convert T - 44h ' Read Scratchpad - BEh ' WriteScratchpad - 4Eh...
Witam, Dzisiaj prezentuję płytkę uruchomieniową przeznaczoną dla osób zaczynających zabawę z mikrokontrolerami. Płytkę cechuje bardzo prosta konstrukcja, niski koszt wykonania, brak konieczności korzystania z przewodów łączeniowych, oraz podstawowe peryferia pozwalające na zapoznanie się z elektroniką cyfrową, a nawet zaprojektowaniem wielu ciekawych...
Biblioteka której użyłeś nie ma możliwości dowolnej konfiguracji pinów. W załączniku masz bibliotekę prosto z Rosji :D Chiński wyświetlacz sam mi się uszkodził ale coś tam wyświetla :D http://obrazki.elektroda.pl/6257086800_1... Kod którego użyłem do zrobienia tego zdjęcia [syntax=vbnet] $regfile = "m8def.dat" ' specify the used micro...
Witam! Od kilku dni nie mogę poradzić sobie z takim dziwnym problemem. Zbudowałem system z ATmega8 z podpiętym do niego (poprzez TWI) PCF8583 (generuje przerwanie na INT0 co 1s), do systemu dołączony jest wyświetlacz LCD 2x16 oraz poprzez 1-Wire (portd.0) czujnik DS18B20. System działa poprawnie, nie ma wad sprzętowych, wyświetlacz działa, RTS działa,...
Podstawa to dobrze odfiltrowane zasilanie i stosowanie kondensatorów 100nF przy każdym scalaku. Takie scalaki to również DS i regulator 7805. Wolno wiszące piny mikrokontrolra z nieustalonymi stanami na nich także są powodem restartów. To samo dotyczy LCD. Stosuje się maksymalnie krótkie taśmy połączeniowe pomiędzy lcd a pcb. Najlepiej osadzić lcd bezpośrednio...
Witam Mam podobny problem atmega8 i DS18B20 bascom u mnie dzieje się coś takiego że do 40°C pokazuje dobrą temperature przy rezystorze podciągającym 2,2kΩ ale przy wyższej temperaturze to ją podwaja i tak sobie miga na przemian dobra temp i podwojona, czasem wskoczy jakaś ujemna albo jeszcze coś innego, a przy jeszcze wyższej zrywa komunikację...
Podałem wyraźnie, że oprogramowanie napisałem w WinAVR ;) Nie uznaję czegoś takiego jak bascom (wystarczyło mi raz w życiu się na nim przejechać...). Przedstawię "odchudzone" kody źródłowe - aby były całkowicie funkcjonalne należy troszkę dopisać. Ogólna idea jest przedstawiona. Sam main w programie jest niewielki. Dla przykładu pokażę jak zrealizowałem...
Znam C a wolę pisać w B4A, B4i, B4R, Bascom czyli w Basic, ale kiedy coś mi nie działa to odpalam analizator stanów logicznych albo oscyloskop. Nie zwalam na język programowania. https://obrazki.elektroda.pl/6883372000_...
Udało mi się coś zrobić i nawet działa, ale: -jak uruchamiam układ powinno pisać w dolnej linii Ustaw godzine , a jest jak na fotce niżej, -ustawianie godziny - jak trzymam przycisk w pilocie cały czas wysyła sygnał, a układ odbiera kod raz na 3 sek - wcześniej było 250ms (tak jak jest zdefiniowane w programie). http://obrazki.elektroda.net/19_12181272...
Nie było "1000 razy" a raz i porządnie: http://www.elektroda.pl/rtvforum/topic91... Wymień procesor, nie poradzisz sobie (tym bardziej w C, Bascom by to "przegryzł" w/g swojej mapy rejestrów). Pozdrawiam!
Mój Bascom to 1.11.8.3, ale w nim tylko kompiluje, HEX-a wgrywam programem AVR8 Burn-O-Mat v2.
Witam, jestem początkującym w zakresie działania na AVR, programuję w języku Bascom z pomocą książki "Programowanie mikrokontrolerów AVR w języku BASCOM". Chciałbym w niedalekim czasie wykonać bezprzewodowy termometr oparty na układzie DS18B20 i modułach Rx/Tx 433Mhz. Niestety nie bardzo wiem jak "zmusić" wspomniane moduły do pracy z Atmega8... Moje...
Siemka! Wszystko super, tylko przełączać czujniki pomiędzy pinami można jak się ma tych pinów w nadmiarze... :P Ja mam tylko jeden do dyspozycji 1-Wire i koniec. Obsługa (w BASCOM AVR) 2 czujników DS18B20 i 2 kluczy DS2405 zajęła mi ponad 80% pamięci programu ATmega8 a muszę obsłużyć jeszcze RTS poprzez I²C, klawiaturę i dołożyć kilka innych funkcji...
[url=http://www.elektroda.pl/rtvforum/to... post [/code] 100% podobny problem naj efektywniej będzie zrobić emulator ds18b20 2 przewody mnogość czujników standardowe procedury obsługi na różnych platformach Jetem z okolic Gostynia mam kody emulatorów w asm , c , i bascom potrzebuje pomocy przy przekonwertowaniu dla atmega8 bo takie mam...
Witam, Posiadam płytkę testową wraz z programem (Atmega8) regulacji temperatury kolektora słonecznego, problem w tym iż program obsługuje czujniki DS18B20 a w kolektorze są czujniki LM35. Moje pytanie brzmi: Jak w najprostszy sposób w programie Bascom zamienić te czujniki tak żeby reszta pracowała bez zmian. Bardzo proszę o wyjaśnienia i pomoc:) Pozdro....
W uC należy odpowiednio ustawić FUSE BITY!!! Poczytaj przyklejony temat.
Hej! I jest tak jak mówisz - Skubik. :P Kwarc jest przy samym układzie, przylutowany bezpośrednio. Takich strategicznych rzeczy staram się nie łączyć kabelkami...:) Myślałem że coś nie tak może być z ATmega8, że może się zawiesza, może resetuje, może jakieś zakłócenia pracy kwarcu mikrokontrolera ( pracuje na 16MHz)? Ale włączyłem w fuse bits CKOPT...
Witam :) Na wstępie dziękuje wszystkim za pomoc.Odpaliłem LCD, i nawet działa :D Teraz zamierzam zrobić sobie termometr na LCD z DS18b20.Tutaj zaczynają sie schody.Napisałem program(zlepek różnych). Skorzystałem z tego schematu: http://obrazki.elektroda.net/58_12468141... DS18b20 dodałem do nóżki Atmegi 8 do PD5.Program ma działać tak że, po...
Mruga tylko raz po kilkunastu sekundach a potem juz nie czyli nie nadaje ? Sprawdziłem dokładniej i po każdym resecie po ok 38 sekundach mrugnie ale potem już nie mruga, tak jakby się zawieszał program. Tak wygląda teraz program w odbiorniku ; [syntax=basic4gl] $regfile = "m8def.DAT" 'deklaracja procesora, w tym wypadku Atmega8 $crystal = 16000000 $hwstack...
Witam. Ja miałem niedawno taki sam problem z atmega 162. A wiec kupiłem dwie szt. atmegi 162 w sklepie internetowym TME. Najpierw napisałem program do obsługi wyświetlacza LCD i czujnika temperatury DS18B20 pod attiny2313. który działał. Następnie po nie wielkich korektach programu wgrałem go bez żadnych problemów do atmegi 162. Niestety nie działał....
Witam, napisałem prosty programik do obsługi ds18b20, który miałby mierzyć temperaturę i według zadanych kryteriów włączać ew. wyłączać urządzenia (narazie to tylko diody, ale docelowo będą to przekaźniki). uP Atmega8 Po uruchomieniu programu napotkałem na następujący problem: W przedziale od 10 do 20 świeci jedna dioda ale ogrzanie czujnika nie powoduje...
co napisaliscie jako swoj pierwszy program na dany uC w danym jezyku (rozbudowy sie licza, byle by wciaz byla to ta sama baza) n. n. - literka, cyferke z przodu dodam sam. zachowujcie chronologie w swoich dokonaniach na roznych platformach jezykowych i sprzetowych, tak aby to mialo sens! ____________________ 0x1-a. Freddie Chopin - migacz diodkami o...
Witam, aż miło jak wszyscy się dzielą swoimi doświadczeniami z ds'ami :D Ale przejdę do rzeczy czyli lepiej dać zasilanie z linii danych czyli parasite, czy lepiej dać zasilanie z osobnej linii?? (at) don diego Możesz wyjaśnić mi stan wysoki na linii danych na czas konwersji bo ja chyba stan niski jakoś ustawiłem podpinając pin 5 lub 6 do masy(dokładniej...
Tu masz prosty programik, który kiedyś pisałem. Przedstawia obsługę zarówno wersji B jak i S. [syntax=basic4gl] $regfile = "m8def.dat" 'deklaracja procesora $crystal = 8000000 'deklaracja czestotliwosci taktowania Config Lcd = 16 * 2 'typ wyswietlacza i konfiguracja pinow Config Lcdpin = Pin , Db4 = Portc.2 , Db5 = Portc.3 , Db6 = Portc.4 , Db7 = Portc.5...
Witam, postanowiłem dodać do programu pomiar temperatury mam czujnik DS18B20 , tylko że kod programu odpowiedzialny za sterowanie czujnikiem opóźnia działanie encodera ,gdzie jest tutaj błąd może czegoś nie uwzględniłem w tym kodzie ? poniżej cały kod [syntax=basic4gl] 'Filename Encoder_100.bas 'Version 1.00 'Date 2012-03-19 'Purpose Test of ALPS STEC11B13...
Witam, jestem początkującym programistą w bascom, chciałem przetestować wykorzystanie układu PCF 8583, napotkałem jednak na problem z którym nie mogę sobie poradzić w żaden sposób, mianowicie miesiące wyświetlają się jak chcą, tzn są to liczby z kosmosu wzięte, np 49, przeskakują razem z dniami itp. pewnie to mój błąd w kodzie, ale nie mam pojęcia gdzie,...
No tak, bo ja nie mam w zamiarze mieć alarmu dźwiękowego. Więc usuń z programu także deklaracje odnosnie wymiarowania zbędnych zmiennych i uzupełnij poprawki j.w. Wytestuj program w symulatorze running "step into code" (F8) i w odpowiednich momentach kodu uzupełniaj 'ręcznie' zmiany logiczne pinów a także symulowane wartości zmiennych (np: odczyt temperatury...
dzięki działa:) dodałem jeszcze buzzerek, ale mam takie pytanie układ ma działać jako termometr informujący o danej temperaturze i bliskości zagotowania wody w obiegu. Kod napisany teraz po przekroczeniu temperatury 70 C zacznie odgrywać melodyjkę, po przekroczeniu 80 inna, a 85 na bardzo piskliwą. Ale potrzebuje coś aby spełniało taka cechę: np. idę...
http://obrazki.elektroda.net/26_12188856... Termometr domowy wersja 2.0 by skomy Termometr wykonany jest z wykorzystaniem procesora Atmega8 (oprogramowanie w BASCOM): - posiada interfejs 1wire - do podłączania czujników DS18B20 (programowo ograniczone do 4) - wejście odizolowane galwanicznie transoptorem - do wyciszania aktywnych alarmów -...
Jeśli chodzi o oczekiwanie na pomiar to przy podłączeniu 3 przewodowym (+5V, masa i sygnał) to nie ma potrzeby oczekiwać na pomiar. Jest on dostępny od razu po wykonaniu komendy ow_write_byte(DS18B20_CMD_CONVERT);
Timer w przerwaniu obsługuje wyświetlacz LED i inkrementuje zmienną byte, która w pętli głównej w instrukcji Case wybiera konkretne funkcjonalne fragmenty programu do wykonania, których wykonanie czasowo mieści się pomiędzy przerwaniami od timera. W przerwaniu od timera ustawia się także flaga przerwania, która uruchamia za pomocą If Then instrukcję...
bascom atmega8 ds18b20 bascom ds18b20 atmega8 atmega8 bascom ds18b20
licznik obrotów minutę gitara elektryczna kable rozszerzy fizyczny
wkrętarka milwaukee manetka hulajnoga
Candy RapidÓ, Smart, Aquamatic – jak wyjąć szufladę dozownika z pralki, blokada, czyszczenie Hörmann ProMatic 4 – czy można kupić sam zasilacz 7700907?