http://obrazki.elektroda.pl/1998348900_1... Witam, chciałbym wszystkim przedstawić projekt sterownika matrycowego wyświetlacza LED. Na początek proszę tylko o nie ocenianie wykonania płytki (na płytce uniwersalnej/pająk) bo jestem świadomy jak ona wygląda i jak ją wykonałem. Historia Pomysł projektu narodził się, gdy jakieś pół roku...
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;
Czyli wyczyszczenie magistrali następuje w pierwszej linijce tej funkcji, tak? Mam cały program i coś jest nie tak. Temperaturę z MCP9700 odczytuje prawidłowo, a z dallasa mam ciągle "cisza". Poza tym wszystko działa bardzo wolno i jak wyjmę kondensator filtrujący spomiędzy pinów MCP9700 to nie reaguje na zmianę napięcia. Procesor to ATmega8 i jest...
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...
http://obrazki.elektroda.pl/7995180000_1... Witam! Jakiś czas temu rozpocząłem naukę pisania programów na mikrokontrolery AVR w języku C++. Przeczytałem wiele tutoriali, poradników, itp., aż w końcu doszedłem do pisania własnych, prostych programów. Po kilku takich „pseudoprogramach” zdecydowałem, że teraz czas napisać coś...
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];...
Biblioteka do DS18B20
Nie moge sciagnac znikad biblioteki rklibavr - czy ktos moglby mi ja podeslac na emain toyman(n_a)poczta.fm ?
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...
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...
Zapewne nie zlinkowałeś programu z właściwą wersją printf - standardowa nie obsługuje float/double. Oprócz dodania biblioteki libptrintf trzeba też zdefiniować symbol linkera vsprintf. A najlepiej to całe double wywalić w diabły i przejść na int. Symbol F_CPU masz zdefiniowany?
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...
Opis funkcji _delay_ms() z biblioteki avrlibc The maximal possible delay is 262.14 ms / F_CPU in MHz.
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ć...
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??)
(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...
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ć.
czujnik temperatury mam podpiety pod port.3 w atmega8 I niemoge go zmienić bo pcb w ilości 40 szt gotowe I Najpierw robi się prototyp, zrobiłeś krótką serię bez testów prototypu, możesz żal mieć tylko do siebie. niespodziewalem się że takie cyrki wyjdą z tym bascomie. Pierwszy raz używałeś Bascom? On jest nieprzewidywalny, jedne funkcje wpływają na...
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...
Warning dostajesz bo ta zmienna nie jest zainicjowana w procedurze obslugi przerwania tylko w main. Kompilator o tym nic nie wie. Jesli ci ten warning przeszkadza to zadeklaruj ta zmienna jako static co automatycznie ja zainicjalizuje na 0 i usatysfakcjonuje kompilator. W tym wypadku ta zmienna nie musi byc volatile, bo korzystasz z niej wylacznie w...
Aby poprawnie narysować schemat, a później według niego zaprojektować poprawną płytkę, musisz wymienić wszystkie rezystory i kondensatory. Należy je pobrać z biblioteki rcl.lbr Jak będziesz przerabiał schemat, to od razu polikwiduj te wszystkie linie które pokazują zasilanie. Zamiast nich zastosuj symbole zasilania ( GND, +5V ) pobrane z biblioteki...
dodanie tej biblioteki i tego -lm nic nie dalo:( kod zajmuje ciągle tyle samo. A co do wartosci ds.nds[0] i ds.nds[1] to dla temp 24,4*C (ech gorąca teraz mam w pokoju xD) : ds.nds[0] = 134 ds.nds[1] = 1 Edit: Uszkodzenie czujnika mogę wykluczyć... Podpiołem nowy i efekt ten sam wskazuje dobra temp ale bardzo wolno schodzi w dół i nie chce zejsc poniżej...
Hej. Nie wiem czy wiesz ale te kostki sa bardzo czułe jeśli chodzi o czasy pomiędzy poszczególnymi komendami. Na pierwszy rzut oka widzę ze masz z tym problemy. Poczytaj trochę o komendzie _delay_ms w dokumentacji biblioteki avr-libc. Zgodnie z dokumentacją: The maximal possible delay is 262.14 ms / F_CPU in MHz. czyli w twoim przypadku 262.14/8=~32...
Patrząc na Twój kod zauważyłem że wykorzystujesz funkcję z biblioteki "delay.h". Tymi funkcjami nie uzyskasz dokładnych czasów potrzebnych do obsługi interfejsu 1-Wire po którym komunikuje się czujnik DS18B20. Udostępnię Ci swoją sprawdzoną w 100% bibliotekę do komunikacji po 1-Wire. W tej bibliotece wystarczy dobrać czasy opóźnień dla Twojego kwarcu...
a jeszcze jedno pytanie czy nie prosciej i taniej zastosowac wyświetlacz np od 3310?? 'ladowanie biblioteki rejestrow dla ATMEGA8 $regfile = "m8def.dat" 'deklaracja kwarca (wewnetrzny 1 MHz ) $crystal = 1000000 'konfiguracja polaczeń LCD oraz wybor typu Config Lcdpin = Pin , Db4 = Portc.2 , Db5 = Portd.6 , Db6 = Portb.2 , Db7 = Portb.1...
Oj kolego, poważny błąd - zasilaj prawidłowo mikrokontroler: http://mikrokontrolery.blogspot.com/2011... 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....
Nie wiem czy dobrze wybrałem dział, ale nie wiem czy błąd tkwi w oprogramowaniu czy w podłączeniu :D Na razie podłączałem jeden czujnik do portu D0 docelowo mają być dwa czujniki temp jeden przy całym układzie a drugi dalej by móc mierzyć temp na zewnątrz, wyświetlacz 8-segmentowy razy 2, temp będzie mierzył od 0 do 99 stopni, za pomocą przełącznika...
Dalsza cześć zmagań z moim zegarkiem :> Chcę z ATMegi8L skomunikować się z czujnikiem DS18B20. Zasilanie czujnika zewnętrzne, 5V, na lini podciągnięcie przez pięć rezystorów 1k. Próbowałem już chyba ze 3 biblioteki i nic. Aktualnie korzystam z biblioteki znalezionej gdzieś na elektrodzie. Fragment kodu programu: [syntax=c] char bufor[]=" "; char...
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...
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, podłaczyłam ds18b20 do atmegi32, i jedyne co mi wyświetla gdy rezystor jest 4,7k to nic nie wyświetla, zmieniając z 4,7 na 2,2 to nic nie wyświetla, bez rezystora wyświetla samo 00,0. Korzystam z gotowych bibliotek dla ds18b20, co może być przyczyną ? [syntaxc] #include <avr/io.h> #include <util/delay.h> #include <stdio.h> #include...
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)...
$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, 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 Podczas sczytywania temperatur od 0-33 stopni wszystko jest ok. Po przekroczeniu 33 stopni diody sygnalizujące temperaturę zaczynają szalec. Zastosowałem rezytor zewnętrzny podciągający 4k7. Program: [syntax=asm].include"m8def.inc" #define DQ_PORT DDRC #define DQ 5 #define SET_DQ cbi DQ_PORT, DQ #define CLR_DQ sbi DQ_PORT, DQ #define IN_DQ PINC...
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, Mam dziwny problem z odczytem temperatury z czujnika DS18B20. Układ podpiąłem metodą zasilania pasożytniczego, czyli linia zasilania zwarta do masy a do linii DQ podpięte zasilanie 5V z użyciem rezystora podciągającego 4,7 kohm. MCU zaprogramowane tym programem: [syntax=asm].nolist .include "m8def.inc" .list .equ AVR_zegar = 1 ;częstotliwość...
Witam, Jakiś czas próbuję doprowadzić do ładu mój termometr. Odsyła on sygnał po resecie, jednak próba odczytania temperatury kończy się fiaskiem. Działam na procesorze Atmega8, do opóźnień używam bilblioteki util/delay.h (WinAVR). Termometr podłączony jest na stałe do zasilania. Ten kod napisałem na podstawie dokumentacji temometru i dokumentu opisującego...
Udało mi się rozwiązać problem, rzeczywiście nie było po prstu pliku string.h, więc musiałem go przypadkowo usunąć.. Kompilacja przechodzi już bez problemu, muszę teraz chyba ustawić odpowiednie wartości w pliku ds18x20, jednak nie wiem na jakie, jakoś z datasheetu nie potrafie tego wyczytac.. O ile rzeczywiścei trzeba to wyczytać z dokumentacji, mam...
Witam. Mam problem z kompilacja programu. Posiadam gotowego maina i biblioteki tylko nie wiem czy to wszystko dobrze robie... Jest to program do wytrawiarki który steruje grzałka i wyświetlaczem LCD. Chciałbym go nieco przerobic. Tak wyglada main: http://obrazki.elektroda.pl/5703366500_1...
Przede wszystkim zadałbym sobie pytanie dlaczego 3 czujniki są na 3 różnych pinach? Po to wymyślono 1-wire, aby dać wszystko na jednym :) Co do biblioteki - masz tam przykłady użycia, nawet w sam kod biblioteki nie trzeba się zagłębiać.
gdzie szukać atmega8? Dodano po 4 Szukam jeszcze ds18b20.
Witam, niedawno zainteresowałem się programowaniem mikrokontrolerów AVR i elektroniką w ogóle. Od kilku dni próbuję zrobić prosty termometr w oparciu o czujnik Dallas 18B20, wyświetlacz LCD 2x16 ze sterownikiem HD44780 i mikrokontroler Atmega8. Korzystam z biblioteki pana mirkka do obsługi LCD, natomiast do obsługi czujnika temperatury korzystam z tej...
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...
Zamieszczam bibliotekę ze stworzonym komponentem przekaźnika JQC-3FF
Na tym forum nie rozwiązujemy rebusów. Jeśli oczekujesz pomocy, to pokaż kod swojej "biblioteki". Regulamin 3.1.15. zumek
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()...
Zdefiniować sobie własną bibliotekę? 5 minut roboty.
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.
Biblioteka której użyłeś nie ma możliwości dowolnej konfiguracji pinów. W załączniku masz bibliotekę prosto z Rosji :D Chiński wyświetlacz sam mi się uszkodził ale coś tam wyświetla :D http://obrazki.elektroda.pl/6257086800_1... Kod którego użyłem do zrobienia tego zdjęcia [syntax=vbnet] $regfile = "m8def.dat" ' specify the used micro...
Witam 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...
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....
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....
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...
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...
Nie ma problemu. Kiedyś to robiłem, o ile pamiętam to każdy czujnik ma unikalny symbol. Trzeba odpytać najpierw po podłączeniu żeby potem właściwie adresować. Poczytaj dokumentację czujnika i ściągnij jakieś przykładowe biblioteki pod tego ds-a to zobaczysz co i jak. Korzystając z tematu zapytam czy mieliście jakieś kłopoty z odczytem na większej odległości...
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...
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...
Odświeżanie jest 50Hz wyświetlacz działa bez zarzutów, odnośnie kodu to racja nie ma co być upartym i skoro jest dobrze a może być jeszcze lepiej dzięki małej poprawce to jak najbardziej warto się do niej stosować tak jak powiedziałeś to nic nie kosztuje xD a odnośnie tych gotowców sprawdzałem już kilka i problem w tym że nie wszystkie kody były kompletne...
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
ds18b20 biblioteki ds18b20 atmega8 biblioteki eagle ds18b20
corsa duże spalanie odłącz ładowarkę samsung przewijać ekran
rotel wzmacniacz rotel wzmacniacz
Termet Silver Pro 20 kW – gubienie zapłonu przy ogrzewaniu podłogowym, parametry P3 P4 Unitra Condor RM820S – kondensator C45, sieć Zobla, montaż, typ, wzmacniacz TBA810