Witam. Jako że nie chcę korzystać z gotowców, postanowiłem spróbować napisać obsługę dla transmisji 1Wire. Naskrobałem coś takiego: Funkcje obsługi "1wire.h": #include <moje/moje.h> //Załącz potrzebne biblioteki #define DDR1W DDRD //Rejestry specjalne portu wykorzystywanego do komunikacji 1wire #define PORT1W PORTD //... #define PIN1W PIND //......
Może nic konkretnego tu nie poradzę (bo nie znam na tyle "C") ale napiszę, że pomysł jest trochę zakręcony. Jeśli taki musi być to proszę nie czytać reszty. Jeśli nie to podłączyłbym czujnik temperatury do ATMEGA8 po 1Wire, a MEGĘ do PC poprzez RS232. Będzie można bez problemu czytać temperaturę jak i dane z uC. Podłączenie MEGI po 1Wire będzie wymagało...
Witam Temat jest taki. Posiadam magistralę 1wire na której są zamontowane termometry DS18B20 oraz przełączniki DS2407. Pracuje na tym sterowanie ogrzewaniem w mieszkaniu. Do tej pory sterowałem nią układem na bazie Atmega168 i działało to prawidłowo. Zbudowałem następny sterownik z Atmega32 na pokładzie i zaczeły się schody. Odczyt adresów układów prawidłowa....
Witam Mam prośbę, napisałem sobie bibliotekę do obsługi 1wire i mam problem w procedurze wyszukiwania do 3 urządzeń wykrywa mi poprawnie, a powyżej wykrywa mi więcej niż powinien #ifndef _AVR_ONEWIRE_ #define _AVR_ONEWIRE_ #include <avr/interrupt.h> #define ONEWIRE_SEARCH_ROM 0xF0 #define ONEWIRE_NO_DEVICES 0xFF #define ONEWIRE_DATA_ERROR 0xFE...
Buduję termometr na ds18b20. Na AT90S2313 działalo OK ale program zajmował całą pamięc (brak miejsca na zegar), więc kupiłem ATMEGA8L i tu problem Lcd działa OK ale nie mogę odczytać temp z ds18b20 pomimo skonfigurowania 1wire na odpowiedni port. Podobnie z i2c. Czy miał może ktos taki problem i jak go rozwiązał? Dziekuję za pomoc.
Witam , wymyśliłem sobie urządzonko w teorii ale w praktyce mam taki problem: podłączam do ATMEGA 8 po 1wire Ds 1820 lub 1990 i nie mam nawet zmiennej err=0 tylko ciągle 1 . Jest rezystor 3.3kom od + do DQ (uruchomieniówka od BTC) , schemat podłączenia jest tak banalny że nie wiem co może być nie tak . $regfile = "m8def.dat" $crystal = 8000000 Config...
$crystal = 8000000 ATMega16
Witam Pisze własną bibliotekę do obsługi pastylek 1990A. Chodzi mi dokładnie o sprawdzenie kodu pastylki, z kodem zapisanym w tablicy w programie. Procedura odbiera 8 bajtów i każdy bajt wyświetlam na ekranie LCD. Jednak dostaje różne krzaczki... Jak przetworzyć daną, aby na LCD wyświetlić dokładną wartość bajtu a nie jakieś krzaki :) Pozdr.
Witam Mam takie pytanko o konfigurację pinu do obsługi magistrali 1wire. Czy w obsłudze protokołu 1wire trzeba ciągle zmieniać konfigurację pinu jako wejściowy/wyjściowy w rejestrze DDR czy istnieje inny sposób, żeby uprościć sprawę i nie przekonfigurowywać co chwilę pinu ? O tyle to dla mnie istotne, że wszystkie procedury piszę samodzielnie w asm...
Witam kolegów, Znając życie czegoś nie doczytałem, ale po kilku godzinach pytania Wielkiego Googla i szukania tutaj na forum nie znalazłem konkretnej odpowiedzi. Zaznaczam, że dopiero zaczynam się bawić Bascom'em. Problem polega na braku transmisji z DS18b20 przez obsługę 1wire zaimplementowaną do Bascom. Pracuje na wewnętrznym oscylatorze. Jeżeli ustawie...
Czy jest możliwe żeby Avr obsłużył dwie magistrale 1wire ? Chce zrobić prosty kontroler dostępu ale bardzo ważne jest żebym wiedział w którym miejscu pojawia się karta , chodzi o to że jak ktoś już był w pomieszczeniu i nie przyłożył karty wychodząc nie mógł wejść .Proszę o podpowiedź .
Witam, chciałbym wszystkich prosić o pomoc przy obsłudze iButton na ATmega32 w C. W tej chwili jestem w miejscu (chyba ze sie myle to poprawcie mnie :D) wykrycia pastylki na czytniku. Na ta chwile czytnik zapala diode No1, jesli czytnik wykryje pastylke, zapala na chwile diode No2 (gasi No1), potem wraca do poprzedniego stanu. [syntax=c] #include <avr/io.h>...
Witam Wszystkich! Staram się podłączyć uC (ATMEGA) do magistrali 1Wire w charakterze SLAVE. Mój SLAVE prawidłowo czyta z magistrali (rozpoznaje RESET PULSE oraz komendę SEARCH ROM wystawioną przez HOSTa), lecz niestety nie potrafi nadawać :( To znaczy, gdy mój SLAVE wysyła do mastera bity 1 i 0, master odczytuje 1 i 1. Obniżanie stanu linii do poziomu...
Witam Porwałem się na robienie własnego sterownika co i stanąłem w martwym punkcie. Mianowicie sterownik składa się z 2 płytek na których są Atmegi 16 taktowane zewnętrznym kwarcem 11.059200 + kwarc zegarkowy jeden układ odpowiedzialny za odczyt temperatur regulację fazową wentylatora oraz sterowanie elektrozaworami a drugi obsługa wyświetlacza graficznego...
Zestaw AVREVB1 umożliwia szybkie zapoznanie się z bardzo popularną rodziną mikrokontrolerów AVR w obudowach 40-to wyprowadzeniowych DIP (układy ATMEGA16, ATMEGA32, ATMEGA644). Zawiera wszystkie najpotrzebniejsze i często wykorzystywane układy peryferyjne. Dzięki niemu zarówno początkujący jak i zaawansowani twórcy systemów opartych o mikrokontrolery...
1WIRECOUNT Przeznaczenie: Zwraca liczbę urządzeń podłączonych do magistrali 1Wire. Składnia: [syntax=basic4gl]zmienna = 1WIRECOUNT( ) zmienna = 1WIRECOUNT( port , pin )[/syntax] A także: [syntax=basic4gl]1wverify Reg_no(1) Print Err 'Err=1 gdy nie ma takiego numeru[/syntax] Zwróć uwagę na tajemniczą zmienną Err, która jest zaszyta w programie.
Hmm... Spróbuj regularnie migać LED, jednocześnie komunikując się z PC, obsługując pomiar temperatury za pomocą 1wire (DS18B20) i wyświetlać ją na LCD, używając waitXX... ;) Timer0 jak nic do zastosowania... Tymczasem małe co nieco w załączniku (miganie LED z użyciem timera), zarówno dla ATmega8, jak i na ATmega8515. Ponieważ ATmega8 nie posiada przerwania...
Witam w bascomie ciężko. Jak chcesz dokładnie, to zewnętrzny kwarc i kod w asm. No nie wytrzymam. Żeby zrobić przebieg 1 Hz to już trzeba asm zaprzęgnąć. Już się boje co trzeba żeby uzyskać przebieg 10 kHz, nie myśle nawet o RS czy 1Wire.
Korzystam z biblioteki pana Mirosława Kardasia do obsługi 1wire. Jednak już na samym początku są problemy, a mianowicie w ogóle nie wykrywa mi urządzeń na tej magistrali.. Problemy z czym? z bibliotekami? z zestawem? z czujnikiem? czy z czym - skoro nie wykrywa? .... czy może ze zrozumieniem jak to działa? Może więc warto najpierw spokojnie dopytać...
Zestaw AVREVB1 umożliwia szybkie zapoznanie się z bardzo popularną rodziną mikrokontrolerów AVR w obudowach 40-to wyprowadzeniowych DIP (układy ATMEGA16, ATMEGA32, ATMEGA644). Zawiera wszystkie najpotrzebniejsze i często wykorzystywane układy peryferyjne. Dzięki niemu zarówno początkujący jak i zaawansowani twórcy systemów opartych o mikrokontrolery...
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...
Mam sterownik do kolektora słonecznego zrobiony na atmega8 i dwóch termometrach ds18b20. Do tego mam komputer zbierający dane jeszcze z innych czujników podłączonych do innej magistrali 1wire. Teraz chciałbym aby komp zbierał też dane z czujników podłączonych do ATMEGA8. Podłączenie obu magistrali 1wire i podłączenie dwóch masterów do jednej magistrali...
Zestaw AVREVB1 umożliwia szybkie zapoznanie się z bardzo popularną rodziną mikrokontrolerów AVR w obudowach 40-to wyprowadzeniowych DIP (układy ATMEGA16, ATMEGA32, ATMEGA644). Zawiera wszystkie najpotrzebniejsze i często wykorzystywane układy peryferyjne. Dzięki niemu zarówno początkujący jak i zaawansowani twórcy systemów opartych o mikrokontrolery...
Zestaw AVREVB1 umożliwia szybkie zapoznanie się z bardzo popularną rodziną mikrokontrolerów AVR w obudowach 40-to wyprowadzeniowych DIP (układy ATMEGA16, ATMEGA32, ATMEGA644). Zawiera wszystkie najpotrzebniejsze i często wykorzystywane układy peryferyjne. Dzięki niemu zarówno początkujący jak i zaawansowani twórcy systemów opartych o mikrokontrolery...
Termometr mikromocowy LCD ATMEGA16 Tym razem głównym celem projektu było sprawdzenie możliwości wykonania mikromocowego systemu pomiaru temperatury w oparciu o możliwie standardowe elementy, mówiąc w skrócie byłem ciekawy czy zwykły avr może być konkurencją dla układów msp430, które to podobno właśnie do takich zastosowań są preferowane. Zanim jednak...
Zestaw AVREVB1 umożliwia szybkie zapoznanie się z bardzo popularną rodziną mikrokontrolerów AVR w obudowach 40-to wyprowadzeniowych DIP (układy ATMEGA16, ATMEGA32, ATMEGA644). Zawiera wszystkie najpotrzebniejsze i często wykorzystywane układy peryferyjne. Dzięki niemu zarówno początkujący jak i zaawansowani twórcy systemów opartych o mikrokontrolery...
Zestaw AVREVB1 umożliwia szybkie zapoznanie się z bardzo popularną rodziną mikrokontrolerów AVR w obudowach 40-to wyprowadzeniowych DIP (układy ATMEGA16, ATMEGA32, ATMEGA644). Zawiera wszystkie najpotrzebniejsze i często wykorzystywane układy peryferyjne. Dzięki niemu zarówno początkujący jak i zaawansowani twórcy systemów opartych o mikrokontrolery...
Witam. Napisałem program do obsługi woltomierza i pomiaru napięcia na atmega8. Cały układ będzie zamontowany w samochodzie. Po zaprogramowaniu wszystko prawie działa tylko przy samym włączaniu na wyświetlaczu pojawia się że temperatura wynosi 85 stopni a dopiero po ok 4s (drugim odczycie temperatury) podaje właściwą temperaturę. Później wszystko działa...
Mam dwa układ na ATmega oba układy mają podłączone MAXA485. Ale poco ten konwerter,przecież procesor wysyła i odbiera sygnały TTL... Pobaw sie jeszcze z tymi prędkościami transmisji. czy jest jakaś możliwość wysyłania i odbierania danych w dokładniejszy sposób niż jest toprzedstawione w przykładach. input, print, input, waitkey Hmm,masz jeszcze polecenie...
Właśnie tak jak wcześniej napisałem z elektroniką w praktyce dopiero zaczynam. Więc reguł , które właśnie wymieniłeś wcześniej nie znałem. A schemat starałem się zrobić czytelnie tylko ,że nie umiem jeszcze dobrze operować miejscem które daje eagle. A co do postu powyżej to pin 9 ze złącza lcd to masa tak samo jak 6,7,8,10 tylko ale jest to podłączone...
y0yster --> ja też jak zaczynałem pisać w C to na początku bałem się, że przy rozpoczęciu programowania - po wrzuceniu wstępnej obsługi jakiegoś LCD albo u mnie VFD, do tego 1wire, I2C itp - program szybko skoczył o kilka kb powiedzmy. Ale później robudowywanie samych pętli, dodatkowych funkcji itp - to śmiesznie mało miejsca zajmuje. Dlatego zwykle...
Witam. Od jakiegoś czasu zajmuję się mikrokontrolerami i posiadam już pewne doświadczenie w tym kierunku. Ostatnio miałem jednak sporą przerwę... aż do teraz - trafił mi się termometr do zmontowania. Zbudowałem więc prosty układ: Atmega88+DS1820 jak na foto poniżej: (Czarne przewody to plus i minus zasilania podłączone odpowiednio do wejść zasilających...
Witam. Mam z książki Marcina Wiązani listing do zegarka na atmega8. Chciałbym włączyc jeszcze do tego projektu termometr ( możne być DS18B20 lub LM35). Jak to technicznie wykonać? listing zegara 'Program zegara wykorzystującego przerwania od Timer1 'Przerwanie przepełnienia Timer1 jest generowane co 1 s '8 MHz/256/31250 = 1 s 'Przycisk S1 ustawia minuty,...
OlekM klawiatura jest czyszczona za każdym razem gdy jakaż komenda z pilota leci do procka co pokazuje część kodu : If Address = 0 And Command = 16 Then Cls Incr Strona End If If Address = 0 And Command = 17 Then Cls Decr Strona End If If Address = 0 And Command = 33 Then Cls Downigora = 1 End If If Address = 0 And Command = 32 Then Cls Downigora =...
Witam napisałm program do obsługi czterech układów D18B20 ale jego rozdzielczość w pomiarach to 1 stopień a chciałbym żeby było 0,1 ma ktoś jakić pomysł ??? Z góry dzięki wklejam kod: $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...
Przedstawiam prosty projekt zegarka (jakich wiele na forum), który nie zawiera układu czasowego PCF... tylko sam sobie mierzy czas. Nie wykorzystuje też powszechnego DS1820 ponieważ : 1. Dallas jest jednak droższy od LM335, 2. jestem leniwy i nie chciało mi się bawić 1wire w języku C. Na Bascomie jest to jednak dużo łatwiejsze zadanie. 3. kupiłem go...
Witam Chciałbym połączyć dwie Atmegi przez SPI. Atmega 328 jest na głównej płytce, czyli MASTER. Obsługuje termometr 1WIRE, LCD oraz zapis na SD. Zapis na SD jest przez HARD SPI. Do tego chciałem podłączyć drugą płytkę z Atmega8, jako SLAVE. Chciałem je połączyć przez Sprzętowe SPI, tylko, czy fakt, że na MASTER jest już karta SD nie utrudni/uniemożliwi...
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! Zmontowałem zestaw avt 5160 oparty na atmega8, jest to sterownik do klimatyzacji, umożliwiający uzyskanie klimatyzacji automatycznej z manualnej. Po złożeniu układ uruchomił się bez problemu, ale po wstępnych testach sterownika należało czujnik temperatury DS18S20 (czujnik temp. wnętrza) wylutować z płytki i przenieść bliżej parownika. Ogólnie...
Do czego to doszło ;p Może od nowa, wersja z i2c chce dopiero teraz wprowadzić jak na razie jest po Bożemu znaczy sie wyswietlacz ze sterownikiem znajduje się na 2pietru kamienicy układ wykonawczy i wyłącznik (countera) znajduje się w piwnicy. Z i2c to dopiero mam zamiar zrobić bo zależy mi na dwóch wyswietlaczach jednym w piwnicy drugim na 2pietrze....
Witam mam pewien problem . Jakiś czas temu szukałem gotowego schematu i wsadu procesora aby zrobić termometr 4 kanałowy na wyświetlaczy 16x2. Zrobiłem płytkę, zaprogramowałem w bascomie mikrokontroler gdy podłączyłem wszystko, na wyświetlaczu w 1 linijce mam tylko kwadraty i tak cały czas, nie znam się na programowaniu ale staram się jakoś tego uczyć...
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ć...
Może użyj dwóch modułów pro mini... Ja używałem spi.h i sd.h zamiast tinyfat.h i wire.h i zmieściłem się z RTC, 1wire i zewnętrznym EEPROMem I2C.
Witam, Mój problem jest dziwny. Mam przetestowany układ na płytce stykowej, program też działał bez zarzutów. Wykonałem PCB złożyłem, ATmega normalnie została zaprogramowana i reaguje. Zczytałem pomiary temperatury przez UART- też działa. Obecnie sterowanie jest dwustanowe, docelowo będzie PWM i PID. A teraz moje 2 problemy: 1) Sterowanie MOSFETEM....
Witam Mam Atmega32A + PCF8563 + PCF8574 + RFM12 + DS18B20 +DHT11. Port danych LCD to Port.A, ControlPort to Port.C. I2C standardowo na Portc.0 Portc.1. Niestety jest problem z obsługą I2C, tzn. zegar PCF8563 nie działa w ogóle ( na LCD puste pole ) , a klawiatura na PCF8574 - tylko jeden klawisz i to nie ten, który jest przypisany w kodzie ( działa...
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ć...
Witam, Chyba coś nabroiłem... Zaczęło się od tego próbowałem zaprogramować Fusebity przy pomocy PonyProg 2000. Efekt jest taki, że teraz Program w ogóle "nie widzi" procka (PonyProg2000 i Bascom). A sam procesor też zamilkł i nie daje żadnych oznak życia. Programator jest zgodny z SKT200/SKT300. Załączony obrazek (PonyProg2000) przedstawia sytuację...
Witam, Nabyłem moduł MMega01 firmy Problem polega na braku komunikacji z urządzeniami 1wire... Probowałem podłączyć termometr DS18b20(nie jeden - myślałem że ten co mam jest uszkodzony) i nic... taktowanie procka to ok 16MHz. Jako rezystor podciągający na magistrali 1wire daje 2,2k np w ATmega32 zawsze wystarczało. Program który sprawdzam to: Config...
Witam, poniżej zamieszczam kod z Bascoma mojego sterownika BMS, w tej chwili kontroluje temperaturę, czas, Rs232, LCD 2x16. Obsługa z klawiatury lub pilota RC5, w obecnej chwili rozwiajm go o dostęp przez internet. zajmuje ok 8kb pamięci więc w A162 będziesz miał jeszcze drugie tyle pamięci. Ja kożystam z A32 Pozdrawiam. PS. daj znać jak zakończysz...
Witam mam problem. Mam program do pomiaru temp 2xDS18B20 podłączone do PB0 (1wire). Po uruchomieniu uK z prawej strony LCD wchodzi pewnien napis potem znika i wyświetla się temp. Na 8535 działa wszystko Ok napis ladnie i płynnie wjeżdża a na 32L wchodzi ale wooolno co 4 sekundy jedna literka a pomiar temperatury w ogóle nie działa. Program jest napisany...
Przy użyciu polecenia if then. oto cały kod (jeszcze nie kompletny): '----KONFIGORACJA WYSWIETLACZA----.' Config Lcdpin = Pin , Db4 = Porta.5 , Db5 = Porta.4 , Db6 = Porta.3 , Db7 = Porta.2 , E = Porta.6 , Rs = Porta.7 Config Lcd = 20 * 4 '----KONFIGORACJA MAGISTRALI I2C I 1WIRE----.' Config 1wire = Portc.0 Config Sda = Portd.6 Config Scl = Portd.7...
Witam jako że nie jestem minimalistą i swoje projekty rozbudowuje do maximum ich możliwości tak jest i tym razem ,przedstawiam wam projekt UPS ,a budowe którego wpadłem nie dawno a schemat jest efektem poszukiwań rozwiązań układowych w projekcie ,całością bedzie zarzadzać atmega32 + soft w C ,jestem ciekaw waszych spostrzeżeń na ten temat ,i może ktoś...
A ja z ciekawości się spytam, dlaczego 1wire by się nie nadawał? Trzeba by tylko dopisać adresowanie urządzeń, jak ma to miejsce przy prawdziwych urządzeniach 1wire. Po prostu zaemulować niezdbędne rzeczy i mamy w ten sposób super metodę na podłączenie teoretycznie nieskończonej ilośc urządzeń.
Witam,potrzebuję pomocy w dokończeniu programu (jeśli istnieje możliwość) schemat znalazłem na elektrodzie ,kod też który przerobiłem pod siebie (docelowo ma być to zamontowane w motocyklu) ma za zadanie dokonywać pomiary temp układu chłodzenia i oleju oraz pomiaru napięcia akumulatora i tu mam problem jak to zrobić żeby w pozycji nr 3 wyświetlało mi...
Może ci się przyda: program do obracania 3d figur geometrycznych i wszystkiego co sobie zdefiniujesz. Program bez optymalizacji, pisany na kolanie, niektóre wstawki rozciągane z innych for. Taka sztuka dla sztuki. Napisany na atmega32 ale chyba bez problemu poradzisz sobie ze zmianą na atmega8. $lib "LCD-epson.LBX " '$lib "LCD-pcf8833.LBX...
Zaczynam pisać program do Komputera motocyklowego opisywanego w wątku: '--------------------KONFIGURACJA-------... $regfile = "m16def.dat" 'informuje kompilator o pliku $crystal = 8000000 'informuje kompilator o częstotliwości oscylatora Config 1wire = Porta.3 'konfiguracja portu 1wire Config Porta.4 =...
Masz rację na forum jest to tylko cześć okrojonego programu. Wklejam składowo pełny program, wyciąłem tylko poszczególne obliczenia. Może teraz będzie coś więcej wiadomo co może być przyczyną. [syntax=vb]'--------------------KONFIGUR... $regfile = "m16def.dat" 'informuje kompilator o pliku $crystal = 8000000...
Witaj tmf! Miałeś rację :D Przyczyną "wariowania" czujnika przy wysokich temperaturach były złe timingi - zarówno slotów "write" i "read". Do policzenia dokładnych czasów wykonania procedur wykorzystałem wbudowany w AVR Studio 5 symulator. Okazało się, że większość czasów była niemal o połowę za krótka. Na przyszłość: jeśli ktoś uważa przebiegi czasowe...
Witam Tworze sobie prosty termometr na wyświetlaczu 7 segmentowym. Napisałem kod w bascomie i wrzuciłem na płytę testowa z atmega32 i śmiga jak trzeba. Kolejnym krokiem było wrzucenie tego na na atmege8 (zmieniłem m32def.dat na m8def.dat i taktowanie na 1MHz ) atmega świeża , fusebity nie zmieniane. No i jak zwykle u mnie to bywa, rzecz nie działa....
Witam, od jakiegoś czasu próbuję stworzyć sobie zegarek z termometrem + napięcie akumulatora do auta. Wszystkie programy osobno działają bez zarzutu. Problem zaczął się z chęcią wprowadzenia przełączalnych ekranów i wprowadzeniu przerwań. Doczytałem że przerwania skutecznie psują komunikację z DS'ami przez co temperatura się nie odczytuje. Ogólnie to...
Odkopię stary temat ale czy ktoś ma może ten artykuł z EP? Link z postu wyżej nie działa (zmiana strony) a z kolei w numerze luty 2009 (sugerując się tym co w linku) nic nie znalazłem o slave i 1Wire. Fakt że w EP jest artykuł wyświetlacz LED na 1Wire (slave) ale przykłady dotyczą Bascomu a ja bym chętnie zobaczył w C jak to jest zrobione. Może ktoś...
Witam ponownie posklejałem taki kod ale cały czas wyświetla temperaturę 0°C. Mógłby ktoś mi pomóc napisać lub naprowadzić na błąd który popełniam od razu mówię że nie miałem nigdy nic wspólnego z mikrokontrolerami. [syntax=basic4gl]$regfile = "m8def.DAT" 'deklaracja procesora, w tym wypadku Atmega8 $crystal = 1000000 'deklaracja cześtotlwiości pracy...
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 wszystkich Zacząłem tworzyć mój pierwszy tak rozbudowany program - zegarek na pcf8583, atmega 8 z wewnętrznym taktowaniem zegara 1MHz. Problem w tym, iż nie działa menu, które próbuję uruchomić. Bez menu mogę zmieniać godziny i minuty za pomocą 2 przycisków. Jak dołożę menu moje, to nie działa zmienianie czasu. Wygląda to tak, że wchodzę w podprogram...
Witam, pracuje nad pierwszym urządzeniem opartym na AVR Atmega32. Chodzi mi o zmienną Sekundy, którą chciałbym inkrementować w warunku While ... Wend zaraz na początku głównej pętli Do ... Loop. Zmienna Czas zwiększana jest przez Timer0 po przepełnieniu (odmierzanie stałych odcinków czasu) i kiedy osiągnie 30 i więcej ma się wykonać to co po warunku...
Witam. Posiadam czujkę dymu i ciepła Hekatron MTD 533X. Czujka komunikuje się z centralą prawdopodobnie za pomocą protokołu 1wire ponieważ do czujki podlaczone są tylko 2 przewody- masa i zasilanie(+)przewód spełniający również funkcję komunikacji- transmisji danych. Każda czujka posuada również własny niepowtarzaly numer. Czyjkę chciałbym wysterować(odczytać...
Przyczyną problemów była funkcja odbierania danych 1wire. Zabrakło wyłączenia przerwań. Spowodowało to problem z działaniem softwarowego PWM ale to jakoś obejdę :D Pozostaje jeszcze problem piszczenia cewki i tego chyba nie zwalczę. Może uda mi się dobrać jakiś klosz. Trochę powinien stłumić piszczenie.
Witam wszystkich, robię prosty układzik na uC atmega. Zadaniem go będzie odczyt temp z czujnika ds18b20 i ustawianie zewnętrznego przetwornika dac po spi. Wszystko praktycznie napisałem, bo części programu były wykorzystywane w innych układach, które pracują, z spi problemu nie ma, z odczytem ds też. Ale chodzi o to, żeby cały układ pobierał jak najmniej...
Witaj, Jak się domyślam problem z komunikacją 1Wire. Sprawdź czy w stosunku do częstotliwości z jaką taktowany jest Twój procesor dobrze są dobrane parametry czasowe transmisji. W 1Wire jest zdefiniowanych kilka okienek czasowych - czy są dobrze odliczane? Gdy uruchamiasz transmisję wyłącz przerwania. Pzdr. asd
A ATMega256x, czy nawet 128x ma 86 IO. Więc w czym problem?
Witam, Dokonuję pomiaru dwóch temperatur przy użyciu DS18B20. Dane przesyłam po RS232 (MAX232) - docelowo chciałbym wysyłać cztery parametry na komputer. Podczas próby konwersji ciągu string z RS232 na zmienną typu "integer" lub "float", otrzymuję komunikat: EConvertError: is not valid integer value. Sprawa wygląda tak: próbowałem już konwersji zarówno...
Witam. Posiadam inkubator i sterownik do niego. Wszystko jest okej gdy program działa na wait'ach. Chcę przepisać go do przerwania na timerze ale program mi się zawiesza po wgraniu. Po uruchomieniu nie zawsze pokaże temperaturę, po wyjściu z "menu" również czysty ekran zamiast pomiarów. Cała konstrukcja składa się z: *czterech przycisków Sw1-Sw4 *dwóch...
Sprawa pierwsza czyli instrukcje konfiguracyjne w kodzie. Chodzi o to, że jeśli nie wstawisz takiej instrukcji a użyjesz w kodzie chociażby jednej instrukcji PRINT, INPUT albo innej związanej z UART to cudów nie ma, trzeba skonfigurować UART i kompilator musi przeliczyć prędkość dla UBRR i ustawić bity konfiguracyjne. Dane musi skądś wziąć więc weźmie...
Help :cry: Wiem że temat jest tu czesto poruszany ale zrobiłem Termometr na ds1820, procesorze ATmega8, i wyświetlaczu LCD. Za chiny nie moge uruchomić szyny 1wire. 1.Próbowałem już chyba wszystkiego, ale chciałbym sie dowiedzieć czy szyna ta ma jakieś wymagania co do częstotliwości oscylatora? 2. Może ktoś ma opracowany i sprawdzony podobny projekt?
Wstawiłeś tu cały program, więc nie miej pretensji, że go nie analizowałem. Podam jedynie wszystkim znany link do działających (przynajmniej u mnie) funkcji obsługi 1WIRE. Próby, które wykonałem na tym programie dotyczące głównie zmiany opóźnień powodowały, że czujnik przestawał reagować - stąd wiem, że czasy są istotne. Dla pamięci napiszę jeszcze...
hehe polutować to każdy umi a pisać to nima komu :D a tak na serio to troche duzy przeskok kolega zrobił z programu co żsieci diodki do programu z LCD i magistralą 1wire. proponuje jeść mniejszymi kęskami bo się nam kolega zadusi. na poczatek LCD bo to nie znowu takie trudne. i troche własnego wkładu bo nikt ci całego programu nie napisze. pozdrawiam
Tak jak napisałeś powyżej , to nie zadziała , bo Config 1wire jest NOT REUSABLE :( . Zajrzyj do manuala i sprawdź , jak użyć kilku magistral 1wire. Podpowiedź: 1wreset PORT,PIN Piotrek Ale tak zrobiłem i działa idealnie :D Może masz starszego BASCOMA AVR. Ten mój jest 1.11.8.2. Pozdrawiam.
Witam wszystkich,dzisiaj mam nastepujacy problem mam program który mierzy temperature z 4 ds1820 i bascomie 51 nie mam z nim problemu kompiluje sie ok i działa przerobiłem go na bascoma avr i chciałem wgrac do atmegi 8535 i nici wywala mi błędy których nie rozumiem co jest nie tak?? Oto program który chce wgrac do atmegi: $regfile = "m8535.dat" $crystal...
Za bardzo nie wiem już co może być powodem takiego zachowania mikrokontrolera, więc jestem zmuszony prosić Was o pomoc :) Zacznę może od tego, że pracuję na zestawie ZL3AVR i Atmedze16. Chciałem podpiąć do uC termometr DS18B20, ale uC go nie widzi. Napisałem sobie program, do zliczania urządzeń na 1W ale pokazuje mi ciągle 0, oto jego kod: '---------------------------------------...
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 serdecznie. Mam taki oto problem. Zbudowałem sterownik do centralnego ogrzewania sterujący elektrozaworem i pompą w zależności od temperatury w bojlerze i na piecu. Problem jest taki - po chwili pracy (nieregularnie) resetuje się. Ktoś ma jakiś pomysł? Napięcie zasilające jest dobre. Program w bascomie: '---------------------------------------...
Tutaj masz wszystko... 'Program sterowania dwoma układami DS1820 dołączonymi 'do tej samej magistrali 1-Wire $regfile = "m8def.dat" 'informuje kompilator o pliku 'dyrektyw mikrokontrolera $crystal = 8000000 'informuje kompilator 'o częstotliwości oscylatora 'taktującego mikrokontroler Config Pinb.1 = Input 'linia PB1 jako wejściowa Config...
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. Mam taki problem ze po probie skompilowania programu przepisanego z ksiazki marcina wiazani. wyskakuja mi bledy ktore wskazuja na ostatnia linie kodu: Error : 31 Line : 185 Invalid datatype [ 0] , in File : C:\PROGRAM FILES\MCS ELECTRONICS\BASCOM-AVR\term.BAS Error : 93 Line : 185 Variable not dimensioned [...
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...
Witam. Maiłem zbudowany zegar z pomiarem temperatury na atmega 16, lcd standard, temp na ds18b2, czas na wewnętrznym oscylatorze 1mhz. Ze względu na dużą niestabilnośc wewnętrznego generatora dołożyłem zewnętrzny kwarc zegarkowy oraz zmieniłem program, który używał timera1 na timer2. I tu pojawiły sie problemy z 1wire. Przypuszczam, że procedury Bascom...
Tak to wygląda. Układ wyjścia JP5 jest zgodny z kolejnością wyjść na LCD + dwa dodatkowe do zasilenia podświetlenia - razem 16 pin A to początek kodu 'Program sterowania dwoma układami DS1820 dołączonymi 'do tej samej magistrali 1-Wire $regfile = "m8def.dat" 'informuje kompilator o pliku 'dyrektyw mikrokontrolera $crystal = 16000000 'informuje...
Ty się zastanów co chcesz uzyskać - czy testowy program w celach uczenia się czy też może atomowy wzorzec czasu? ... bo jeśli to drugie to wybrałeś najgorszą z wielu możliwych metod aby zrobić zegarek na procku AVR i to jeszcze na takim jak ATmega32. .... jak chcesz zrobić dokładny zegarek to : 1. Uzyj specyficznych do tego poleceń Bascoma - same załatwią...
Witam. Przepraszam ze odświeżam stary temat. Szukałem trochę w necie i nie znalazłem takiej przejściówki na atmega8. (albo na innym avr) Może Wy coś takiego gdzies widzieliscie
Nie mogę tego uruchomić :/ Zrobiłem 2 układu na MAX232 jeden który był podany w Bascomie a drugi z tego $regfile = "m162def.dat" ' specify the used micro $crystal = 10000000 ' used crystal frequency $baud = 2400 ' use baud rate $hwstack = 32 ' default use 32 for the hardware stack $swstack = 8 ' default use 10 for the SW stack $framesize =...
mam taki program zegara ds1307 trochę już pokombinowałem tylko obsługa zmiany zapisanie do ds1307 mi nie działa , założyłem że pierwszy klawisz s1 wejście w menu ustawień kolejne przyciśnięcie s1 ma zmieniać wartość x od 0 do 5 wyświetlać kolejno "godzina minuta sekunda rok miesiac dzien" a klawiszem s3 zmieniać na razie tylko w górę wartości , problem...
Mam problem z czujnikami temperatury DS18B20 na 1wire. Polega na tym, że procesor widzie oba podłączone czujniki, ale czyta tylko z jednego. Czytanie ROMu skutkuje wyświetleniem informacji z jednego czujnika (28 FF FC 29 01 00 00 87) natomiost z drugiego czujnika - 28 00 00 00 00 00 00 00 (przy podłączeniu pojedyńczo informacja z czujnika wygląda następująco:...
Witam, złożyłem płytkę, napisałem kod i coś nie działa, narazie podam kod bo płytka śmiga byłbym wdzięczny za sugestie co jest nie tak że to nie chce działać, kod zbudowany po części w CodevisionAVR. Wyświetlacz jest na wspólnej Katodzie stąd mój wniosek że aby zaświecić jakiś segment muszę wysłać 0 na pin, a aby go zgasić 1. Jeżeli źle myślę to poprawcie...
Witam ponownie, Żeby było jasne to ja nie mam włączonego ciągle tego termometru. Stoi on na biurku pod monitorem gdy chce sprawdzić temperaturę włączam go sprawdzam wynik i wyłączam. Nie ma potrzeby mierzyć temperatury np. w nocy gdy śpię. Przerobienie go na zasilanie z sieci to kwestia dołączenia 1 wtyczki typu mini jack i zasilanie go z zasilacza...
Witam To moze zaczne od kodu: $regfile = "m8def.dat" $crystal = 8000000 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portd.5 , Db5 = Portd.6 , Db6 = Portd.7 , Db7 = Portd.4 , E = Portd.3 , Rs = Portd.2 Cls Config Servos = 1 , Servo1 = Portc.5 , Reload = 10 Config Portc.5 = Output Config Portd.0 = Input Set Portd.0 Cursor Off Dim Serworuch...
Na szybko przeglądając kod, to nigdzie nie stosujesz podciągania portów. Np tutaj void send(char value) { CLEAR_1WIRE; _delay_us(5); if( value == 1) { SET_1WIRE; } _delay_us(65); SET_1WIRE; } Robisz tylko SET_1WIRE, a więc ustawiasz kierunek na wyjściowy i nic więcej. Musisz też ustawić port w stan...
Witam z kolegą robimy projekt schemat już mamy Kod do obsługi termometru i wyświetlacza już mamy znaleziony w sieci i przerobiony na początku dodałem obsługę sda i scl lecz dalej nie wiem co robić to robiłem bez żadnej książki nie posiadam 'Stacja METEO $regfile = "m8def.DAT" 'deklaracja procesora, w tym wypadku Atmega8 $crystal = 1000000...
Witam, Jakiś czas temu zacząłem budowę termometru wielopunktowego opartego na ATMEGA162 i DS18B20. Układ działa super, do wejścia 1wire podłączyłem 17 czujek temperatury i wszystko śmigało jak należy ale niestety po podłączeniu czujek przez skrętkę już tak cudownie nie jest. Między układem ATMEGA a DSami jest dość duża odległość nawet do 50m. W momencie...
Przejrzyj pliki 1wire.h i DS1820.h oraz odpowiednie c. Co prawda w c++ ale na AVR i chyba dosyc przejrzyste.
Tym razem read jest zle napisane - zauwaz, ze petla + wczesniejsze opoznienia trwa co najmniej 63us, czyli czasami moze czytac 0 jako 1. Poza tym po co w petli to czytasz? Juz bym zrozumial gdybys zrobil jakies odszumianie, ale tak zwracasz ostatnia przeczytana wartosc. Odstepy pomiedzy bitami sa ciagle za krotkie - czemu nie probkujesz kiedy linia...