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,...
czytałem wolniej i efekt ten sam:(
Witam ! Program nie zależy od sposobu podłączenia. http://obrazki.elektroda.net/19_12582693... Pozdrawiam. Stefan
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. 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...
Codziennie w tym dziale ktos zadaje pytanie dotyczace termometru na DS18B20. Moze jak Dallas przestalby wysylac darmowe probki to moze w koncu te pytania by sie skonczyly :D Poszukaj na forum bo takich zrodel i to w dodatku w Bascom'ie jest tyle, ze jakbys je wszystkie wydrukowal to spokojnie mozesz sobie nimi pokoj wytapetowac :D Ponawiam pytanie Balu:...
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...
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ąć...
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...
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...
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...
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.. 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 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...
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. 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...
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...
Witam. Szukałem już duuuużo na forum i nie znalazłem działającego kodu do obsługi trzech czujników ds18b20 (nie działa mi nawet obsługa dwóch) Jeśli ktoś wie jak to zrobić to prosiłbym o pomoc. PS. Jeden czujnik obsługuje się w miare prosto. Wynik wyświetla z rozdzielczością do 0.1 st C i działa OK $regfile = "m8def.DAT" $crystal = 1000000...
Cześć. Wielokrotnie już elektroda ratowała mnie pomocną ręką, mam nadzieje, że i tak dziś będzie. Staram sie napisać własną obsługę dla ds18b20 dla atmega8. Sporządziłem wstępny kod "biblioteki" (gdy zacznie działać zrefaktoryzuje kod celem jej uogólnienia). Jak narazie jedyna funkcja która mi działa to reset i presence pulse. Dalej w zasadzie odczytuje...
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...
$regfile = "m8def.dat". $crystal = 8000000 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portb.6 , Db5 = Portb.7 , Db6 = Portd.5 , Db7 = Portd.6 , E = Portd.2 , Rs = Portd.0 Config 1wire = Portc.0 Declare Sub Odcz_temp Dim Temperatura(2) As Byte Deflcdchar 0 , 7 , 5 , 7 , 32 , 32 , 32 , 32 , 32, Do Call Odcz_temp Cls If Temperatura(2)...
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...
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...
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ł...
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...
Z nieczytania postów (szukaj/google).
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...
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
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...
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 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łę...
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...
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,...
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_...
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ę...
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!
W uC należy odpowiednio ustawić FUSE BITY!!! Poczytaj przyklejony temat.
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....
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...
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...
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...
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 :) 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...
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...
Czy przypadkiem zmienna I nie zwraca ci temperatury ujemnej gdy ona występuje? Znak jest zawarty w drugim bajcie => patrz datasheet.
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,...
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ę...
Prawie identyczny temat : [url=http://www.elektroda.pl/rtvforum/to... 7seg LED
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 -...
bascom atmega8 ds18b20 bascom ds18b20 atmega8 atmega8 ds18b20 bascom
wymiana grzałki elektrolux wyłącza schemat pinów sterownika skrzyni
wkrętarka milwaukee manetka hulajnoga
BMW X3 E83 N46 2.0i LPG – check engine po 100 km na gazie, na benzynie OK, adaptacje LTFT Uziemienie zbiorników metalowych zakopanych w ziemi – normy, ochrona katodowa, bezpieczeństwo Ex