Można wyświetlać temperaturę w podmenu "wybór_Ds" ale trzeba zmienić cały program. Chyba nie jest tak trudno zapisać sobie cztery ID czujników i wiedzieć później który gdzie przypisać. Najlepiej osobno podłączać każdy czujnik i na naklejce na kablu przy czujniki zapisać jego ID. Wiedząc gdzie jakie jest ID czujnika można już mu w podmenu przypisać odpowiednią...
http://obrazki.elektroda.pl/2126980700_1... System monitorowania środowiska, oparty o interfejs LoRa IoT składa się z stacji bazowej zbudowanej z wykorzystaniem modułu Arduino Mega z bramką LoRa oraz zdalnych stacji opartych na Arduino Feather, które łączą się z stacją bazową poprzez radiowy interfejs LoRa. System pozwala na monitorowanie...
Ja to robię tak jak w kodzie poniżej. Od razu jest zabezpieczenie przed błędnym odczytem klucza np. gdy pastylke szybciej odłączymy niż procek zdąży ja odczytać. Często się zdarza ze odczytane zastają pierwsze bity a reszta to FF w układzie daje rezystor podciągający 4.7K Sub Odczyt Disable Interrupts Odczyt_poprawny = 0 1wreset Waitms 50 1wreset If...
Witam Przeglądając tematy na Elektrodzie nie znalazłem odpowiedzi na 2 konkretne pytania. Jak przydzielane są DSy? Czy o kolejności rozpoznania czujników decyduje ich numer ID. Czym starszy numer, to czujnik następny w kolejności? Rozumiem że podłączenie 1Wire- GND i Vdd razem, DQ podciągnięte do 5v. Na odczyt potrzeba 750ms. A co z połączeniem 2Wire,...
Tzn. już dowiedziałem sie o co chodzi. Mam podłączyć do mikrokontrolera przez szynę 1wire kilka switchów (konkretnie układów DS2405) i odczytać z nich numery seryjne i jeszcze chyba stan wyjśćia PIO. O ile z numerami seryjnymi mam tylko taki mały problem, że jak zmieścić 8 bajtów w 1 bajcie?: opis z pomocy Bascoma: Dim Ar( 8 ) As Byte czyli oznacza...
Podłączyłem układ DS1820 (dokładnie ten numerek) do pinu PB0 układu ATTiny2313. Linia danych jest podciągnięta do Vcc rezystorem 1kΩ. Taktowanie wewnętrzne 8MHz. Fragment kodu odpowiedzialny za odczyt czujnika: Numer seryjny16 163 113 94 2 8 0 170 Odczyt: 255 255 Odczyt: 255 255 Odczyt: 255 255 Odczyt: 255 255 Odczyt: 255 255 Odczyt: 255 255 Odczyt:...
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 Szanownych Kolegów. Tworzę właśnie sobie hobbystycznie driver do urządzenia 1wire (popularny termometr). Napisałem kod na AVR i odpaliłem podłączając na magistralę narazie tylko jeden czujnik. Po resecie otrzymuję presence pulse jak jest podłączony i nie otrzymuję nic jak nie jest podłączony zatem zachowanie ok. Następnie wysyłam komendę SEARCH...
Tak wygląda mój kod nadajnika Wyslij_rfm12 wywołanego przez flagę Flaga_wyslij
Po resecie DS-a wysyłając do niego #33h wywołujemy funkcje która umożliwia odczytanie jego numeru unikatowego. ... Hmmm.... Powyższe dotyczy sytuacji , gdy na magistrali jest jeden DS.Skoro jest jeden , to po co nam numer seryjny :?: Jeżeli na magistrali jest więcej niż jeden DS , to rozkaz #33h (read rom) możemy "wynieść do piwnicy", a skorzystać...
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...
Odczyt pastylki zrobiłem już wcześniej. To mi akurat wyszło. Działa normalnie. Oto cały program: $regfile = "m8def.dat" $crystal = 1000000 Config Lcdpin = Pin , Db4 = Portb.0 , Db5 = Portb.1 , Db6 = Portb.2 , Db7 = Portb.3 , E = Portb.6 , Rs = Portb.7 Config Lcd = 16 * 1a Config 1wire = Portd.5 Config Scl = Portd.0 Config Sda = Portd.1 Dim...
A jak chcesz to obliczyć :?: Znając numer rozkazu i czasy logicznej "1" i "0" można ten czas obliczyć choć przyznam, że to nie jest poprawne rozwiązanie. Zły pomysł ;) Poczytaj sobie specyfikację magistrali 1wire i zastanów się , kto w układzie czytnik-mikrokontroler udający DS1990 jest master , a kto slave. Piotrek Masz rację, to sterownik inicjuje...
No hej! Więc miło że ktoś poruszył temat tego „badziewia” od Dallasa… Wszystko robię mniej więcej tak jak napisałeś… tzn. póki co nie bawię się numerami seryjnymi. Co do różnych przykładów dostępnych na stronach Dallasa, to też z nimi walczyłem… ale do sedna. Udało mi się odczytać pierwszy bajt numeru seryjnego mojego czujnika,...
Chciałbym dowiedzieć się, czy istnieje jakaś możliwość sprawdzenia, czy na szynie 1-Wire znajduje się układ zaadresowany komendą MATCH ROM. Z tego co widzę, nie ma jakiegoś potwierdzenia poprawnego zaadresowania. Spotkałem się z poradą, żeby odczytać dane ze slave'a i jeśli nie będzie on obecny, to zwrócone zostaną bajty 0xFF. Tylko, że wartość 0xFF...
Witam, napisałem w C funkcje do odczytywania i wysyłania danych na magistralę 1-wire, próbuje przetestować czy odczytywane numery seryjne zgadzają się z rzeczywistością. Odczytałem 8 bajtów od ds1820, pierwszy to numer rodziny 10h i to się zgadza, kolejne 6 bajtów to numer seryjny ale ten już się nie zgadza z tym co jest wygrawerowane na obudowie. Mam...
czesc dzieki za odpowiedz- chyba dobrze zrozumiałeś - dokładnie chodzi mi o sterowanie czyms - oprogramowanie ok, a jakie urządzenie / układ jak to się nazwa co może sterować prądem 230 - sterowanie pompami chyba tak dziala puszcza się prąd jak ma się zmienić. więc rozumiem podłączam coś - do tej magistrali co będzie widoczne przez system czyli będzie...
witam :) Szukam układów 1-wire: - umożliwiającego określenie stanu przełącznika/urządzenia czy jest włączony czy wyłączony - licznika impulsów 0/1 (przełączeń) rudi
Witam Zmieniłem sposób obsługi wyświetlania. Początkowo miałem tak : [syntax=basic4gl] '************ Zegar 8 wyswietlaczy LED + 74HC595 + PCF8563 $regfile = "m8adef.dat" $crystal = 8000000 $hwstack = 32 ' rozmiar stosu sprzętowego $swstack = 32 ' rozmiar stosu programowego $framesize = 32 $baud = 9600 '************ deklaracje portow - 74HC595 Config...
Chce odczytac dane z ds18b20 o danym ID. Czy to jest poprawna metoda? one_wire_reset(); one_wire_send_command(SKIP_ROM,numer id); one_wire_send_command(CONVERT_T,nume... id); one_wire_reset(); one_wire_send_command(SKIP_ROM,numer id); one_wire_send_command(READ_SCRATCHPA... id); tb1=one_wire_byte_read();...
Witam!! Posiadam obudowaną już pastylkę DS1990A wraz z czytnikiem z którego wychodzą dwa przewody, gdzieś wyczytałem, że jeden z nich to przewód informacyjny DATA a drugi to GND czyli masa. Chciałbym skomunikować się z tą pastylką za pomocą sterownika, który posiada RS232. Czy jest to możliwe, jak to zrealizować, w jaki sposób, chodzi mi o komendy będę...
Witam, Zajmuję się problemem standardu IEEE 1451, ale mój problem jest raczej uniwersalny. Sytuacja wygląda następująco. Mam 8 urządzeń - czujników inteligentnych. Sygnały wyjściowe każdego z tych urządzeń to sygnał analogowy (wartość jaką pomierzył czujnik) i sygnał cyfrowy (1-wire - chodzi o komunikację z pamięcią eeprom, która jest "przyklejona"...
Mam problrm z zapisem i odczytem danych do DS18B20. Program wykrywa czujnik jednak po podaniu komend do pomiaru temperatury a następnie odczytaniu danych z DS w zmiennych temp1 i temp2 są same jedynki. W tej postaci na wyświetlaczu mam "Ok11111111" Kod programu: [syntax=c]#define F_CPU 1000000 /* 1MHz zegar procesora */ #define CYCLES_PER_US ((F_CPU+500000)/1000000)...
Mam pytanie dotyczące magistrali 1 WIRE> Mianowicie nei mogę się doszukać w internecie dokładnej ramki tejże magistrali. Chciałem napisać procedury do obsługi tej magistrali w assemblerze ale nie mam ramki i nic niestety nie mogę zrobić. Jeśli ktoś chciałby jakieś procedury na I2C lub RC5 napisane w assemblerze dla 89cxx to piszcie maila. I jeśli ktoś...
Witam, mam pytanie. Może dla niektórych wydać się śmieszne i zbyt proste, jednak szukam i nie moge znaleźć na nie odpowiedzi. Załóżmy że mam 10 termometrów ds18b20 na jednej szynie. komenda schear rom określi mi ilości i rodzaje układów slave. Czy mogę w jakiś sposób podglądnąc ile ich jest oraz ten adres jaki jest zapisany w każdym z nich?? Drugie...
Witam forumowiczów, zacząłem realizować projekt zegarka, kalendarza i termometrów z owego linku: http://obrazki.elektroda.pl/6128170300_1... Proszę o porady i sugestie jak można rozwiązać ten problem :P
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...
Witam W oparciu o projekt Kolegi _Duch - rejestrator pogodowy zrobiłem swój ( na razie prosty ) rejestrator. Wykorzystałem podane w wątku pliki config_mmc.bas i Config_AVR-DOS.BAS . Na płytce testowej EVB 4.3 v.4 . Podłączenie z SD standardowe. Niestety nic się nie zapisuje na karcie SD ( próbowałem 2 Gb Kingston i 1 Gb Sandisk - formatowane na FAT...
Dokonałem optymalizacji kodu, rozmiar zmniejszył się o 2 %. Pilot RC5 działa, można zmienić czas/date, obsługę wyświetlania przeniosłem do przerwania Ale mam kłopot z wyświetlaniem kropki [syntax=basic4gl] '************ Zegar 6 wyswietlaczy LED + PCF8563 $regfile = "m32def.dat" $crystal = 16000000 $hwstack = 64 ' rozmiar stosu sprzętowego $swstack =...
Witam Mam układ, który mierzy dwie temperatury ( DS18B20 ), dwa napięcia ( PCF8591 ( pobiera czas ( PCF8563 ), a z powodu niedużego wyświetlacza ( 12 x 4 ) wskazania są zmieniane do 10 sekund po przepełnieniu Timer1. Układy PCF8563 i PCF8591 są podpięte z "zewnątrz" przewodami około 10 cm. Magistrala I2C ma obniżoną prędkość przez Config I2cdelay =...
Sporo tego ( obsługa SD, PCF8563 + menu do ustawiania daty, obsługa PCF8574 w przerwaniu INT1 )- ale nie ma problemu - zmieniła się tylko zawartość podprogramu Pomiar była taka, jak w pierwszym poście oraz wyłączyłem w wyświetlanie na LCD tych wartości wskazań z DS18B20, oczywiście dostosowałem pozycje wyświetlania do LCD 4*20 - załączniku spakowany...
Całkiem słusznie się gubisz, po prostu wariacja nastąpiła tuż po napisaniu postu. Jest tak: - po przekroczeniu temperatury ok. 70°C odczyt z małego pieca ustaje. Pokazuje się tylko wartość kalibracji (w moim wypadku 6 stopni), niekiedy powiększona o kilka stopni (góra 4). Niekiedy pokazywana wartość jest o kilkanaście stopni niższa od rzeczywistej....
Witam Po raz pierwszy ( lepiej późno niż wcale ) wykorzystałem wyjście CLKOUT układu PCF8563. Oczywiście podciągnąłem przez 10K do VCC. Dzisiaj po pierwszym kilkugodzinnym braku prądu, rano zegar był wyzerowany. Podejrzewam, że to przez podciągnięcie CLKOUT do Vcc. Jeśli to jest to, to może wystarczy włożyć diodę np. Schottky pomiędzy wyjście CLKOUT,...
Witam, Uczę się bascoma, i stworzyłem sobie programik z zegarkiem i termometrem, lecz na LCD temperatura miga mi na przemian z godziną oto kod: [syntax=basic4gl] 'definicja użytego procesora $regfile "m32def.dat" 'prędkość taktowania 16MHz $crystal = 16000000 $eeprom 'piny podłączenia LCD i definicja jaki LCD | 16x2 Config Lcdpin = Pin , Rs = Portb.0...
Bascom - wersja 1.11.95 Kod, no jest tego sporo: - zegar PCF8563 - Zapis na SD - dwa czujniki DHT11 - odczyt z PCF8574AP ( klawiatura ) - RC5 - ma być DS18B20 - ma być DCF77, ale nie doszedłem do tego momentu ( tzn testowałem na innym procesorze i działało ) Działa - zegar PCF8563 - dwa czujniki DHT11 - odczyt z PCF8574AP w przerwaniu ( klawiatura )...
Na stronie producenta: http://www.nordicsemi.com/index.cfm?obj=... jest datasheet, zwięzły, opisane to co najważniejsze, jest graficznie przedstawiony algorytm nadawania i odbioru. Transmisja jest bardzo prosta, zależy kto w jakim języku pisze, ja robię w avr-gcc ale robiłem też w bascomie, przykład w avr-gcc - tylko kawałek...
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"...
To tylko potwierdza że trzeba jednak kwarc zewnęrtzny. Ja przeprowadziłem wiele prób i doszłem do wniosku że ten wewnętrzny to można ustawiać dla magistrali I2C,1wire tylko dla odczytu numeru (pomiar temperatury już jest błędny). Pozdrawiam i czekam na efekty pracy.
1. inicjalizacja zmiennej polega na nadaniu jej konkretnej wartości. np I=1 to jest inicjalizacja ponieważ wiesz, że po tym napewno w I będzie liczba 1, jeśli w pętli stosujesz zmienną I do odliczania to samo zdefiniowanie pętli jest inicjalizacją gdyż nadaje jej pierwszą wartść oraz kolejne według pewnej reguły. 2. poto podaje sie adres komórki żeby...
Witam, Czasówki 1wire do zmiany. Sprawdzaj CRC numerów seryjnych.
Witam. Chciałbym odczytać temperaturę z czujnika DS18B20 przez długie i krótkie migania diodą. Np gdy mamy temperaturę 25 stopni to dioda sygnalizowała by dziesiątki za pomocą dwóch długich piknięć a jedności poprzez 5 krótkich. Dopiero zaczynam zabawę z Bascomem i kompletnie nie wiem jak się za to zabrać. Poniżej wklejam fragment kodu z odczytem temperatury....
A to niby dlaczego nie wolno stosować waitms ??? U mnie jakoś działa przy wielu czujnikach na jednej linii i co to ma wspólnego z wysyłaniem przez uarta ? W tym przypadku waitms nie zakłóca obsługi przerwań, wiec nie widzę problemu. Kolega namieszał trochę w procedurze "odczyt". Na początku wyszukujesz czujniki na linii 1wire, a później, w procedurze...
;* ;***************************************... ;*PROCEDURY OBSŁUGI MAGISTRALI 1-Wire DLA MIKROKONTROLERA AVR ;***************************************... ;* ;*Nazwa pliku :AVR_1Wire.asm ;* ;*Przeznaczenie :dowolny AVR, za wyjątkiem AT90S1200 ;*Kwarc :4MHz ;* ;*******************************OPIS****...
Pt100 i DS18B20 to całkiem różne czujniki temperatur i o ile sam wskaźnik/regulator nie jest przystosowany do obsługi obydwu rodzajów czujników to nie da się ich zamieniać. Czujnik Pt100 jest czujnikiem rezystancyjnym. Zbudowany jest z cienkiego drutu platynowego, którego opór elektryczny się zmienia pod wpływem temperatury. Im większa temperatura tym...
To nie jest poprawny zapis http://obrazki.elektroda.pl/3954802400_1... Życzę miłego dnia
Witam ! Skopiowalem sobie z Helpa bascomu taki oto kod... chce to skompilowac ale wywala blad najpierw przy: W = 1wirecount(ar(1)) pozniej: Ar(1) = 1wsearchfirst() Ar(1) = 1wsearchnext() Posiadam taki procesor jak jest zadeklarowany w kodzie...ale za Chiny nie chce to ruszyc :( '---------------------------------------... ' 1wirecount.bas...
To zależy jak są podpięte DS'y. Do tej pory wykorzystywałem max 2 DS'y, a podpinając je do '51 stosowałem oddzielne piny. Coś takiego: 1wire_1 Alias P3.3 'DS 1820 ch1 1wire_2 Alias P3.4 'DS 1820 ch2 ... ... 1wreset 1wire_1 1wwrite &HCC 1wire_1 1wwrite &H44 1wire_1 1wreset 1wire_2 1wwrite &HCC 1wire_2 1wwrite &H44 1wire_2 Jeśli podpinasz wszystkie razem...
Witam, Czy ktoś z Was ma doświadczenie jak szybko w OWFS pojawia się podłączony układ 1wire? Nie pytam o odczyt na przykład temperatury, ale zanotowanie podłączenia nowego układu, czyli odczyt unikalnego numeru. Załóżmy że RaspberryPi jest włączone, OWFS odpalony w tle, jakiś dowolny układ 1wire podłączony do odpowiedniego pinu i włączamy mu zasilanie....
informującego o zmianie temperatury co 1 stopień w górę lub dół To są założenia więc co każdy stopień ma być krótki sygnał. Warunek If T >= 200 then spowoduje że przekroczenie 20 stopni spowoduje sygnał. Muszę chwilę pomyśleć. Trzeba badać także różnicę pomiędzy odczytem poprzednim a następnym. Sprawdź to: (zmień procesor, konfigurację LCD, portów,...
Oczywiście do tego służy 1wiresearchfirst/next Jeśli korzystasz z megi lub innego uC z wbudowanym eepromem zapisuj numery do wew. pamięci lub zew. np AT24C16 i porównuj ze znalezionymi przyporządkowując im numery lub nazwy. Ten sam problem mam zamiar dziś przez noc rozwiązać ale na pierwszy rzut oka nie powinno być kłoipotu pozdr
Hey czyli problem jest w instrukcji Ss = Format(ss , " 0.0") wrzuć ten program i powiedz czy wszystko gra jeżeli tak będę pisał co zrobiłem. [syntax=basic4gl]$regfile = "m8def.DAT" 'deklaracja procesora, w tym wypadku Atmega8 $crystal = 1000000 'deklaracja cześtotlwiości pracy (wew oscylator 1MHz w zupełności wystarcza) 'Deklaracja portów od wyświetlacza...
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...
spróbuj umieścić obsługę 1wire w innym miejscu. być może podczas odczytu termometru obsługiwane jest np. jakieś przerwanie. w Bascomie b. trudno poustalać zależności czasowe i o ile program nie biegnie gładko dookoła, to często robi takie numery.
Tak się "macha" magistralą 1wire ;) //inicjacja DDRC&=~(1<<PC0); //PINC bit numer 0 - wejście PORTC&=~(1<<PC0);//bez pull-up'a - high impedance //reszta operacji DDRC|=(1<<PC0);// 1wire=0 DDRC&=~(1<<PC0);// 1wire=1 x=PINC & (1<<PC0);//odczyt 1wire Złożyć do kupy,dopisać...
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...
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...
Witam Przerzucając masę stron w internecie nic nie znalazłem na temat związku jak w temacie. Czy oprócz odczytu numerów ID oraz temperatury zrobił ktos coś ciekawego opierając się na magistrali 1wire? Proszę o podanie przykładów a głównie o obsługę DS1921. Pozdrawiam
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ś...
Oto mój program wykorzystujący LCD w trybie 4-bitowym, śmiga jak ... Jest tam obsługa LCD i 1wire, procedurki LCD łatwo wyłowić :) // ****************************************... // Project: Obsluga układu DS18B20 // Author: Zbigniew Chrobot // Module description: pomiar temperatury z DS18B20 kwarc 4MHz // wyswietlanie na...
Funkcja może przyjąć argument od 0 do AMOUNT-1 i wysyła na linię DQ rom'a z tablicy. [syntax=c] /***************************************... Wysyła 64-bitowy numer identyfikacyjny ROM, z tablicy rom[AMOUNT][8] wybranego urządzenia. ****************************************...
1wire numer odczyt 1wire 1wire numer seryjny
ustawic jezyk migająca dioda schemat pixel sterownik
lincoln electric lincoln electric
Jak rozhartować stal Hardox - metody i wskazówki Restart routera FunBox 1.0/2.0/3.0/6.0 Orange – jak bezpiecznie uruchomić ponownie?