Dzięki za odpowiedź. Nie zależy mi na dużej szybkości działania, potrzebuję wyświetlać na nim temperatury z kilku ds18b20. A bascom dlatego że dawno temu zacząłem z nim bo proste rzeczy robiło się bardzo szybko i przejrzysty dla mnie sposób. Ostatnio zdecydowałem że spróbuję Arduino, okazało się że po kilku godzinach wróciłem do Bascoma bo nie mogłem...
Witam. Mam problem z termometrem. Wiem usłyszę iż jest już dużo na forum. Lesz mój problem jest nietypowy. Mam podłączony czujnik temperatury DS18B20. Podobny program (BASCOM) mam wgrany w attiny2313 i działa wyśmienicie. Zmieniając parę rzeczy w programie wgrywam do atmegi. I tu moje zdziwienie nie działa wyświetlanie temperatury. Zastanawiałem się...
Witam Zrobiłem termometr na Ds18b20 i wynik wyświetlany jest na 3 wyświetlaczach 7 segmentowych Led. Dodatnia temperatura działa bardzo dobrze jednak gdy pojawia się ujemna temperatura poniżej - 10 stopni na wyświetlaczach pokazują sie same 8 8 8 . Może to dlatego że pojawia się - ? Nie wiem jak w bascomie można napisać moduł z liczby np. |-10| = 10...
Witam, Mam pytanie do osób obeznanych z CRC w DS18b20. Pobrałem z netu procedurę pobierającą temperaturę z czujnika ze sprawdzeniem CRC: " Config 1wire = Portd.2 ' termometr Dim Sc(9) As Byte 'w tej tablicy beda dane odczytane z czujnika Dim Temperatura As Integer 'tu obliczona temperatura --- tu konfiguracja lcd 2*16 typowy --- Do 1wreset Pind , 2...
Witam ponownie Wyświetlanie już działa dobrze przetestowane na powyższym programiku, zawsze wyświetla 012345 w trybie konfiguracji 16*1 lub 16*1a Natomiast problem stanowi program do wyświetlania temp. Jest to program przepisany z książki p. Wiązany ale niestety wyświetla bzdurne wartości, wydaje mi się że problem tkwi w przeliczaniu samej wartości....
Witam Zaczynam trenować mikrokontrolery i programowanie. Próbowałem w asm ale jakoś ciężko - próbuje teraz w bascomie - i też ciężko niestety :( znalazłem jakiś przykład programu w bascom ale coś mi nie hula. $crystal = 16000000 '$regfile = "m16.dat" Config Portc = Output Config 1wire = Porta.1 Dim Odczyt(2) As Byte Declare Sub Odcz_temp...
Witam serdecznie !!! Mam taki problem z DS18b20 i ATmega16. Programuje w BASCOMie i wykorzystuję funkcję 1wirecount tak jak w programie poniżej i ciągle mi wyświetla że ilość podpiętych urządzeń to 0, nie wiem w czym tkwi problem. Podpiąłem zgodnie z nota katalogową tzn 1 do gnd 2 do uP i do tego 4,7k rezystor oraz 5v pod Vdd. oto 'Termometr DS18B20...
Jak sprawić aby program wyświetlał max i min wartości temperatury zanotowane podczas pracy programu? W bascomie są polecenia min i max ale trzeba im "zapełnić tablicę" aby miały z czego określić min i max wartość. Nie bardzo umiem się za to zabrać w przypadku ds-a. Kombinowałem żeby podczas jednego cyklu przypisać wartość a do b i po resecie ds-a porównać...
Witam Wykorzystałem kod Kolegi Duch do pokazywania kierunków zmian temperatury - tzw. "strzałki" W przyszłości, proszę używać tagów SYNTAX - poprawiłem.
Witam, Proponuję spróbować tego, to kawałek kodu z mojego pliku pomocy w obsłudze termometru DS18B20: 'Odczyt temperatury z dokladnością do dziesiątych części $regfile = "89s8252.dat" $crystal = 12000000 Dim Odczyt(2) As Byte 'deklaracja dwóch zmiennych typu byte do których będą zapisywane dane z termometru Dim T As Integer , Przecinek...
Witam Mam Problem Z Napisaniem Programu Do Atmega8. A Mianowicie Sprawa Wygląda Tak: Każdy ds18b20 Podpięty Do Innego Portu. I Chcę: 1. Zrobić Alarm Po Przekroczeniu Określonej Temperatury: a) W Miejscu Danego Czujnika np. 2 Zamiast Temperatury Wyskoczył Napis "GORĄCO" i Po Chwili Zniknął i Pojawiła Się Temperatura i Znowu Napis "GORĄCO" I tak W Kółko...
Witam ponownie Zrobiłem to przez Timer0. Jednak problem z aktualizacją wyświetlania dalej występuje. Jeszcze drugi problem to start, przez okres zdefiniowany zmienną Licznik ( teraz równą 300 ) nic się nie wyświetla - dopiero po czasie = 300. Próbowałem również z Enable/Disable Interrupts na czas pomiaru, ale nie było żadnego efektu. Mam takie pytanie...
Witam Testuje termometr na dwóch Ds18b20 i żeby wynik wyświetlany był trzech wyświetlaczach 7seg. LED. Ma działać tak że najpierw pokazuje na 3 sekundy 1 temperaturę a po tym czasie na kolejne 3 sekundy pokazuje 2 temperaturę. Linie 1 wire podciągnąłem z rezystorem 3,3K do +5V. Wszystko działa temperatury się zmieniają i wyświetlają ale co jakiś czas...
Witam. Napisałem obsługę 2 termometrów DS18B20 w Bascomie. Wszystko ładnie działa, ale... W procedurze trzeba chwile poczekać po odczytaniu danych z termometrów. Wygląda to tak: 1wreset 1wwrite &H55 1wverify Dsid1(1) 1wwrite &HBE I1 = 1wread(2) 1wreset 1wwrite &H55 1wverify Dsid2(1) 1wwrite &HBE I2 = 1wread(2) 1wreset...
W ogóle skoro nie potrafisz odczytać tego co napisałem wyżej to znaczy że do końca nie rozumiesz co to tablica. Wyjaśnię najbardziej łopatologicznie. Wyobraź sobie, że tablica to pociąg z wagonami od 1 do 8. Każdy wagonik może przewozić daną liczbę. A cały pociąg ma swoją nazwę np. pociąg "Kopernik" Więc. Ds1(1)=9 Oznacza, że mamy tablicę o nazwie "Ds1",...
$regfile = "m8def.DAT" 'deklaracja procesora, w tym wypadku Atmega8 $crystal = 1000000 'deklaracja cześtotlwiości pracy (wew oscylator 1MHz w zupełności wystarcza) 'Deklaracja portów od wyświetlacza LCD Config Lcdpin = Pin , Db4 = Portb.0 , Db5 = Portb.1 , Db6 = Portb.2 , Db7 = Portb.3 , E = Portb.4 , Rs = Portb.5 Config Lcd = 16...
Witam. Zrobiłem sobie termometr na atmedze8, na czujniku ds18b20, wszystko ładnie działa, lecz temperaturę mam wyświetloną tylko na górnej linii wyświetlacza, a chciałbym, żeby temperatura była wyświetlana duża na 2 liniach wyświetlacza. Jest to wyświetlacz 2x16. Czy ktoś mógłby mi pomóc w napisaniu kodu do wyświetlania tej temperatury na całości wyświetlacza...
Jest rok 2015 teraz robi się to tak: DS18B20 moze być zasilany z linii transmisji bądź trzecim pinem. Jeśli masz podłaczone 5V na stałe podczas pracy programu czyli do DS`a idą trzy przewody to DS może dla Ciebie przygotować temperature i poczekać spokojnie aż ją odczytasz. Czyli każesz mu przygotować temperaturę i wracasz po nią za sekundę. Kiedy wracasz...
Mam problem z pomiarem temp na ds18b20. Ten sam problem występuje na attiny2313. Na podłączeniu "zwykłym" działa a jak podłącze wyświetlacz LCD przez I2C to na wyświetlaczu wyświetla się Temp: -MMM... i tak w nieskończoność czasami jest to -2M..., -B... , -(at)... Jestem początkującym więc proszę o wyrozumiałość :D Kod który działa prawidłowo: [syntax=vbnet]...
piórko Możesz do tego jeszcze dorzucić 2-punktowy pomiar temperatury na DS18B20?? Temperatura by się wyświetlała z rozdzielczością do dziesiątej stopnia C np. 24,6C.
Witam wszystkich! Czy któryś z szanownych kolegów, mógłby mi wytłumaczyć (najlepiej tak łopatologicznie) jak podzielić jakąś liczbę w taki sposób aby wyodrębnić cyfrę odpowiedzialną za: setki, dziesiątki, jedności? Problem pojawił się gdy przeglądałem któryś już z rzędu program odczytujący temp. z DS18b20, a następnie wyświetlający ją na kilku wyświetlaczach...
Witam ! Po pierwsze chciałbym się przywitać ponieważ mało dotąd bywałem na forum. Chciałbym przedstawić wam moją konstrukcję którą jest termometr.Natchnieniem do zrobienia go była chęć nauki obsługi magistrali 1-wire oraz poznania nowych funkcji bascoma. Jest on oparty na procesorze 89C2051 oraz czujniku temperatury DS18B20. Czujnik ten jest podłączony...
Dziękuję Wam za pomoc. Menu działa. Dorobiłem sobie dwa pliki do odczytu i wyświetlania temperatury na DS18B20. Mam plik_glowny.bas I pliki do DS18B20 - Config_DS18B20.bas oraz DS18B20.bas W celach testów zrobiłem osobny program aby tylko sprawdzić czy popranie działa odczyt temperatury. I działa bezbłędnie. Zasada działania tych plików jest następująca:...
Witam, Piszę program w DELPHI obsługujący pomiar dwóch czujników DS18B20. Mikro kontroler to ATMEGA32, program w BASCOM. Wszystko ogólnie już działa: wysyłam po UART ciąg znaków jako string i odbieram wybrane przeze mnie znaki o danej ilości funkcją Copy w DELPHI. Korzystam z biblioteki TComPort. Jedyny problem to z Label'i zrobił mi się generator:...
Cześć! To jest mój pierwszy projekt jaki chce wykonać od początku do końca (prawie) sam. Do tej pory składałem lub modyfikowałem gotowe kity i cudze rozwiązania więc moja wiedza jest trochę mizerna ale może niedługo się to zmieni :) Mam opanowane podstawy języka c (lecz nigdy go nie używałem podczas "tuningowania" gotowców). Bascoma też ogarniam, lecz...
Książka to "Programowanie Mikrokontrolerów AVR w jez. BASCOM" Program termometra. Przykład z książki. 'Program obsługi jednego układu DS1820 dołączonego 'do magistrali 1-Wire $regfile = "m8def.dat" 'informuje kompilator o pliku 'dyrektyw mikrokontrolera $crystal = 8000000 'informuje kompilator 'o częstotliwości oscylatora 'taktującego mikrokontroler...
Witam. W dziedzinie mikrokontrolerów jestem początkujący więc proszę o wyrozumiałość. Mam problem zaprogramowaniem Atmega8. Programator zrobilem sobie według schematu z tego posta 'Termometr 4 punktowy DS18b20 $regfile = "m8def.DAT" $crystal = 1000000 'Deklaracja portów od wys'wietlacza LCD Config Lcdpin = Pin , Db4 = Portb.0 , Db5 = Portb.1...
Witam,problem dotyczy projektu: . Chodzi o to iż, na wyświetlaczu wyświetla temperatura: -0,1stC. Nie wiem w czym problem, wiem, ze temat tego termometru był poruszany ale nie znajduje w nim odpowiedzi. Co może być problemem? czujnik DS18B20 jest nowy i poprawnie podłączony do płytki testowej. Proszę o pomoc, jestem początkujący i potrafie tylko zaprogramować...
Witam Przerzucam się z Bascom na C. Niestety jest to odrobinę bolesne. O ile LCD już ogarnąłem, to kłopot sprawia mi DS18b20. Zaraz po uruchomieniu układu, temperatura wyświetla się w miarę dokładnie. Niestety po kilkudziesięciu sekundach wyświetlana jest temperatura ujemna (!). Czyli najpierw pokazuje ok 22-23 st. i nagle przeskakuje na -8st. Wygląda...
Zamiana wyświetlaczy nic nie daje, zamieniałem nawet same kabelki łączące je z płytką i też nic. Jeśli chodzi o przerwania to mam odbiór danych z RFM12 oraz obsługę klawiatury na PCF8574. Może faktycznie coś na rzeczy z tymi przerwaniami. Wyświetlacz, który nie działa jak trzeba oprócz wyświetlania daty, godziny oraz części odebranych danych wyświetlać...
Witam! Chciałem zaprezentować zegar mojego wykonania na uC Atmega8, soft został napisany w bascomie. Zegarek posiada funkcje, budzika, pomiaru temperatury na zewnątrz i wewnątrz mieszkania (DS18B20), daty, podtrzymania pamięci po zaniku zasilania, wygaszania wyświetlaczy oraz lampki nocnej tą rolę spełnia diodka 3mm super jasna koloru białego. Do wyświetlania...
Witam Próbuje przerobić kod obsługujący kilka DS18B20 na jednej linii i drugi obsługujący kilka DS18B20 na kilku liniach. Niestety jak na razie efekt jest taki, że działa tylko pierwsza linia, czyli dwa DS18B20. Jeśli chodzi o konfiguracje, to celowo nie ma Config 1wire = Porta.1 gdyż wpisanie tego portu, jako 1WIRE powoduje wyświetlanie 0.0 dla pierwszego...
Witam Mam taki malutki problemik... Podłączyłem sobie do AT89C2051 zegar PCF8583 i termometr DS18B20. Wszystko ładnie, pięknie zczyta (czas i temp.), ale jak pisze programik do ustawienia czasu to mi się pojawia komunikat o ograniczeniach wersji DEMO (procedura zapisania danych w PCFie się mieści... nie mieści się ustawianie tych danych). Pytanko mam......
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,...
Witam Używam Attiny2313 do pomiaru dwóch temperatur z DS18B20. Wynik ( Integer ) przesyłam bez żadnej obróbki przez UART przewodem 40 cm do Atmega328. Atmega rozbija odebrane dane i jest obróbka Kod Attiny2313 $regfile = "attiny2313.dat" $crystal = 8000000 $baud = 4800 '********************* Konfiguracja magistrali 1-Wire Config 1wire = Portd.5...
Dzień dobry, Zbudowałem termometr cyfrowy oparty na układzie Atmega8 i czujniku DS18B20. Do tego podpięty jest wyświetlacz LCD. Termometr "pamięta" i wyświetla temperaturę maksymalną i minimalną z ostatnich 12 godzin. Do tego wszystkiego podłączyłem diodę RGB tak jak na schemacie: Zadaniem diody jest świecenie w zależności od temperatury, czyli jak...
Witam! Mam problem z odczytem ID czujników ds18b20 podłączonych do uC. [syntax=c] while(1) { check_ds18b20 = OneWire_reset(); if(check_ds18b20 == 1) { OneWire_write_byte(0x33); // READ_ROM lcd_goto_xy(0,0); for(int i=0; i<8; i++) { ds1_ID[i] = OneWire_read_byte(); show_buff(ds1_ID[i]); } }else { write_text_from_flash(LCDtext_2); // jeżeli brak DS-a...
Panowie, Panie potrzebuję pomocy bo siedzę i siedzę i nie mogę sobie dać rady z kodem BASCOM. Jestem początkujący, a raczej raczkujący w AVR, programowaniu itd. :( Próbuję zbudować sterownik do pokoju który ma wykonywać: -sterowanie światłem (8x) -sterowanie piecem/kotłem gazowym (temperatura noc i dzień-dwie różne temperatury) -każdy przycisk ma dwie...
Witam, Chcę zrobić system pomiaru temperatury, w którym jeden mikrokontroler będzie mierzył temperaturę z 4 czujników (DS18B20) i wysyłał wyniki do drugiego mikrokontrolera za pomocą modułu BT (HC-05). Drugi mikrokontroler ma tylko wyświetlać wyniki. Posiadam: zestaw uruchomieniowy EvB 4.3 v3 (ATmega32), moduł Pro mini (ATmega328p), 2x moduł BT HC-05...
Witajcie, dziś postanowiłem się podzielić dorobkiem w postaci oprogramowania i wiedzy na temat pewnego modułu GPS. Zegar softowy synchronizowany GPS z dodatkowym wyświetlaniem współrzędnych i prędkości no i dorzuciłem w ostatniej chwili temperaturę z DS18B20 - taki szkoleniowy programik w BASCOM (świetny przykład - gotowiec dla tych którzy chcą zrobić...
Po kilku dniach pracy urządzania stwierdziłem że jednak przydało by się żeby serwerek dodatkowo wysyłał dane do "" chociaż z termometru domowego. Próbowałem na rożne sposoby ale nie mam pojęcia jak to zrobić. Może ktoś z Was jest w stanie zmodyfikować kod ? Może kolega (at)bart-projects czyta ten temat? ;) (to ten sam kod co w załączniku) [syntax=vbnet]...
witam Czy ktoś z wytrawnych bacom-owców mógłby mi podpowiedzieć jak poprawić kod ;) Program jest banalny dla was ;) ja dopiero się uczę ;) Napisałem program z menu przełączanym jednym klawiszem - zmienna Menu_id zliczana i ze względu na nią i ponowne naciśniecie klawisza wywołuję podprogramy - wszytko działało super dopóki nie dodałem pomiaru temperatury...
Mam tylko jeden czujnik na magistrali Ale gdy pozbywam się 1wverify Dsid1(1) to układ nie wyświetla temp.
Popełniłem taki oto kod jak poniżej. W założeniu ma to być zegarek stawiany pilotem, oraz z dwoma DS18B20. Założyłem sobie, że nie użyję żadnego Wait, ani Gosub. Mam jednak jeden problem z odświeżaniem czasu na LCD. Niby dwukropki migają co sekundę, ale sekundy nie są wyświetlane poprawnie. Przez pewien czas jest niby dobrze, ale czasem jakby pomija...
Witam. Moje pytanie dotyczy wyświetlania temperatury na 7 - segmentowych wyświetlaczach LED. Posiadam czujnik DS18B20. Jak napisać program aby temperatura wyświetlana była na dwóch kostkach wyświetlacza. W książce pana Marcina Wiązania znajdują się 2 programy : - Program multipleksowego sterowania wyświetlaczami - Program obsługi termometru DS1820 Jaka...
Mały sukces na błędne wyświetlanie obrazu pomogła wymiana wyświetlacza. wyświetlacz od 3310 wyświetla prawidłowo tylko ma trochę mały kontrast i nie wiem od czego to zależy bo wcześniejszy lcd(3410) miał odpowiedni. Teraz kolejna faza zabawy stworzenie termometru na ds18b20. I obsługa karty sd dla wczytywania animacji i wyświetlania grafik. Dziękuje...
Witam forumowiczów. Mam mały problem z przerobieniem programu do mierzenia temperatury wzmacniacza 2x200W, problem polega na tym że mam program pod kostkę AT89C2051 a obecnie dysponuje tylko atmegą 16. Oryginalny program jest użytkownika "lechoo". Byłbym bardzo wdzięczny gdybyście pomogli mi przy tym programie. [syntax=basic4gl]'----------------------...
Witam. Buduję zegarek oparty o Atmegę32 i wyświetlacz na sterowniku ST7565R. Układ podobny do mojego [url=]panelu zdalnego. Skopiowany jest z niego program, oczywiście przerobiony odpowiednio i powycinane co trzeba. Na razie tylko go uruchamiam. I tak jak przy pisaniu programu pod "Panel zdalny" nie było problemów to teraz dzieją się dziwne rzeczy....
Witam ponownie No ja walczę z całym kodem, żeby go trochę zoptymalizować, ale nie bardzo się daje. zajęte 77% a nie mam konwersji danych z sht11 jeszcze zrobionych, coś mi się wydaję, że będzie trzeba się przesiąść na M32. Przykładem może być np. zapis temperatury z dokładnością do jednego miejsca po przecinku. Przecież wystarczy do tego zwykły, dwubajtowy...
Witam. Zbudowałem termometr w oparciu o DS18b20. Chciałbym zapisywać co 1200 pomiar do tablicy 3-elementowej. Po zapełnieniu tablicy 3 pomiarami: pierwszy pomiar = 1 element tablicy drugi pomiar = 2 element tablicy trzeci pomiar = 3 element tablicy chciałbym porównać wartości i sprawdzić, czy temperatura wzrosła, czy spadła. Wszystko wydaje się proste,...
Tak dokładnie, jeżeli ustawie crystal na 8M i w procesorze wewnętrzny na 8M to wyrzuca mi śmieci, a jak dam 11095200 ( to miałem na myśli mój błąd ), a w atmedze jest wewn. 8M (więcej sie nie da) to działa dobrze tak samo jak crystal dam na 1M w atemedze 1M też jest dobrze. Inna sprawa jest taka, że nie wiedzieć czemu symulacja nie idzie mi w czasie...
W schemacie pominąłem zasilanie i podłączenie LCD. Kod: (został wzięty z książki M. Wiązania - "Programowanie mikrokontrolerow AVR w jezyku Bascom", usunąłem kod od obsługi LCD bo mam go ustawionego w bascomie) $regfile = "m8def.dat" $crystal = 8000000 Config 1wire = Portc.5 'konfiguracja linii magistrali '1-Wire Declare Sub Odcz_temp 'procedura...
Witam Zachęcony sukcesami z płytką EVB 4.3 zaprojektowałem i zamówiłem swoją - na początek z AtMega8 w DIP. Do tego pamięć 24C32 oraz układ do RS485. Wszystkie układy mają kondensatory 100 nF ( stabilizator 7805 również + jeden elektrolit ). Całość ze złączem pod wyświetlacz 2*24 ( właściwe 4*12 ) Reset przez rezystor 10 K do +5V AtMega8L ( na 8 MHz...
Zegarek oprócz funkcji wyświetlania czasu ma pokazywać temperaturę i mieć możliwość sterowania z pilota (RC5). Tutaj pierwsze pytanie, czy GETRC5() wprowadza jakieś opóźnienia? Mam na myśli to czy nie zakłóci to zliczania czasu. Dodatkowo obawiam się, że będzie problem z płynnym sterowaniem, a to dlatego, że nie jest podłączony pod INT0 albo INT1 Pozdrawiam
Mógłbym prosić kogoś o poprawienie kodu termostatu który będzie obsługiwał 3 wentylatory? Czujnik temperatury, którego będę używał to DS18B20. Dodano po 4 Tutaj postarałem się przerobić inny kod, wydaje mi się że powinno być nieco lepiej niż z tym 1... [syntax=text] $regfile = "m8def.dat" $crystal = 8000000 '***************************************...
Oj kolego, poważny błąd - zasilaj prawidłowo mikrokontroler: Dzięki za upomnienie, faktycznie gdzieś to przeoczyłem, na schemacie ideowym nawet masa wisi :) Poniżej zamieszczam poprawiony schemat ideowy i płytkę w EAGLE. Widząc duże zainteresowanie kodem wrzucam wsad w BASCOM. Załączam również program współpracujący z urządzeniem. Program może działać...
Problem dotyczy obydwóch czujników. W czasie awarii nie zauważyłem odczytów temperatury, ponieważ jest wyświetlany komunikat o błędzie pomiaru. Co do podłączenia czujników: połączenie trzy przewodowe - plus minus i DATA do nóżki procesora i podciągnięcie do 5V przez 3.3k. Program obsługujący w BASCOM. Rozkaz konwersji dla pierwszego i odczyt z drugiego....
Witam! Mam taki malutki problem. Chciałem stworzyć sobie taki serwer www (kod programu ściągnięty z archiwów AVT) który pokazywał by mi przez internet temperaturę w jakimś oddalonym pomieszczeniu w innym budynku np. Do budowy tego wykorzystałem AVT-956 tj. internetowy sterownik I/O. Akurat go posiadam ponieważ robiłem nim ćwiczenia na pracowni informatycznej....
Witam, Jestem w fazie projektowania prostej stacji meteo. Projekt podzieliłem sobie na 2 części. Pierwsza część wykonuje pomiary (temperatura otoczenia, prędkość i kierunek wiatru) i zapisuje je na karcie SDC/MMC. Druga część wyświetla pomiary na wyświetlaczu LCD i umożliwia komunikację z PC przez RS-232. Obie część będą znajdowały się w odległości...
Dużo skoków i dużo rzeczy w przerwaniu. Ja bym wywalił większość z przerwania. A już na pewno pozbyłbym się bezsensownych Gosub'ów Po co one skoro i tak podprogramy wykonywane są tylko raz na pętlę ? Polecenie Gosub powinno się stosować tylko wtedy kiedy pewny określony fragment kodu jest wykonywany conajmniej dwa razy na pętlę, bo w przeciwnym wypadku...
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...
Witajcie ponownie , w głowie mojej zrodził się nowy pomysł , a że z Bascomem słabo więc znowu zwracam się do was .Jak w temacie chcę złożyć zegarek synchronizowany sygnałem DCF 77 , termometrem in - out na 2 x ds18b20 pod jedny gniazdem 1-wire , datą i podświetleniem włączanym czasowo po naciśnięciu klawisza. Mam parę programików do obsługi zegara dcf...
W bascomnie ciężko zrobić LED + Ds18b20 wszytko psuje Waitms 750. Zwiększ do 8 a jak możesz do 16MHz kwarc. A od kiedy to musimy czekać 750ms nie robiąc nic innego? Od czego mamy timery? Przepraszam najmocniej Kolegę, ale jeśli Kolega tego zrobić nie potrafi to: 1. Nie oznacza że się tego zrobić nie da - ja nie potrafię zbudować komputera klasy PC...
W pętli For odbierasz dane z DS'a, wyświetlasz je na wyświetlaczu i jeszcze stosujesz opóźnienie! DS nie czeka na to wszystko tylko sypie danymi, które uC zgubi! W pętli zostaw tylko Ds(i) = 1wread(). [syntax=basic4gl]For I = 1 To 8 Ds(i) = 1wread() Next I [/syntax] Po odczytaniu danych dopiero je wyświetl [syntax=basic4gl]For I = 1 To 8 Lcd Ds(i) ;...
Po całym dniu walki słabo opisałem mój problem bo już po prostu nie miałem siły :D Wyjaśniam... Zrobiłem sobie mikro serwerek LANowy na Atmedze32 i układzie ENC28J60. Z doświadczenia z tym układem i Atmegą wiem że znacznie stabilniej wszystko pracuje gdy mikroporocesor (Atmega) jest taktowana zegarem 25MHz z gotowego modułu ENC a nie własnym kwarcem....
Witam. Dostałem 4 sztuki ds18b20 w samplach i konstruuję termometr do szkoły. Napisałem program,udało mi się połączyć z czunikami i wyświetlić temperaturę na LCD,wszystko było ok. Oba czujniki miałem zamontowane na płytce prototypowej(mam na niej zmontowany cały układ). Po pierwszych testach przylutowałem do jednego czujnika skrętkę o długości ok 30...
Witam. Skleciłem taki o to "fragment" kodu do obsługi zegarka RTC. Wszystko działa 'Program do obsługi zegara czasu rzeczywistego RTC PCF8583 Philips za pomoca magistrali I2C $regfile = "m8def.dat" 'Atmega8 $crystal = 8000000 'Kwarc 8MHz Config Lcd = 20 * 2 Config Lcdpin = Pin , Db4 = Portb.0 , Db5 = Portb.1 , Db6 = Portb.2 , Db7 = Portb.3...
Witam. Temat odgrzebany ze względu na brak czasu nad pracą i nauką mikrokontrolerowania się :) Więc tak, po poznaniu już podstaw działania mikrokontrolerów napisałem program który jest gotowym projektem napisanym w Programmer's Notepad. Przejrzałem już wszystkie wątki na temat tego czujnika temperatury i sprawdziłem każdą z możliwych kombinacji ustawień...
Witam Wczoraj zakupiłem sobie czujnik ds18b20 miał być ds1820 o czym dowiedziałem się dopiero w domu po nieudanej probie odczytu temperatury. Kod który użyłem pochodził z książki M. Wiązani. (niżej go zamieszczam). i tak po połączeniu wszystkiego wg. schematu dostałem odczyt temperatury -52 st. C co jest absurdem bo powinno być ok. 20 - 21 st. C i tak...
Witam panowie od razu podkreślę że jeszcze uczę się bascoma więc proszę nie krzyczeć i nie usuwać tego postu do kosza Siedzę już nad tym 3 dzień i efekt mojej pracy nie najgorszy ale mam parę pytań po pewnych rzeczy nie rozumiem i nie mogę rozwiązać. Więc tak założeniem był pomiar temperatury przez ds18b20 wyświetlenie je na LCD i 4 wyświetlaczach 7...
Witam Mam taki programik troszke posklejany ale wyskakuje błąd co robie nie tak . label not found [_ENDIFO ] $regfile = "m8def.dat" 'Atmega8 $crystal = 8000000 'Kwarc 8MHz Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portc.2 , Db5 = Portc.1 , Db6 = Portc.0 , Db7 = Portb.5 , E = Portc.3 , Rs = Portc.4 '*************************************.....
Usunąłem Wait 1 przy konwersji z DS18B20, działa, bez problemu ( na trzech przewodach ), tylko wyniki są opóźnione - tzn. wyświetlany wynik nie jest z aktualnego pomiaru, tylko z poprzedniego. Dodałem jeszcze dwa czujniki DS18B20. Ich zapis razem z godziną i datą na karcie jest jak najbardziej w porządku, tylko wyświetlanie trochę szwankuje - tzn. czasem...
Witam Mam układ, który mierzy dwie temperatury ( DS18B20 ), dwa napięcia ( PCF8591 ( pobiera czas ( PCF8563 ), a z powodu niedużego wyświetlacza ( 12 x 4 ) wskazania są zmieniane do 10 sekund po przepełnieniu Timer1. Układy PCF8563 i PCF8591 są podpięte z "zewnątrz" przewodami około 10 cm. Magistrala I2C ma obniżoną prędkość przez Config I2cdelay =...
Witam Mimo, że większość proponowanych tutaj rozwiązań podłączenia RFM12 do Atmegi wykorzystuje SPI programowe, ja podłączyłem tradycyjnie, przez SPI sprzętowe - mimo, że nie miałem problemów z wgrywaniem kodu do Atmegi spiętej z RFM12, to uruchomienie ich razem jest problematyczne ( każde osobno działa bez problemu ) [syntax=basic4gl] $include "Config_AVR-DOS.BAS"...
Witam Do istniejącego i działającego "urządzenie" chciałem dodać możliwość odbioru, parsowania i odesłania SMS'a zwrotnego z danymi. Cały kod: Linia1 - to wyświetla Uart_numer - Linia1 Linia2 - to wyświetla Komanda - Linia2 czyli działa OK Ale jak podepnę modem GSM ( SIM900D ) to Uart_numer jest puste, a Komanda pokazuje ( czasem ) jakieś teksty z pierwszej...
Fyszo - czujnik nagrzewa się sam z siebie wisząc w powietrzu. Przepowadziłem próbę z częstością odczytu równą 3 sekundy, oto sekwencja: 1. Normalna praca termometru, wyświetlane jest stabilne 16,0'C 2. Wchodzę do menu nastaw na 60 sekund 3. Po wyjściu zastaję 15,6'C które rośnie do 16'C czyli temperatury sprzed wejścia do menu. Jak widać wydłużenie...
Witam! W zeszłym roku był na ten temat topic. Termometr 4 punktowy DS18b20 by Duch na podstawie materiałów znalezionych w sieci 'Kontakt duszkowski(małpa)o2.pl $regfile = "m8def.DAT" 'deklaracja procesora, w tym wypadku Atmega8 $crystal = 1000000 'deklaracja cześtotlwiości pracy (wew oscylator 1MHz w zupełności wystarcza) 'Deklaracja...
Pozwolę sobie podpiąć się pod temat. Zleży mi na zwiększeniu czybkości odczytu z Dallasa więc zmieniłem warość konfiguracyja w DS18B20 na odczyt 9bitowy. Po odczycie wartość scratchpad wynosi 31, czyli jest ustawione dobrze (9bitów). Teraz nie wiem jak to poprawnie odczytać? Napsiałem 2 procedurki odczytujące i wyświetlające wynik na wyśletlaczu. Pierwsza...
MadArtSoft --> najważniejsze to tak jak widzisz - umieć sobie radzić podążając jakimiś małymi krokami. Jednym z nich było to sprawdzenie z Bascomem ;) teraz ja na twoim miejscu - zabrałbym się po pierwsze za upewnienie się czy na 1000000% masz poprawnie ustawione fusebity (chodzi o częstotliwość taktowania procka - i czy takie masz ustawienie w projekcie...
Witam serdecznie. Szukałem już chyba wszędzie, próbowałem kilkunastu innych programów i problem ciągle zostaje nie rozwiązany. Otóż piszę program do sterownika pieca. Posiada on 3 czujniki DS18B20, 3 przekaźniki i 1 triak do sterowania pompki kolektorów. Wszystko działa bez zarzutu. Problem pojawia się dopiero po włączeniu przerwania od INT0 (regulacja...
Witam W ramach dalszego eksperymentowania z AVR i Bascom popełniłem połączenie odczytu z DS18B20 z sterowaniem wyjściem uC ( przez tranzystor FET ) + dodatkową atrakcję - buzer, który sygnalizuje wł/wył tranzystora/wyjścia. Chciałem dodać możliwość zmiany temp max i min, przez proste menu. Menu zrobiłem w oparciu inny mój kod obsługujący ustawianie...
Witam Mam taki kod: $regfile = "m328pdef.dat" $crystal = 14745600 $baud = 9600 ' predkość transmisji $hwstack = 128 ' rozmiar stosu sprzętowego $swstack = 128 ' rozmiar stosu programowego $framesize = 128 ' rozmiar ramki Do Locate 3 , 1 Lcd Ss1 ; Chr(0) ; " " Locate 3 , 10 Lcd Ss2 ; Chr(0) ; " " Locate 4...
Witam Mam problem za programowaniem przycisków w EVB 4.4 atm644p . Chciałbym uzyskać przy naciśnięciu przycisku: - s1 = temperatury -s2 = napięcia -s3 = Pomiar rezystancji -s4 = Pomiar prądu Prosze o pomoc z Tym Kodem: [syntax=basic4gl]$regfile = "m644pdef.dat" '$regfile = "m32def.dat" '$regfile = "m16def.dat" $include "ds18b20_commands.bas" $crystal...
Witam wszystkich! Pewnie pomyślicie "znowu to samo", no ale zlitujcie się w Wigilię i przeczytajcie te kilka zdań :D Walczę z problemem od kilku dni. Nie potrafię skonfigurować Timera by konwertował dane z 1wire poza główną pętlą. Nie mogę sobie pozwolić na waitms, bo wtedy mam problemy z poruszaniem się w menu. Mam już działający Timer1 odliczający...
W ramach przygotowań do odczytu z DSa napisałem taki program testowy, aby sprawdzić poprawność wyświetlania. I tak w funkcji main, licznik zlicza zmienną "liczba" od 10 do -10 za każdym razem liczba przekazywana jest do funkcji "oblicz" gdzie wykonywany jest podział na poszczególne cyfry. Myślałem, że nie będę miał problemów z obliczeniem poszczególnych...
Witam Przesyłam z nadajnika kilka odczytów ( temperatury, wilgotność, ciśnienie ) przez RFM12 868MHz. Dane wyliczam [syntax=basic4gl] Sub Pomiar_ds3: Ds_i = 0 Ds_adres = 88 ' adres startowy komorki w EEPROM ukladu ATMEGA For Id_ds = 1 To 8 ' petla osiem powtorzen Readeeprom Dsid(id_ds) , Ds_adres ' odczyt ID ukladu DS18B20 Incr Ds_adres ' zwiekszenie...
odczytuję temperaturę z dwóch ds18B20, zapisuję do oddzielnych zmiennych i wybieram dwoma klawiszami która z nich ma byc wyświetlona i tu pojawia sie problem: temperatury zostaja zmienione na lcd ale tylko raz, znaczy sie gdy temperatura zmieni się to nie ma zmian na wyświetlaczu. temperatura na lcd zmienia sie "live" tylko wtedy gdy trzymam przycisk...
Tworzę sterownik który będzie operował na 4szt DS18b20 Program jest pisany w bascom Czy w bascomie można zadeklarować tablicę dwu wymiarową Tablica (4)(8) Dla czego przy odczycie danych muszę ponownie resetować magistralę i podawać numer seryjny układu. Podobno po wysłaniu za pierwszym razem numeru układu inne milczą a wskazany nadsłuchuję 1wreset 1wwrite...
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,...
Próbowałem. Dodawałem odczyt do programu głównego za getrc5, a wyświetlanie temp w Sub Wys_czas na końcu za Lowerline. Efektem tego było wyświetlanie d dolnej linii na wyświetlaczu: Wynik: 0.0 C Us. Czyli coś namieszałem, bo powinno być najpierw w dolnej linii: Ustaw godzinę, po ustawieniu dopiero temperatura.
...Nie wyświetla mi dziesiątych liczb. Wyświetlacz sprawny na 100% No przecież sam napisałeś w kodzie warunek , żeby nie wyświetlał dziesiątek jeśli nie są równe 0 , a dokładnie rzecz ujmując , to napisałeś , żeby wyświetlał dziesiątki , kiedy ich wartość jest równa ZERO :!: Wyswietlanie: Gosub Oblicz For A = 0 To 125 If Dziesiatki = 0 Then 'Oto...
Po przeczytaniu wielu postów napisałem program który ma wyświetlać na wyświetlaczu LCD Napięcie , prąd oraz temp. Chciałem to wykorzystać do zasilacza, którego właśnie buduje. jednak po zaprogramowaniu procka wyświetlacz mi się nie inicjuje (zaświecają się kwadraty w pierwszej lini). Czy jest jakiś błąd w moim programie ? Proszę o sprawdzenie. $regfile...
Mam z tym taki mały problemik :) Otóż wcześniej stosowałem przeliczanie z dodanym T = makebcd(t) po T = T /10 i temperatura była zawyżana ale wyświetlana dobrze na wyświetlaczach. Gdy osunąłem ten wpis temperatura jest rzeczywista, ale powyżej 20st tylko liczba po przecinku jest wyświetlana ok, natomiast dziesiątki zostają 1 a jedności wariują. Coś...
Witam. Na wstępie przepraszam za mało czytelną nazwę w temacie ale nie wiedziałem jak inaczej opisać mój problem w tak małej ilości znaków. Temat powinien brzmieć: $regfile = "m8def.dat" $crystal = 8000000 $baud = 9600 '-- Wejscia przycisków Config Portb.4 = Input Config Portb.5 = Input ' -- podciągnięcie Set Portb.4 Set Portb.5 ' -- porty...
Ok, a teraz jeszcze jedna sprawa: Zmodyfikowałem trochę program by wyświetlał na multipleksowanych wyświetlaczach LED 4x7 odebraną komendę. Jak zwykle trochę chodzi, ale nie do końca - założenie jest takie: odbiera komendę z rc5 i wyświetla ją na led, efekt jaki uzyskuję: odbiera komendę, wyświetla na ułamek sekundy, potem wyświetla 95, czasem się zdarzy,...
Witam. Drodzy koledzy, od pewnego czasu borykam się z dość banalnym problemem, mianowicie potrzebuje zrobić termometr z wykorzystaniem czujnika DS18B20, i pięcioma wyświetlaczami LED (3cyfry i znak"°" oraz "C"). Układ zaprojektowałem, schemat w załączniku, płytkę wykonałem, niby wszystko OK, lecz pojawia się poważny problem- Program. Wiele razy robiłem...
Cześć! Na wyświetlaczu zamiast poprawnej (lub prawie poprawnej) temperatury wyświetla mi się temperatura -0.1 stopnia. Program napisany w bascomie funkcjonuje poprawnie (temperatura nie dokońca się zgadza bo na rtęciowym termometrze mam 23 stopnie a DS pokazuje mi 25). Gdzie popełniłem błąd? #define WE 2 #define PORT_1wire PINB #define SET_1wire DDRB=~_BV(WE)...
witam mój problem jest tego typu, że ma termometr, który wykorzystuje właśnie18d20 i wyświetla temperaturę na lcd tylko że nie liniowo;/ co jest nie tak podłączony jest przez rezystor podciągający a o to jak wygląda kod programu $regfile = "m8def.dat" ' zdeklarowane dla Atmegi8 $crystal = 8000000 ' Taktowanie wewnetrzne 1mHz Config 1wire =...
Takiego tematu nie znalazłem więc zakładam nowy. Otóż mam problem tego typu że: Posiadam Atmega 2560 ,podłączony do niej odbiornik RC5 (TSOP) , DS18B20 (1Wire) , a także kartę pamięci SD. W fusebitach przełączyłem się na razie na wewnętrzny oscylator i wyłączyłem Fusebit 7(clock divide by 8) . Jeśli mam ustawiony $crystal = 1000000 to transmisja z karty...
Nie mam pojęcia co zmienic w niżej przedstawionym kodzie aby temperatura była wyświetlana prawidłowo Zastosowany czujnik to DS18B20 a kod napisany jest dla DS1820 $regfile = "m16def.dat" $crystal = 16000000 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portb.2 , Db5 = Portb.3 , Db6 = Portb.4 , Db7 = Portb.5 , E = Portb.1 , Rs = Portb.0 Config...