Witam Myślę, że przy odrobinie chęci już posiadasz odpowiedni interfejs. Ten interfejs jest zbudowany na układzie DS2480B, który daje możliwość programowanie pamięci więc wystarczy drobna modyfikacja. Polecam opis interfejsu DS9097U oraz układu DS2480B. Na foto jest przedstawiony DS9097U wariant 2 daje możliwość programowania (pin 5). Pozdrawiam https://obrazki.elektroda.pl/6153300700_...
http://www.elektroda.pl/rtvforum/viewtop...
a spróbuj wyswietlać od razu na wyświetlacz czyli: printhex 1wread() może to pomoże. Jakoś niemogę znaleźć noty do tego układu powyżej 2 stron(jakieś dema czy co?) Czy aby napewno &h33 odczytuje zawartość?
Poza tym, że reset dotyczy maszyny stanów w urządzeniu 1-wire, a nie całego urządzenia, to cześć bajtów ze scratch pada to są komórki pamięci EEPROM - akurat nie te od temperatury, ale np. od alarmu już tak.
Po załączeniu zasilania czytam sobie przed pętlą główną z EEPROM-u pewne nastawy. Niestety czasami powiedzmy 1 na 5 odczytów jest nieprawidłowych. Wartość zapisana jest dobra, natomiast odczyt jest nieprawidłowy. Wiem to stąd, że jeżeli jeden z odczytów jest nieprawidłowy, to po wyłączeniu zasilania i ponownym jego załączeniu kolejny odczyt jest prawidłowy,...
Z procka, z tego co wiem, to nie. Mozesz kupic sobie EEPROM z identyfikatorem unikalnym np. [url=http://ww1.microchip.com/downloads/... Mozesz sobie tez podlaczyc scalak o podobnej funkcjonalnosci na 1wire (sa takie). Dla pocieszenia powiem, że większość nowych ARMów ma unikalne serial numbery w krzemie ;]
Pisząc reset mam na myśli sygnał wystawiany na linii 1wire.
Rejestracje na pewno ułatwi fakt iż pamięć jest taktowana zegarem do którego mam bezpośredni dostęp. Pamięć jest taktowana zegarem czy transmisja ma linie zegarową ? Może to eeprom na i2c, a nie 1wire.
Możesz napisać sobie na dowolny procesor program wykonujący taką funkcję. Jeśli chodzi o numer seryjny to rozważ zastosowanie jakichś układów zawierających unikalne numery, np. coś z 1wire.
Niestety nie udało się zmusić arduino do wykonywania tego samego na dwuch pinach równocześnie Bo biblioteka której używasz nie obsługuje w tym samym czasie więcej niż jednego wyprowadzenia tak jak i DS2480 Nie mam wpiętego opornika na linii 1Wire tylko DS9503 i DS2480B Jak używasz zewnętrznych układów to raczej nie DS2480 chyba, że potrzebujesz zapisu...
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, przeszukałem już cały portal i nie znalazłem odpowiedzi. mam kod obsługi 3 x DS18X20 z numerami układów zapisanymi w EEPROM i jeżeli chcę odczytać właściwy ROM to muszę użyć sekwencji jak w kodzie w sekcji 1 (bez skoku do podprogramu) 'program odczytujący obecność układów 1WIRE i sprawdzający ROMy z EEPROM $regfile = "attiny2313.dat"...
Dla pewności możesz jeszcze dodać potwierdzanie odbioru i testowanie poprawności odebranych danych CRC-16. Dodano po 4 Jeśli chodzi o komunikację przewodową na UARCIE to tak. Ale IRDY po stronie procka jeszcze nie ruszałem :) Do czego ma służyć to urządzenie , może wcale IRED tu nic nie wniesie. Styk to jednak styk. Jeśli problemem jest konektor to...
bascomowi nie robi różnicy czy to attiny czy atmega - należy tylko wybrać odpowiedni typ procesora w opcjach i ustawić fusy. Nie jest tu kluczowe ile tych 1w bo numery urządzeń można by nawet do eeprom wrzucić ale same biblioteki obsługi 1w w bascomie to kawał pamięci .
ja zeby zaczac kupilem wyswitlacz alfanumeryczny, sorry ze nie uzyje symboli ale nie pamietam ;) procek atmega8, 8bitowy I/O na I2C (pcf cos tam) zegar i eeprom na i2c. do tego pare uzadzen na 1wire (termometr i klucz) no i czywiscie jakies tranzystory etc. no i umiem juz stosunkowo sporo :D
Mam taki problem - Dziecko mi wykrzywiło środkowy pin we wtyczce wsadzając tam zwykłą wtyczkę od 220v.. ja nic nie zauważyłem i wepchnąłem wtyczkę w laptopa dokańczając dzieła zniszczenia - pin się docisnął do + we wtyczce i przy próbie prostowania się złamał kupiłem nowy kabelek z wtyczką jak oryginał, założyłem - laptop nie widzi zasilacza- tzn komp...
Musze wybrac z ktorej pamieci odczyt bedzie najszybszy Chciesz wiedzieć dokładnie ile cykli i co do 1 mikrosekundy, czy tylko tak ogólnie z której pamięci będzie najszybszy ? Bo tak ogólnie to naj-naj-najszybciej jest z RAM, potem z Flash-a i z eeprom wewnętrznego (pi razy oko tak samo szybko), potem z eeprom zewnętrznego "równoległego" (tylko że to...
Opcja z jedną linią 1Wire (czyt. tak jak teraz masz): Musisz dodać tryb konfiguracji do programu, w nim uruchamiasz procedury 1WireSearch i odczytujesz jakie są ID czujników. Następnie np podgrzewasz czujnik nr 1, program sprawdza który to numer 1 i zapisuje go w eepromie pod pozycją 1. Robisz tak dla wszystkich czujników na magistrali. W programie...
Dobrym pomysłem było by wydzielenie całego modułu komunikacyjnego... który mógłby być wpinany także do innych projektów. Wtedy w głównym procesorze wydawało by się polecenia typu ping, pwd, mkdir (tak jak to robi Total Commander na przykład), a owy modulik załatwiał by już całą komunikację. Potrzebne są chętne osoby do zajęcia się tym tematem oraz trzeba...
Logicznie rzecz biorąc (aby nie ingerować w kod źródłowy) program powinien mieć możliwość wpisania nowego ID dla nowego czujnika, czy tak ? Algorytm komunikacji 1wire zakłada możliwosć wyszukiwania jakie są elementy podłaczone, można by to uzupełnić o przechowywanie adresów w pamięci EEPROM i wykrywanie który układ sie nie zgłasza i po znalezieniu...
Ja bym proponował mikrokomputer "Pecel" z oferty AVT, jest teraz w promocji i kosztuje 105zł(kit,do lutowania), a na jego pokładzie AT MEGA 8535 wykonany w technologii RISC. W swojej strukturze zawiera pamięć EEPROM, osiem przetworników a-c i zegar czasu rzeczywistego. Dodatkowo oczywiście klawiaturę i wyświetlacz, a do komunikacji (I2C, 1WIRE, RS232).
Nie wiem czy chcesz się nauczyć czy potrzebujesz program. Na początek te uwagi: 1. Nie wiem co tam robi dyrektywa $eeprom. Jest niepotrzebna w tym kodzie 2. Zmienna Ds jest zwiększana w przerwaniu niezależnie od tego czy jesteś w Menu czy nie. Tak więc po powrocie z Menu już na pewno nie zdążysz załapać się na warunek If Ds = 2 i wyzerować jej wartość....
Witam :) Wielkie dzięki za pliki ale to nie to o co mi chodzi. Ja nie chcę zbudować adaptera do tego wyświetlacza a raczej w pełni funkcjonalny układ który będzie zamontowany pod wyświetlaczem w obudowie w której nam je dostarczono. A więc chciałbym cały układ zbudować na mikrokontrolerze ATmega128 lub ATmega256 który będzie obsługiwał SEDA, kartę pamięci...
Niestety "czarny wyświetlacz" coś nie tak podeślij kod to może coś przerobie No odnośnie tego poprzedniego kodu to tego nie kumam [syntax=basic4gl] Sub Znajdz_czujniki: Ilosc_ds = 1wirecount() ' pytamy ile czujnikow jest na magistrali 1Wire '=======================================... If Ilosc_ds > 0 Then Ds_id(1) = 1wsearchfirst() 'Znajdź...
Witam. Poszukuję osoby która wykona klucz iButton DS1971-F5. Wymagania: - klucz musi symulować kość o dokładnie podanym 64bitowym ID i 64bitowej pamięci EEPROM; - musi się "zmieścić" w obudowie oryginalnej pastylki iButton; - musi być zasilany z magistrali 1WIRE; Generalnie efektem końcowym musi był pastylka która wygląda i działa tak samo jak iButton...
Całego kodu nie mogę podrzucić, bo: - nie mam odczytu z eepromu, - nie wiem, czy zapis do eeprom ma być jednorazowy w momencie programowania procesora, czy ma być jednorazowy po pierwszym uruchomieniu programu, czy ma być wielokrotny w dowolnym momencie np. po zmianie termometru i wciśnięciu - dajmy na to - dowolnego guzika, - nie mam zrealizowanego...
Ręce to opadają i masz rację ;) Masz błąd w definicji zmiennej do której wpisujesz ID czujników to nie jest jeden bajt tylko tablica 8x8bitów czyli 8 bajtów. Adresujesz nie istniejące czujniki bo ich adresy sa niepoprawne, wysyła procek ciagle ten sam bajt. Dim Adres1 As Byte 'adres pierwszego Dim Adres2 As Byte 'adres drugiego Dim Adres3 As Byte 'adres...
Witam, podłączam 4 czujniki temp ds18b20 poprzez 1wire do atmega32. Chciałbym zapisać ich id do eepromu a potem odczytać z tablicy. [syntax=basic4gl]Dim Id1(8) As Byte zapis: For C = 1 To 8 Step 1 writeeeprom id1(c), c Next C odczyt: For C = 1 To 8 Step 1 readeeprom id1(c), c Next C wyswietlanie: For C = 1 To 8 Step 1 Lcd Hex(id1(c)) Next C[/syntax]...
No, tylko że to wymaga mocnego wsparcia programowego. Powiedział bym że nawet bardzo mocnego. Chodzi mi o to że całe menu trzeba robić. Zapisywać do EEPROMu. Itp. Nie mówiąc już o tym że urządzenie musi posiadać wyświetlacz. Podczas gdy można zrobić 1Wire na kilku IO, albo dać ten jeden układ 4051 za 50gr i mieć to z głowy. Przy większej liczbie czujników...
Czyli jednak nie jest to jednak "wszystkomająca" płytka :-( W projekcie jest goldpin PP2 o oznaczeniu battery i tam miało być podłączone zasilanie RTC. O supercapie nie pomyślałem. Ale płytka ma cel wyłącznie dydaktyczny. 1wire nie zrobiłem ponieważ nie korzystałem z tego interfejsu. Kiedyś w jednym z projektów korzystałem z DS2438 ale jakoś nie przypadło...
Witam Głowie się nad problemem autoryzacji dostępu. Widziałem kiedyś takie fajne zamki gdzie się przykładało pastylkę i zamek się odblokowywał. Zapytałem się google i znalazłem że takie pastylki robi dallas. Nie wiem czy dobrze rozumiem ale na TME doczytałem sie że oprócz takich które mają numer wypalony w środku (DS1970) są jeszcze takie które mają...
Schemat narysowany przeze mnie różni się tylko brakiem układu MAX232 na płytce, i odpuściłem sobie rezystory i diody przy wyświetlaczu. Są one chyba zbędne, jak wszystko będzie zasilane z ok 3,6V. Poza tym wszystko jest połączone tak jak na schemacie Jacka. Może faktycznie dać pamięć flash? Zawsze też można dać 2-3 eepromy. Co do karty SD to chyba musiało...
Z braku sukcesów w programowaniu funkcji search_rom 1Wire rozwiązałem problem następująco: 1) użytkownik podłącza jeden czujnik pod 1Wire, program wykonuje funkcję read_rom, użytkownik ustala numer czujnika który aktualnie podłączył. 2) program zapisuje tak odczytany ROM do pamięci EEPROM procesora 3) z każdym czujnikiem użytkownik podstępuje dokładnie...
Staram sie napisać programik w Bascom, który odczyta mi numery seryjne z termometrów dallasa DS1820 (docelowo 3-4 termometry) ma go zapisać w pamieci eeprom procesora, a nast ma być odczytany. Na końcu użyłem komendę dla wyświetlenia na lcd ale jakoś mi to podejżanie działa ponieważ nie wyświetla mi znaków a tylko jakieś "9". Może źle odczytuje lub...
Dziękuje za rady. Użyłem biblioteki którą podałem w poprzednim poście uprzednio ją modyfikując (wyrzuciłem wszystko co nie było związane z obsługą dużych liczb, szyfrowaniem RSA i konwersja na hex) Całość czyli owa biblioteka + klucz publiczny zapisany w tablicy char + dodatkowe biblioteki do obsługi UART i 1wire mieści się w Atmedze32 zajmując ok 83%...
(at)MMarek17 - pomysl "sciagi" podsunął mi sor (tu respect dla niego) w technikum ale troszke innej!! po mojej modyfikacji podstawą projektu ma być mikrokontroler PIC tylko nie wiem jaki wykożystać (wiem ze uP mają mały pobór mocy),ale nie znam tego typu układów, umiem programowac (i to chyba nie najgorzej uP ATMELA c'51, ale te sie do tego celu nie...
Witam, narazie napisałem tylko tyle ;( $regfile = "m8def.dat" $crystal = 8000000 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Pinc.2 , Db5 = Pinc.3 , Db6 = Pinb.2 , Db7 = Pinb.2 , E = Pinc.1 , Rs = Pinc.0 Config Rc5 = Pind.2 Config 1wire = Pinb.0 Config Sda = Pinc.4 Config Scl = Pinc.5 'zapis i odczyt danych z eeprom Dim A As Byte Const...
Schematu jeszcze nie mam jak narazie zajełem się softem, ale zamierzenia są takie: - magistrala 1wire podłączona do Pind.6 - diody sygnalizujące stan pracy urządzenia Pinb0- Pinb3 - przekażniki podłączeone do Pinb.4i Pinb.5 kontrolera przez układ ULN2800. Układ w zamierzeniach sterować ma elektro ryglem furki przy wejściu na posesję. Jak opanuję soft...
Witam... chodzi o modul dyspropagowania konfiguracji wprowadzonej z kompa (RS232) po 1wire do modulow automatyki domowej - tzn. chcialem zapisac w nim "karty" wszystkich urzadzeni (w formie struktury), a nastepnie 1 podlaczac urzadzenie i "1 przyciskiem" konfigurowac go (lub tez konfigurowac wszystkie urzadzenia zdalnie)... heh.. szkoda, ze nie da sie...
na pewno czujniki są chińskie Wywal je. W podróbkach często jest mniejsza rozdzielczość pomiaru, mała dokładność, problemy z eeprom co jest sprawdzone empirycznie. Dodano po 2 Czujnik podłączony jest kablem o długości 3 m kupionym razem z czujnikiem zalanym żywicą. Na linii 1Wire nie ma żadnych zabezpieczeń Nic dziwnego, że w pewnych warunkach są problemy....
Cokolwiek co jest TYLKO do odczytu można skopiować, jedyne rozwiazanie to użycie elementu który pozwala działać na zasadzie "zapytanie" - "odpowiedź". Np układy 1wire z algorytmem SHA albo drugi mikroprocesor który tylko ma algorytm generowania odpowiedzić. Można użyć np karty goldwafer odpowiednio przyciętej do rozmiaru małego SIM`a i złącza do karty...
No tak to właśnie zrobiłem... No chyba nie bardzo :D Przetestuj ten kodzik :D [syntax=vbnet]$regfile = "m32def.dat" $crystal = 16000000 Config Submode = New Config Lcd = 20 * 4 Config Lcdpin = Pin , Db4 = Portb.2 , Db5 = Porta.0 , Db6 = Porta.1 , Db7 = Porta.2 , E = Portb.3 , Rs = Portb.4 Config Pind.2 = Input : Set Portd.2 : Ok Alias Pind.2 Config...
zamiast takiej plątaniny kabelków, rezystorów i Bóg wie czego w SMD lepiej zastosować: 1* stabilizator napięcia (do zwykłego COM) / ft232RL (do USB) 1* DS2480B i mamy piękny adapter do urządzeń 1wire (nie tylko pastylek iButton) współpracujący m. in. z oprogramowaniem 1 wireviever --- co do zabezpieczenia tymi pastylkami, to wystarczy zastosować jakiś...
http://obrazki.elektroda.net/29_12650436... Witam. Chciałbym przedstawić moją nową konstrukcję - rejestrator temperatury z obsługą kart Secure Digital (SD). Projekt powstał oczywiście w celach naukowych. Podstawą układu jest moja płytka testowa z mikrokontrolerem ATMega32. Dołączyłem do niej termometr cyfrowy DS18B20, zegar RTC DS1307 oraz...
...A czujniki są raczej mało awaryjne, u mnie już drugi rok kilkanaście chodzi bez problemów. Zgadza sie, są mało awaryjne, ale istnieją czasem dość niesprzyjające warunki. Ja te czujniki stosuje w aucie do pomiaru temperatury na zewnątrz. Czujnik umieszczony w przednim zderzaku. Po roku, pomimo podwójnego termoskurcza dostała się do wyprowadzeń woda...
Nowości, świetna rzecz, ale... stare dobrze się trzyma. Nie do wszystkiego należy przykładać miarki ze złotówek. W całym projekcie jest wiele istotnych elementów. Jednym z nich jest to, że na C51 nidgy nie zawiodłam się, na AVR to i owszem, są przypadki. Najwięcej nerwów zjadł mi AT90S8515 z trzymaniem danych w EEPROM oraz ATMEGA103 (swoją drogą fajny...
Witam, moze troszke nie w temacie, pytanie do Xaveri czy mozesz opisac jak wydusiles z 18B20 0.1C, z moich praktyk wynika ze on juz sie gubi w tm zakresie. Pozdrawiam Żeby uzyskać 0.1°C trzeba układ zasilić normalnie (3 przewody), a nie przez magistralę 1Wire. Problem znika, gdy zastosuje się pamięć DataFlash. Tania, łatwa w obsłużeniu. 16MBit kosztuje...
Nowy kod źródłowy - dodałem według porad dynamiczne szerokości literek, nieco poprawiłem polskie czcionki i odzyskałem nieco flasha przenosząc napisy wysyłane po RS232 do dotychczas nieużywanej wbudowanej pamięci EEPROM procesora - obecnie zajętość pamięci: FLASH: 92% RAM: 24% EEPROM (w procesorze): 90% Wkrótce postaram się zamieścić filmik z działania...
(at)PROXAQQ Kompilowałeś dla ATmega8? Jaka optymalizacja? Jaki kompilator GCC? Spor różnica w zajętości pamięci. Posiadam 'zestaw kompilujący' jak Ty, a wynik mi wyszedł jak koledze PROXAQQ Build started 23.10.2013 at 15:04:38 avr-gcc -mmcu=atmega8 -Wall -gdwarf-2 -std=gnu99 -DF_CPU=1000000UL -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums...
Witam, mam do rozwiązania problem zapisu do pamięci pewnych danych a później wysłanie ich do innego urządzenia więc kilka pytań: 1. którą pamięć wykorzystać? wiem że EEPROM jest typem pamięci nieulotnej i w czasie idle (sleep) dane nadal są przechowywane ale wadą jest ograniczona żywotność. SRAM z tego co udało mi się przetłumaczyć nadaje się bardziej...
Dzięki wielkie za w/w funkcje w C :). Które przedstawiająsie dość prosto :). To jest podstawa , a reszta funkcji/procedur wysyłających/odbierajacych bajt/bajty , korzysta z owio(). Tak...podobnie jest w EEPROMach. Funkcje sprawdzone dla F_CPU od 2MHz do 11.059200 MHz.Na wewnętrznym oscylatorze 1MHz , działać nie chciały. Ja pracuje na zewnętrznym kwarcu...
http://obrazki.elektroda.net/23_12758251... Witam, chciałbym zaprezentować konstrukcję termostatu którą wykonałem na zaliczenie przedmiotu na studiach. Do budowy termostatu wykorzystałem: atmega8, cyfrowe czujniki temperatury DS18B20 oraz wyświetlacz 2x16 znaków. Program: Program do atmegi napisany jest w asemblerze. W programie zaimplementowana...
Zrobiłem takie coś, ale nie działa ;/ $regfile = "m8def.dat" $crystal = 8000000 $baud = 9600 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portc.2 , Db5 = Portc.3 , Db6 = Portb.2 , Db7 = Portb.1 , E = Pinc.1 , Rs = Pinc.0 Config Rc5 = Portd.2 Config 1wire = Portb.0 Config Sda = Portc.4 Config Scl = Portc.5 Declare Sub Read_eeprom(byval...
Warto zastanowić się jak częste będzie odświeżanie wyświetlaczy i w jakim stopniu (całość zawartości/dane o aktualizacjach) i co za tym idzie jaka prędkość transmisji oraz częstotliwość jej powtórzeń. Adresowanie np 1-255 -> dane/komenda wysłane do określonego modułu (adres zworkami lub programowany w eeprom) Adresowanie na 0 -> dane/komenda do wszystkich...
Witam wszystkich Forumowiczów! Jestem uczniem 3 klasy technikum i już od pół roku zacząłem interesować się programowaniem uK. Pisałem w C bo to dla mnie prosty język. Ostatnio zadałem sobie problem (no dobra chcę zaszpanować przed kumplami :P). Chcę zrobić dobory rejestrator temperatury w pokoju. Wybrałem sobie uK ATtiny 2313, układ DS1820 (czujka temperatury)...
I tu już klapa. Nie mogę sobie pozwolić na to aby w przypadku awarii czujnika ponownie grzebać w programie. To musi działać tak że odpinam uszkodzony czujnik i wpinam nowy. Potem restart modułu i wszystko działa.. Nie chcę się upierać, że odczyty wszystkich czujników na jednej magistrali to najlepszy sposób ale kurka wodna ;) .... dla mnie większym...
Z pewnych powodów, nic chcę za bardzo udzielać sie w temacie 1-Wire ale niedawno był podobny problem. Pewnie masz "żółtka" są z nimi problemy. Czasem pomaga zmiana pullup na 2,2k ale z tego co widzę po oscylogramach to raczej nie ten przypadek. Fakt, że oscylogramy są "oszczędne", dobrze jakbyś pokazał więcej. Próbowałbym odczytać przez searchrom adres...
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...
Najbardziej trafnym sposobem odczytu ROM poszczegolnych czujników jest przypinanie je pojedynczo do układu i zapisywanie ich numerów w pamięci EEPROM. Następnie odczyt EEPROMU przy pomocy programatora. Sposób sprawdzony, wszystko działa. Najbardziej trafnym sposobem jest ich odczyt i wyświetlenie np na LCD jak ktoś już wyżej napisał, albo odczyt i...
Proszę bardzo[syntax=basic4gl] 'Copyright Robert Wołgajew, 2012 'Wersja z dnia 26.04.2012 $regfile = "Attiny2313.dat" $crystal = 1000000 'Fusebit CKDIV8 = 0 -> zaprogramowany (ustawienie domyślne producenta) $hwstack = 32 $swstack = 32 $framesize = 32 'Konfiguracja wyświetlacza LCD Config Lcd = 16 * 1 Config Lcdpin = Pin , Db4 = Portb.5 , Db5 = Portb.2...
http://obrazki.elektroda.net/62_12721172... Witam. Parę miesięcy temu przedstawiłem projekt sterownika do C.O i pompki do grzania wody. Od tego czasu instalacja grzewcza powiększyła się o kolektory słoneczne, oczywiście domowej roboty :D, wykonane przez mojego niestrudzonego Tatę. Zaistniała więc potrzeba rozbudowy sterownika. Poprawione detale...
http://mikrokontrolery.net/avr_c_10.htm z tego korzystałem, z tego korzystał kolega, jemu działa, mi działa, wielu innym działa (dla 1 czujnika). Zapisu do eeprom i pamięci ds18b20 jeszcze nie napisałem. #include <avr/io.h> #include <util/delay.h> #include <avr/interrupt.h> //#include <avr/signal.h> #define DQ 7 #define SET_DQ...
Witam Jestem w trakcie tworzenia projektu mającego na celu zczytywanie temperatury z magistrali 1Wire i przesyłanie dalej za pomocą Ethernetu (Wiznet w3100a). Udało mi się skonfigurować Wizneta, pingował się świetnie. Ponieważ miałem problemy z utworzeniem serwera postanowiłem dodać kilka diodek za pomocą których mógłbym debugować program. Kiedy wgrałem...
To może spróbuj cos takiego: ... Deflcdchar 1 , 4 , 10 , 4 , 32 , 32 , 32 , 32 , 32 Dim T1 As Integer , K As Byte , L As Byte Dim Status As Eram Byte At 1 Dim Eid(16) As Eram Byte At 2 Main: Cls Do L = 0 '-------------------- For K = 1 To 9 Step 8 Home 1wverify Eid(k) 'sprawdź , czy układ o podanym ID ,podłączony jest do magistrali...
Witam. Mam problem z zapisaniem i odczytem z eepromu. Po pierwsze plik z epromu zapisuje się osobno z rozszerzeniem eep czy w kodzie programu ?? Po drugie chciałbym aby ktoś sprawdził mój kod wszystko działa, zapisuje największą temperaturę ale chyba jednak w flash'u bo jak odłączam zasilanie i załączam to ta temperatura zostaje skasowana :( bardzo...
jeszcze nie wgłębiałem się dokładnie w fuse-bity, nie znam sięw tej tematyce jeszcze raczej są wporządku, płytkę kupiłem razem z atmegą która miała je już ustawione poza tym wszystko inne chodziło po 1wire czy PCF8574 po I2C Co do programu to zrobiłem zmianę i teraz działą OK: Const Addressw = 162 'adres zapisu Const Addressr = 163 zmieniłem adresy...
Próbuję skompilować i wrzucić na ATtiny13A PU program Entering programming mode. Programming mode enabled. File content is too big to fit in Flash memory! Programming mode disable. W datasheet widzę: High Endurance Non-volatile Memory segments – 1K Bytes of In-System Self-programmable Flash program memory – 64 Bytes EEPROM – 64 Bytes...
Najlepiej zacznij od kursu Arduino, darmowy jest np. tu: https://forbot.pl/blog//kurs-arduino-pod... Ściągnij biblioteki do 1Wire, Ds18b20, LCD, najlepiej kilka, naucz się ich używać bez delay, wybierz, która Ci leży najlepiej, rozważ również inne czujniki np. LM35. Twój program powinien być "wielozadaniowy",...
http://obrazki.elektroda.pl/2352937000_1... Zaprojektowany i wykonany układ uruchomieniowy powstał jako część dyplomowej pracy inżynierskiej na wydziale Elektronika i Telekomunikacja. Tytuł inżyniera obroniłem w 2010 roku ale dopiero niedawno postanowiłem przedstawić szerszej publice urządzenie mojego autorstwa. Urządzenie wraz z zestawem...
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...
A wiec... dziekuje za odpowiedź:) teraz małe sprostowanie, nie uzywam układów DS18B20 tylko DS1820, odczyt ID pastylki przeprowadzam jednorazowo, zwierajac jedna z czterech zworek na płytce podłaczajac tylko jeden czujnik i właczajac układ co powoduje zapis ID do EEPROMA, czynnosc ta powtarzam 4 razy dla czterech ds-ów za kazdym razem przykładajac tylko...
Kwarcu nie mam ustawiony mam na wewnętrzny oscylator RC 4Mhz, ale nie wiem czy to ma duży wpływ, gdyż doświadczenia są wykonywane w przyjaznych temperaturach. A oto mój program $regfile = "m16def.dat" $crystal = 4000000 config 1wire= portb.7 $baud = 2400 Do 1wreset 1wwrite &HEE 1wwrite &HAA wait 1 t=1wread (1) print t Loop End Na wyświetlaczy...
Witam! Buduje sterownik do kolektora słonecznego i próbuje rozwiązać problem znikających nastawień przy zaniku zasilania. Potrzebuje wpisać zmienną histerezy do pamięci EEPROM którą będzie można zmienić zależnie od potrzeb. Zaczynam od definicji: static EEMEM uint8_t histereza = 3; Odczyt/zapis za pomocą komend: uint8_t histereza = eeprom_read_byte(&histereza);...
Witam serdecznie, Chcę zrobić sterowanie wentylatora w łazience takie, żeby wentylator włączył się gdy wilgotność powietrza przekroczy pewną wartość. Nabyłem więc czujniki DHT11 pracujące pod 1wire. Walczę z problemem już jakiś czas i nie mogę sobie poradzić. Znalazłem artykuł na ten temat : https://serwis.avt.pl/manuals/AVT3079.pd... Przystosowałem...
To już wiadomo wszystko. W aplikacji wyraźnie jest napisane!!! Note 1: For parasite-powered DS18B20s, the master must enable a strong pullup on the 1-Wire bus during temperature conversions and copies from the scratchpad to EEPROM. No other bus activity may take place during this time. W trybie Parasite-Powered DS18B20 niestety tak sie nie zasila czujników!!!...
Futrzaczek czy ten kod, który pokazałeś to cały kod czy po prostu uznałeś że początek jest nieistotny i dlatego go nie wkleiłeś. Cały. Nigdy wcześniej nie dawałem deklaracji $CRYSTAL i programy działały poprawnie. W Bascomie od zawsze ustawione było 4MHz (domyślnie). Nie pytać się jak, ale działało. Aż przestało. Grzebałem natomiast w fusebitach, mając...
Bardzo fajna płytka testowa. Jednakże kwarc powinien być wymienny, zwłaszcza jeśli ma się testować programy. Wyjście 1WIRE i gniazdo ARK do podłączenia urządzeń zamiast dedykować je do konkretnego układu. Wiem, że bardzo rzadko się z tego korzysta, ale powinno być wyprowadzony jeszcze PIN R/W od wyświetlacza. Co do RTC, pamięci EEPROM, czy karty pamięci...
Przepisujesz z ksiazki? :cunning: Popatrz dobrze czy np. jest tam cos takiego: $regfile = M8def.dat Tutaj masz poprawny kod: '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...
VAG - błąd ECU - 18048 - Internal Contr. Module (EEPROM) Error P1640 - 35 Witam szanownych kolegów! Od niedawna posiadamy Sharana 2001 z silnikiem 115KM. Kupiliśmy go z mrugającymi świecami żarowymi. Auto jeździ i nic się nie dzieje złego. Poprzedni właściciel powiedział, że zmienił licznik i potem zaczął mrugać. Samochód posiada dołożony immobiliser...
Witam. Naskrobałem coś takiego: Dodano po 33 Aha, jeszcze dwa pytania. Czy DS może być blisko kwarcu? Mam go wlutowany ok. 1cm od kwarcu. Jaka jest żywotność pamięci eeprom w DS? 100000 zapisów jak w przypadku Atmega, czy więcej? Odczytuję temperaturę co pięć sekund i martwi mnie obecność eeprom w DS.
Słuchajcie mam taki problem nie mogę w języku C dojść ładu z procedurą wysyłającą bajt do pamięci 24C04. Procesor taktuje zegarem 16MHz. W Bascomie wszystko pięknie śmiga a w C nie i nie wiem dlaczego. Poniżej zamieszczam procedury pomóżcie bo już 2-gi dzień siedzę. #include <reg51.h> sbit dioda1 = P3^3; sbit scl = P1^3; sbit sda = P1^4; #define...
W chwili gdy obsługuje 1-Wire, Bascom ZAWSZE nawet na czas generowania resetu, co trawa ok 500us, później presence, co daje razem ok 800us, zawiesza przerwania. To samo w czasie transmisji danych, transmisja bajtu to ponad 500us zawieszone przerwania. W tym czasie nie wykona się przerwanie od timera, od i cała tajemnica. Ale zabobony. Każdy może otworzyć...
http://obrazki.elektroda.pl/4662811600_1... Kolejnym prostym projektem, jaki postanowiłem opublikować, jest higrometr do ultradźwiękowego nawilżacza powietrza.W zeszłym roku podczas mrozów wilgotność spadała tak mocno, że mimo mojej generalnej odporności na różne dziwne warunki, stawało się to nieznośne. Ciągłe uczucie zapchanego nosa,...
A przepraszam za skołowanie:) Te konkretne pastylki DS1990 działają jak ten zepsuty. Mają swój zakodowany unikatowy numerek. Podłączasz ją do 1Wire i wysyłasz zapytanie: 1wreset 1wwrite &H33 Adresik(1) = 1wread(8) I już w zmiennej adresik masz 8 bajtowy numerek pastylki (bascom AVR). Są tez pastylki do których dodatkowo możesz zapisać kilka bajtów swoich...
Czyli przy tym 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 Config Pinc.5 = Output 'linia PB1 jako wejściowa...
(at)excray Masz trochę racji ale nie całkowicie. Do inicjalizacji wciąż używamy tych samych rejestrów, różnica jest tylko taka, ze nie czekam aż te wartości zaczną obowiązywać (2 cykle TM2) i teraz: miało by to znaczenie, gdybym chciał przechodzić do sleepa, lub gdybym chciał zmieniać wartości w jednym z rejestrów TIM2, ale te ustawiam tylko raz, na...
Witam, Zmontowałem kiedyś sygnalizator jak w temacie. Działa dobrze, sygnalizuje przekroczenie górnej temperatury nastawionej, sygnalizuje spadek temperatury poniżej 0 stopni. Przydała by mi się jeszcze funkcja sygnalizacji przekroczenia dolnej nastawionej temperatury. Może ktoś podpowie co zmienić w kodzie ? KOD: [syntax=c]/*****************************...
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...
Przedstawiam działający kod na atmega32. Można go adaptować na większą liczbę czujników. Mam dwa podłączone i działa bez problemu. Kod nie jest zoptymalizowany. 'Odczytanie Id czujników Sub Termometr_id Ilosc_czujnikow = 1wirecount() Cls Lcd " test term " Lowerline Lcd " wcisnij prg" Wait 1 Upperline Prg = Prgp If Prg = 0 Then 1wreset Ilosc_czujnikow...
Rezystory są już dane na płytce, zresztą zegar na PCF działa bez zarzutu ( no może trochę śpieszy, ale to kwestia kondensatora przy kwarcu ) sprawdziłem połączenia - nóżki 5 czyli SDA ( 24C02 i PCF8583 ) są podłączone do 23 nogi uC, czyli PC1-SDA. Podobnie z SCL. Teraz zrobiłem tak, że odczyt jest po włączeniu/resecie ( przed pętlą główna ), a zapis...
Witajcie. Mam baterię od PDA konkretnie chodzi o model HTC Blue Angel. W baterii siedzi kontroler DS2760 ładowania, stanu baterii który komunikuje się z PDA po przez interface 1wire. W instrukcji serwisowej do PDA jest informacja odczytaniu parametrów baterii i o kalibracji baterii przy użyciu jakiegoś software i hardware. W sieci na ta chwilę nic nie...
Niestety próbowałem sam, ale juz nie mam siły. Przeczytałem tematy na forum jednak nie widze w nich rozwiązania problemu, dlatego zacząłem nowy temat. Problem tkwi w tym, że otrzymuje z układu DS18B20 po dokonaniu odczytu z rejestrów wynik w postaci FFFF. Program piszę pod ATMega48. Czujnik połączony jest z zasilaniem z stabilizatora 7805. Najpierw...
Witam, Dodałem CRC adresów czujników. Nie jestem do końca pewny czy to jest dobrze ale działa, http://obrazki.elektroda.pl/3672867600_1... Dopinam 8 - 28C4CD2D0500004B, ale ostatni pokazał BŁĄD CRC http://obrazki.elektroda.pl/7363998500_1... Dopinam 9 - 28FB2C2E0500001D http://obrazki.elektroda.pl/6511305200_1...
podaje całą procedurę $regfile "m32def.dat" $crystal = 8000000 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portc.0 , Db5 = Portc.1 , Db6 = Portc.2 , Db7 = Portc.3 , E = Portc.4 , Rs = Portc.5 Config 1wire = Porta.0 Declare Sub Odczyt_temp Dim Temperatura(2) As Byte Deflcdchar 0 , 12 , 18 , 18 , 12 , 32 , 32 , 32 , 32 '***************************************...
Byłby ktoś w stanie mi z tym pomóc? Miałoby to wyglądać tak: * sterowanie wentylatorami czasowo * sterowanie poprzez odczyt temeratury 2 osobne funkcje (działa albo jedno albo drugie). Do tego co mam dołożenie wł/wył czasowego (w zupełności wystarczy najprostsze z możliwych) OK, Popatrz na swój program; sterujesz ustawienia trzema przyciskami, z których...
Teraz mam inny problem. Chcę robić pomiar temperatury i zapisywać na kartę SD. Używam do tego modułu prototypowego tego autora: Ponieważ post dotyczy innego tematu niż oryginalny wątek, temat podzieliłem. Na przyszłość proszę w przypadku napotkania problemów niezwiązanych z oryginalnym tematem postu zakładać nowy wątek. W ten sposób inni będą mogli...
Mam sobie taką o to tablicę w epromie: P.S. Wiem, że pisze się uŻytkownik, ale chcę wiedzieć czy prowadzący przeglądają kody programów w raporcie:P
Wiem że zżera. Ale nie wiem w jaki inny sposób mógłbym to rozwiązać.Pewnie , lepsze było by jakieś bezpośrednie ładowanie grafiki na LCD. W przypadku "showpic" nie ma problemu ale znowu grafika musi siedzieć albo bezpośrednio w atmedze albo w zewnętrznym eepromie co w obu tych przypadkach nie ma miejsca bytu. Zapewne C lub asm poprawiło by wyświetlanie...
Chodzi o te zaznaczone ustawienia z obrazka. Są wstawiane jako domyślne jeśli się ich nie wpisze do kodu. Chodzi o to, że kiedy Bascom skacze do jakiegoś Sub to odkłada na stos te wcześniej omawiane dwa Bajty. W takim Sub już może tego nie widać, ale tez skacze np. do procedury odczytu czujników 1Wire. To już np. cztery bajty a w tym momencie nadchodzi...
Witam. Mam problem z programem który w inny urządzeniu działa jak należy. Program odczytuje numer ID z DS18B20 zapisuje w pamięci a później odczytuje go z pamięci i dzięki niemu odczytuje temperaturę z jednego z dwu czujników. Problem w tym że tej temperatury nie odczytuje. Procesor "widzi" czujniki bo wyświetla ich ID. Same czujniki też mogę odczytać...
eeprom 1wire bascom esp8266 1wire czujnik 1wire
przekroczeniu transferu danych śmigła elektrowni wiatrowej oleju skrzyni biegów sharan
układy zasilające adapter bluetooth
Canon PIXMA IP3500 - 5-krotne miganie żółtej diody Jak podłączyć czujnik obrotów do obrotomierza?