Jesli twierdzisz, ze biblioteka byla pisana tylko pod wersje 'S' to ciekaw jestem dlaczego w kodzie znajduje sie to: /* DS18X20 specific values (see datasheet) */ #define DS18S20_ID 0x10 #define DS18B20_ID 0x28 {...} #define DS18B20_9_BIT_UNDF ((1<<0)|(1<<... #define DS18B20_10_BIT_UNDF...
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...
Korzystałem z tych bibliotek załączonych do płytki: http://and-tech.pl/zestaw-evb-5-1/ , inna popularna biblioteka to "Martin Thomas ds18B20" - hasło do wyszukiwarki Google. To nie jest tak, że ściągasz taką bibliotekę, podłączasz dowolny uC i uruchomisz, trzeba czasami zmienić port/pin i w zależności od wybranego sposobu wyświetlania również zmodyfikować...
Biblioteka do DS18B20
1-WIRE spokojnie uciąga, nawet w BASCOMie udawało się robić sensowne rzeczy. Bascom nie był taki zły jak go malują. Tutaj przykład termometru na ATTiny2313 z DS18B20. http://mirley.net/minitermometr_uniwersa... Ten projekt jest też na elektrodzie o ile pamiętam. nie zauważyłem gołym okiem wpływu takiego przywieszania multipleksowania na jasność...
http://obrazki.elektroda.pl/5336859500_1... Projekt został zrealizowany na potrzeby sterowania urządzeniami zasilanymi z sieci 230V , świetnie nadaje się jako sterownik do wytrawiarki lub innych tego typu urządzeń, w których konieczne jest utrzymywanie stałej temperatury. Układ oparty jest o mikrokontroler ATmega8 firmy Atmel , który...
Juz byl taki temat ale został zamknięty. Moj problem polega na tym ze nie moge ruszyc ds1820 w C z wykorzystaniem bliotek rklib do obslugi ds. #include <avr/io.h> #include<avr/interrupt.h> #include<avr/eeprom.h> #include<string.h> #include "lcd.h" #include "ds18x20.h" #include "delay.h" uint8_t gSensorIDs[OW_ROMCODE_SIZE];...
A jak masz połączone te rezystory? Szeregowo czy równolegle? Czemu posługujesz się czyimiś bibliotekami, nie napiszesz ich sam? A to już nie można cudzych bibliotek wykorzystać? Nie wiem czy tutaj byłeś: [url=http://www.hobby.abxyz.bplaced.net/... Na dole artykułu jest gotowa biblioteka do ds18b20 działająca na 100%. W msb i lsb...
Ten plik o ile się nie mylę to jest sama biblioteka, w dodatku niekompletna ponieważ kompilator wywala całą masę błędów :/ Edit. I jeszcze jedno znalazłem kolejny przykład spróbowałem skompilować i tym razem dzieją się takie cuda: http://scr.hu/8e6i/jt5tp kody: DS18B20.h [syntax=c]#ifndef DS18B20_H #define DS18B20_H /* DS18B20 przyłączony do portu PA0...
Faktycznie tu je trochę zmodyfikowałem, ale w dołączonym do biblioteki przykładzie były: uint16_t decicelsius; uint8_t diff, i, subzero, cel, cel_frac_bits;
Opis funkcji _delay_ms() z biblioteki avrlibc The maximal possible delay is 262.14 ms / F_CPU in MHz.
dziwny problem .. AAaaa .. a czemu skoro zmniejszyłeś rozdzielczość do 9 bitów to robisz wartość / 16 ?? / czy nie trzeba by odpowiednio zmienić działki .. ?? / Masz tu moją bibliotekę dla wielu Ds-ów ( używałem 8 ) chodzi bardzo sprawnie - miałem problemy z zakłóceniami / siały mi falowniki /. Otrzymujesz tablicę z wartościami temp w dziesiątych częściach...
Osobiście używam biblioteki RKLibAVR i ona ma już w sobie funkcje do ds'a (używa jednej procedury do wysyłania i odbioru danych) i bez problemu działa. W twoich procedurach nie wiem co jest źle (może to wina zasilania ds'a??)
niestety dalej kwadraty :( może jeszcze sprobuje jakis inny program... no nic nie poddam się :) Podepne moze wyswietlacz do LPT i spróbuje go wysterować z kompa. Naznosiłem do domu kilka LCD różnych różnistych i faktycznie niektóre nie działają jak powinny. Pogrzebałem i okazało się, że niektóre LCD mogą mieć pin R/W wiszący w powietrzu (działaja tak...
PS w necie są tony działających bibliotek do tych układów, może warto ich użyć do testów?:> tym bardziej, że podałem link do na prawdę jednej z lepszych dzięki, której można się dodatkowo sporo nauczyć przeanalizuj sobie ten kod - to na pewno dużo ci pomoże: http://www.siwawi.arubi.uni-kl.de/avr_pr... ale cooo tam ;) ta biblioteka...
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! Od jakiegoś czasu próbuję nauczyć się jakiś podstaw elektroniki. Od kilku lat programuję w c++, niestety, o czym boleśnie zdążyłem się przekonać, świat mikrokontrolerów wygląda zupełnie inaczej niż programowanie w windows/linux. Ostatnio przekopywałem trochę forum i internet w celu znalezienia jakiś wskazówek co do współpracy atmeg z czujnikami...
Witam koledzy! Mam problem z pomiarem temperatury, przeszukałem forum i internet n razy w poszukiwaniu odpowiedzi ale nie natrafiłem na żaden trop. Sądzę, że błąd leży gdzieś w kodzie. Wynik pomiaru docelowo jest prezentowany na LCD 2x16. Pomiędzy VCC a DQ mam rezystor 4,7k zgodnie z notą DS'a (nie w trybie pasożytniczym) Atmega podłączona zgodnie z...
Piszę obecnie program obsługujący termometr ds18b20. Nie mogę wykorzystać gotowych bibliotek dostarczonych razem z kompilatorem (CodeVision), więc obsługę 1 wire napisałem sam na podstawie specyfikacji. Jednak poza wysłaniem resetu komunikacja nie przebiega poprawnie. Oto mój kod: /***************************************... This program was...
I2C mam za sobą i próbowałem dziś napisać sterownik 1-Wire. Na płytce ewaluacyjnej mam MEGĘ16 (16Mhz), DS18B20, który na pewno działa. Problemem u mnie jest wątpliwa inicjalizacja i brak komunikacji. Co może być źle ? Napisałem "biblioteczkę", są komentarze, powinno się wygodnie czytać. #include <avr/io.h> #include <util/delay.h> ////////////////////////////////...
Witam, Dwa czujniki DS18B20 mam podłączone do jednego pinu avr'a, podciągnięte do plusa przez 4k7, zasilane pasożytniczo. Ponieważ nie lubię korzystać z "nieswoich" bibliotek napisałem swoje do obsługi 1wire. Pozwala to zaoszczędzić kilka bajtów... Problem jest taki: Jeżeli oba czujniki są zasilane osobną linią (nie pasożytniczo, czyli Vss, Dane i GND)...
Używam AVRstudio i kompiluje program z takim parametrami: avr-gcc.exe -mmcu=atmega8 -Wall -gdwarf-2 -lm -DF_CPU=8000000UL -O2 -fsigned-char -MD -MP -MT lcdm8.o -MF dep/lcdm8.o.d -c ../lcdm8.c -lm dodałem ale nic nie pomogło. Biblioteka math.h na poczatku programu też dodana. kod dalej zajmuje 4,6kb...:/ co do czasu konwersji spróbuje je jeszcze pozmieniać...
Szanowni Forumowicze, od pewnego czasu interesuję się programowaniem mikroprocesorów. Wykonałem już kilka bardzo prostych projektów jak woltomierz cyfrowy czy termometr analogowy (mcp9700) z wyświetlaniem wyniku na LCD (HD44780). Problem mam jednak ze zrozumieniem sterowania elementami cyfrowymi. O ile w przypadku np. termometru mcp9700 sprawa jest...
Witam, próbuję odczytać temperaturę z mojego czujnika jednak wynosi ona ciągle -0.1, a gdy próbuje pobrać odczytać ID wyświetla mi puste miejsca lub krzaczki. Przy próbie podłączania za pierwszym razem niestety źle spojrzałem na schemat i odwrotnie podłączyłem zasilanie więc teraz nie wiem czy to wina kodu czy może jednak układu. Chociaż jakby coś z...
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, Mam problem z inicjalizacja DS18B20. one_wire.c [syntax=c] #include <avr/io.h> #include <util/delay.h> #include "one_wire.h" #include "../pjlcd_hd44780/lcd_hd44780.h" #include <avr/interrupt.h> // makra upraszczające dostęp do portów // *** PORT #define PORT(x) SPORT(x) #define SPORT(x) (PORT##x) // *** PIN #define PIN(x) SPIN(x)...
$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)...
Dzięki Freddie za uwagi. 1. kondensator przy VCC i GND 22pF? to chyba blad kopiowania pobliskich kondensatorow >Tak, dokładnie - już poprawione 2. imvertery masz zasilone odwrotnie - VSS to masa. >Niestety, wygląda na to że datascheet układu ma błąd, ale zasilanie układów DIL14 jest standardowe - do poprawki. 3. ds18b20 sa zasilone, ale czy gdziekolwiek...
Mógłbyś chociaż napisać, jakie dokładnie błędy występują.
tak F_CPU= 1 MHz, a mógłbyś trochę jaśniej co powinienem zrobić z tymi bibliotekami?
Witam męczę się już od kilkunastu dni nad uruchomieniem termometru DS18B20, próbowałem całą masę kodów żaden nie zadziałał. Temperatura była by wyświetlana za pomocą wyświetlacza 7 seg. Więc nie potrzebuje żadnych bajerów typu automatyczne wykrywanie ilości czujników, wyświetlania errorów itp.Chodzi mi o sam program i biblioteki dzięki którym mógłbym...
R5 - daj ze 4k3 i powinno być dobrze ale jak długi ma być kabel to wymaga zmniejszenia (nawet do 2-2,5k) Wciąż mnie gryzie ten TSOP, nie wiem jak jest z biblioteką PCB, będziesz musiał porównać z datasheet'em czy jest dobrze. I jak chcesz możesz DS18B20 zrobić zasilanie z 1W (nie podłączać nogi Vcc - ale to wydłuży czas konwersji) Hmm, a tak poza tym...
Witam Przejrzałem Twój kod obsługi magistrali 1-Wire i zauważyłem, że nasze kody mają dość sporo różnic. Ja bym Ci radził nie przerabiać Twojego kodu bo na pewno będą pomyłki tylko po prostu podpiąć moją bibliotekę która jest sprawdzona. Później jak wszystko już będzie działać możesz sam dla siebie spróbować przerobić to co teraz masz. Tak w ogóle to...
Zamieszczam bibliotekę ze stworzonym komponentem przekaźnika JQC-3FF
Witam Nie widzę deklaracji funkcji: delayus() oraz delayms(). W bibliotece delay.h funkcje te wyglądają tak: delay_us() i delay_ms(). Tak naprawdę właśnie dobór opóźnień jest najistotniejszy przy komunikacji po 1-Wire. Wiem bo sam męczyłem się trochę z tym czujnikiem. Niestety funkcję dostępne standardowo w bibliotece delay.h ( delay_us() i delay_ms()...
Niestety twoja biblioteka jest trochę za skomplikowana dla mnie. Mógłbyś powiedzieć jak ją użyć dla 3 czujników na 3 różnych pinach??
Zdefiniować sobie własną bibliotekę? 5 minut roboty.
gdzie szukać atmega8? Dodano po 4 Szukam jeszcze ds18b20.
Mam takie pytania: 1. Czy jest jakaś możliwość realizacji komunikacji z DS18B20, która nie będzie uzależniona od delay-ów? 2. Czy własne napisanie delay-ów może mi w czymś pomóc? 3. Jeżeli chciałbym zrealizować coś bardziej skomplikowanego to powinienem "dołożyć" jeszcze jeden µC, żeby uniknąć niespodzianek? Miałoby się to wiązać z przerwaniami...
Witam, Pisząc swój własny program chciałem wypróbować gotowy kod. Moim źródłem jest ( "Obsługa interfejsu 1-wire " Cezarego Klimasza ). Jednak napotkałem 2 problemy. 1. Kompilator zgłasza mi ostrzenie " implicit declaration of function 'dtostrf' " 2. W przykładzie podano bibliotekę do obsługi wyswietlacza lcd. Jednak ja chce zrealizować wyświetlanie...
W związku z tym że na codzień piszę w BASCOM-ie i nie odwołuję się bezpośrednio do sprzętu (co w C spotyka się przecież co chwilę) to byłem przekonany że to właśnie BASCOM sobie poradzi a C już nie. BASCOM to jedna wielka biblioteka. Jeżeli w C będziesz się posługiwał tylko bibliotekami, także nie będziesz musiał cyt: "... odwoływać się bezpośrednio...
Na tym forum nie rozwiązujemy rebusów. Jeśli oczekujesz pomocy, to pokaż kod swojej "biblioteki". Regulamin 3.1.15. zumek
Sygnał przerwania może być wywołany z jednego z peryferiów (np wbudowane liczniki, adc, twi itd), albo właśnie przez nóżkę procesora (w wypadku atmega8 bodaj są 2 zewnętrzne przerwania) Co do arduino pewnie musisz użyć biblioteki.
cześć. a jaki masz zegar? u mnie też nie chciało chodzić, bo miałem 1mhz.przestawilem na 8mhz i dziala (chyba chodzi o dopsowanie z procedurami odpowiedzialne za zliczanie czasu). zajżyj tu: http://www.elektroda.pl/rtvforum/topic28... ja tez mialem problemy z odczytem z ds18b20.w linku któy podałem, znajdziesz kompletny kod na atmega8 dla ds18b20...
Dla jednego czujnika daj 4,7k i zmień częstotliwość procka. Jeśli chcesz się naocznie przekonać, że 1MHz to za mało to polecam zabawę z symulatorem i analizę czasów wykonania programu. Jak na talerzu będziesz miał podane, że czasy niestety są błędne. I polecam używanie makr / funkcji - kod będzie znacznie czytelniejszy i łatwiejszy do poprawki. P.S....
Tak mam sbi DDRD, 1 i sbi PORTD, 1... Bo potem cbi PORTD, 1 zaświeca... Dodano po 22 (at)snnaap Tak czujnik sprawny, i dobrze podłączony bo nawet dziś go jeszcze sprawdzałem tylko że na gotowych bibliotekach napisanych w języku C, i działa jak należy. A dlaczego w tym kodzie napisałeś sbic DQ_PIN, DQ a nie sbis??
Sam widzisz, że gdybyś pokazał schemat to byłoby lepiej. A ty znowu swoje i piszesz : a nie tak jak jest na schemacie +9V ty nie pokazałeś schematu tylko PCB. Poza tym po co ci jakieś wyimaginowane gniazdo na 4,5V ???? toż bierzesz sobie z dowolnej innej biblioteki jakieś 2 piny i sam nadajesz im nazwę np "Gniazdo zasilania" a nie szukanie bibliotek...
Circuit Maker 2000 jest już leciwym programem i nie ma nowszej jego wersji. Także jego biblioteki są w wielu przypadkach nie aktualne. Więc jest całkiem możliwe iż elementów których poszukujesz po prostu Circuit Maker 2000 nie zawiera. Są dwa wyjścia; wybrać inny program do projektowania lub samemu zaprojektować potrzebne biblioteki w Circuit Maker...
Witam, rozwiązanie użytkownika Atom1477 z zarzadzaniem przerwaniami cli()/sei() pomogło, teraz pomiar jest bardzo stabilny i aż miło patrzeć, bardzo dziękuję za prostą i fachową pomoc, natomiast początkującemu koledze proponuję artykuł z kursu C dioda dotyczącego 1wire (użyj jego bibliotek), a multipleks napisz sam, opis na stronie kursu wkrętak, bazując...
Dobrze jest mieć sprawdzony czujnik DS18B20, bo może być tak, że siedzisz cały dzień, w programie wszystko jest dobrze, tylko czujnik uszkodzony. No i najprościej wydrukować komunikaty na UART, sprawdzonych bibliotek jest dużo. Oczywiście LCD też może być, tylko najpierw testuję wszystkie możliwe inty, floaty, znaki i napisy, a dopiero przechodzę do...
Właśnie skończyłem montaż i uruchamianie prostego układu zegarka z termometrem do samochodu. Celem była wymiana fabrycznego zegarka, który choć sprawny, miał jedynie 12-godzinny wyświetlacz oraz gubił czas przy każdym odłączeniu akumulatora. Układ składa się z mikrokontrolera ATmega8, 4 wyświetlaczy 7-segmentowych LED (multipleksowanych), układu DS1307...
Prawdę mówiąc jest to prawie źródłowy gotowy przykład z biblioteki rklibavr, wydaje mi się że funkcja DS18X20_find_sensor tworzy tablicę gSensorIDs[], i po niej jakoś powinienem odczytać odpowiedni czujnik DS, ale niestety nie wiem jak to zrobić.
Przeoczyłem, że nic Ci się na LCD nie pojawi, bo... nie masz regulacji kontrastu. Nie chcę mi się rysować, ale opiszę : dajesz potencjometr np. 10k skrajnymi końcówkami między masę a +5V, środek, czyli suwak potencjometru podpinasz pod 3-cią końcówkę LCD. Rozumisz ? ;-) C4 i C5 masz z biblioteki kondensatorów US, stąd takie nie europejskie symbole....
Witam wszystkich. Mam problem z obsługą DS18B20 na Atmega16. Zacznę od tego, że obsługę tego czujnika i wyświetlacza segmentowego mam opanowaną, bo na Atmega8 wszystko mi działa, także sam czujnik jest w porządku. Czujnik mam podłączony w trybie NORMAL z użyciem rezytora 4,7k(takie samo podłączenie mam dla Atmega8), do PD0. W bibliotece do obsługi czujnika...
W bibliotece avr-libc masz już gotowce, popatrz tutaj: http://www.nongnu.org/avr-libc/user-manu... Jest tam też funkcja na x^8 + x^5 + x^4 + 1
Bo póki co - to jest tylko próba resetu. Mam całą bibliotekę napisaną, jednakże testuję tylko najprostszą z funkcji - reset. Sam kod nie jest mój, jedynie dostosowany do mojego układu. Oczekuję otrzymania sygnału PRESENCE (niskiego na pinie OneWire (PB0), jednak zawsze otrzymuję wysoki. Przedstawiony kod działa u kolegi, więc szukam jakichś błędów w...
Project/Properties/Toolchain/AVR/GNU C Compiler/Optimization/Optimization Level. Przy czym zapewne masz toolchain z błędem w delay.h, więc albo przekopiuj ten nagłówek ze starej wersji, albo po prostu użyj kompilatora i bibliotek z WINAVR, albo przejdź na AS4. Dodano po 48 BTW, Gdzie masz to F_CPU zdefiniowane? Bo najwyraźniej nie jest to widoczne w...
takim prostym skryptem (plik bat w Windows) to zbudujesz: [syntax=dos](at)ECHO OFF SET AVR32_HOME=d:\WinAVR-xxxxxxxx SET PATH=AVR32_HOME\bin;%PATH% SET MCU=atmega16 DEL power_supply.hex power_supply.elf hd44780.o DigitalIn.o DigitalOut.o ds18b20.o pwm.o main.o avr-gcc -c -mmcu=%MCU% -I. -Os lcd\hd44780.cpp -o hd44780.o avr-gcc -c -mmcu=%MCU% -I. -Os...
http://obrazki.elektroda.pl/7208083000_1... Witam Od dawna przymierzałem się do zbudowania zegara nixie na sześciu lampach. W internecie jest sporo takich projektów, jednak większość z nich nie odpowiadała moim założeniom. Postanowiłem więc zaprojektować i wykonać zegar od podstaw wykorzystując podzespoły, które miałem pod ręką. Założenia...
(at)Sławek-K Mam połączone na 3 przewodach długości około 50 cm każdy, rezystory pomiedzy DQ i VCC, nie jest to jeszcze żaden projekt, tylko "zestaw edukacyjny" więc wszystko i tak leży na biurku. (at)snnaap funkcja bit_is_clear jest funkcją z biblioteki avr/io.h, probowałem także instrukcji (SENSOR_PORT & 0x01)==1, ale nie zadziała, zmieniałem czasy...
Układ poprawnie złożony na stykówce Ja bym jednak mimo wszystko poprosił o jakiś schemat/zdjęcie tego co tam poskładałeś :) Też tak uważam, bo programy są przetestowane do bólu i to nie tylko przeze mnie, czytelników ale też przez autora tych bibliotek (gościu z niemiec). U mnie np działaja na tym układy pomiaru temperatury na wielu czujnikach na magistrali...
biblioteka ds18b20 ds18b20 biblioteka atmega8 biblioteka
spawarka schema cisnienie piecu bezpiecznik termiczny
Kod E6 w zmywarkach, płytach indukcyjnych, pralkach i lodówkach Kolumny podstawkowe do Denon PMA-260: Dali, Wharfedale, Klipsch, Monitor Audio