Na początek taka uwaga: Driver Atmela bazuje na przerwaniach, w związku z czym wymaga globalnego zezwolenia na przerwania, czyli ustawienia bitu I w SREG. Z tego też powodu nie można używać go (w sposób przedstawiony w przykładzie obsługi PCF8563 Kod 3. .............. Owszem, tutaj również się program nie zawiesza. Ale też nic nie odczytuje. To, że...
Witam !!! Chyba coś źle zrozumiałeś. Jeżeli weźmiesz np: 30 sekumd i zamienisz to na BCD to dostaniesz 3 i 0 czyli 0011 0000 Jeżeli teraz z-andujesz to z 01111111 to dostaniesz dokładnie to samo. Z mojego doświadczenie a tym RTC wynika, że aby wystartował, wystarczy zapisać cokolwiek do rejestru sekund i już chodzi. Sprawdź tylko procedure zapisu do...
Witam, czy moze ktoś pomóc mi uruchomić prototypowy układ wykorzystujący RTC na DS1307? Naprawdę układ jest tak mało popularny? Usiłuję programować w C. Może ktoś mi tak po ludzku przybliżyć zasadę działania tego układu - jego obsługę. Może jakieś przykładowe procedury? Radzio gg:15179
Nie zrozumiałem,że chcesz powiedzieć ,że twój zegarek nie wyświetla sekund :) tylko pullujesz zegarek DS 3 razy na minutę ,żeby nie przegapić zmiany minuty :) Żartuję oczywiście :) metoda dobra jak każda :) Podeślij kawałek kodu obsługi i2c może znajdziemy babola. Podejrzewam, że układ DS podobnie jak niektóre PCF-y[phlipsa] blokuje stan zliczania czasu...
PCF8591 to przetwornik C/A i A/C a PCF8591 to ekspander, oba na szynę I2C. Wiecej mozesz sie dowiedzieć z not katalogowych. Wpisz w google nazwe *.pdf i znajdziesz :) Tak sam z DS1307, to zegar RTC formy MAXIM również na I2C. Wszystkie te układy mogą być przyłączone do jednej szyny. W BASCOMie są już gotowe procedury obsługi I2C i LCD więc musisz jedynie...
Jestem nowy na forum wiec witam wszystkich serdecznie:) Mam małe doświadczenie z AVR-ami wiec proszę o wyruzumiałość. Na początek zmontowałem sobie plytke z etmega32 i podłaczonym do niej wyświetlaczem i teraz chciałbym na owym wyświetlaczu wyświetlić godzine. Poczytałem troszkę i znalażlem ze dobrym sposobem podłączenia zegara rtc jest magistrala i2c....
Całe mnóstwo. Zadeklarowałeś zmienną wskaźnikową data bez wartości początkowej. Używasz tej samej nazwy dla argumentu procedury. Piszesz pod adres zawarty w data, ale również używasz wartości data i to zapewne nie jako adresu. No i ciekawostka: raz na jakiś czas wyświetlany czas przeskoczy o dwie sekundy, bo wyświetlasz czas na LCD nieco rzadziej niż...
Bo ma napisane oddzielne procedury startu i stopu do obslugi eepromu i rtc...
Skąd wiesz że nie trzyma danych? Może sam je kasujesz w procedurze dostępu do RAM? Lepiej pokaż kod.
Witam. Mam dwie zmienne czas_stop i czas_start Czas odmierza DS1307 jego zmienne czasowe to _hour , _min , _sec. Potrzebuje procedury która o godzinie czas_start ustawi Pinb.0 w pozycji 1 i o gadzinie czas_stop ustawi go w pozycji 0 . Reasumując port ma być w stanie 1 od czas_start do czas stop a reszta w pozycji 0. Zabrałem się do tego już kilka razy...
Witam kod wyglądana następującą: [syntax=basic4gl] $regfile = "m32def.dat" $crystal = 8000000 $lib "mcsbyte.lbx" $lib "ds1307clock.lib" Config Lcd = 16 * 2 Config Lcdpin = Pin , Db7 = Pa.0 , Db6 = Pa.1 , Db5 = Pa.2 , Db4 = Pa.3 , E = Pa.4 , Rs = Pa.5 Config Sda = Portd.3 Config Scl = Portd.0 Do I2cstart I2cwbyte 208 I2cwbyte 0 I2cstart I2cwbyte 209...
Mam problem z obsługą zegara DS1307 po szynie TWI. Po pierwsze korzystam z płyty firmy Propox (EVBavr04). Zmieniłem baterię domyślnie zainstalowaną na płycie (3.6V) na inną 3V, ponieważ przeczytałem o problemach związanych ze zbyt dużym napięciem. Kwarc jest dobrze przylutowany. Mój problem polega na tym, że wysyłam sygnał STARTU na szynę, sprawdzam...
Ok, dzięki, nie wiedziałem o tych procedurach... :) Jak już uruchomię DS12887, to zbuduję układ pod ten program. Dam znać, czy działa. Dzięki za pomoc... :)
Po pierwsze nie S1 Alias Portb.4 a S1 Alias PINB.4 Po drugie, gdzie ustawiasz pin b.4 jako wejście? A gdzie masz powrót (Return) z podprogramu Ustaw_min:? A po naciśnięciu przycisku w ogóle program wchodzi to tej procedury nastawy minut? Masz waitms 1000 więc musisz naciskać co najmniej 1s.
Ja używam z powodzeniem czegoś takiego i działa. Deklaracje: ... $lib "ds1307clock.lib" ... ' Konfiguracja pinów SCL i SDA Config Sda = Portc.1 Config Scl = Portc.0 ' ' Adres DS 1307 Const Ds1307w = &HD0 Const Ds1307r = &HD1 Config Clock = User Dim Weekday As Byte ... Zmienne: ... Time$ = "23:58:59" ' to watch the day changing...
W dokumentacji wyczytałem, że w celu inicjacji trzeba wyzerować bit CH. Wydawało mi się, że to właśnie robię: I2cstart I2cwbyte Ds1307w I2cwbyte 0 I2cstart I2cwbyte Ds1307w I2cwbyte &B00000000 , Nack I2cstop Postanowiłem sprawdzać instrukcje krok po kroku przy pomocy zmiennej Err. Okazało się, że polecenie I2cwbyte Ds1307w zwraca 1. Adres próbowałem...
Witam Wyświetlacz musisz zrobić w przerwaniu. Częstotliwość odświeżania każdego powinna wynosić minimum 50Hz. Lepiej unikać dokładnej częstotliwości 50Hz. Może to być np. 53.5Hz. Jeśli ma np. 4 takie kostki to częstotliwość powinna wynieść 4 * 53.5Hz czyli 214Hz lub jak kto woli przerwanie powinno być wywoływane co 4,67 milisekundy. Od tego bym zaczął....
Witam ! Pozwolę sobie dopiąć się do tematu. Muszę z konieczności przejść na wersję ASDX-DO z cyfrowym wyjściem. Urządzenie w wersji I2C, adres 78 hex. Na tej samej magistrali I2c mam zegarek DS1307 i śmiga bez problemu, natomiast nie mogę za diabła odczytać nic z tego czujnika. Procedura jest taka - wysyłam adres H78 i odbieram dwa bajty tak ? Ma ktoś...
Witam Zmiana czasu dlugosci wykonania procedury obslugi przerwania niestety nie wystarczyla i uklad dalej co jakis czas sie wysypywal. Zastosowalem wiec "zwykly" atmelowski 89s52 i dostosowalem do niego opoznienie przy komunikacji i2c i uklad o dziwo dziala do dzis. Wszystkim ktorzy mieli jakies pomysly dziekuje. Pozdrawiam Piotrek
Mam jeszcze pytanie, czy jest mozliwosc manipulowania przyciskiem reset? Tzn, mam wgrany prorgam stoper i po wcisnieciu przycisku reset np 2krotnie lub przytrzymaniu, chciałbym aby zmienil mi sie na program zegara. Jest taka mozliwosc? Przcisk 'Reset' na Arduino nie ma takiej możliwości, ani nie jest taka jego funkcja. Jego funcją jest uruchomienie...
Dziwne, dlaczego dziwne? ;-) Może dlatego, że zaczynałem od assemblera i ten sposób myślenia wciąż jest u mnie obecny, co przekłada się na styl programowania. Kiedyś gdzieś czytałem, że "kto programował w assemblerze nigdy nie nauczy się myślenia obiektowego" - może coś w tym jest :-) Zobacz jak to u mnie wygląda, bo mówimy o abstrakcjach. To jest pętla...
Siemka! Od kilku dni spędza mi sen z powiek pewien problem. Mam ATmega8 połączoną z układem DS1307, połączenie na pewno jest poprawne, DS1307 podłączony jest też do bateryjki, a taktowany jest kwarcem zegarkowym. Układ działa poprawnie bo można do niego wpisać dane i da się też je odczytać, po wyłączeniu zasilania RTC pracuje i poprawnie liczy czas....
W którymś wątku jakiś czas temu Freddie Chopin napisał, że dla PICów z rodziny 10/12/16 mamy przecież darmowy kompilator C - Hi-Tech C. O ile Microchipowy PIC18 jest świetny, to ten do maluchów... ujmę to tak: żenada, porażka i wstyd takie narzędzie wypuszczać! Okazało się, że zwyczajnie musiałem usiąść i od nowa, samemu napisać procedury do obsługi...
Ja upieram się przy DS1307. Jest to typowy zegar RTC, ma opcję podtrzymania bateryjnego (kondensatorem nie próbowałem, ale powinno też działać), jest dokładny, oprócz czasu liczy też kalendarz, łącznie z kalkulowaniem roku przestępnego. Z poziomu programu masz dwie proste procedury - jedna zapisuje zmienne do DSa, druga je odczytuje. Czyli w głównej...
Odkopię temat, bo mi się pomysły kończą. Zawsze używałem DS1307, ale pech chciał, że pracuję na gotowej elektronice, z PCF8583P właśnie i mi rogi pokazuje bestia jedna... Mam takie procedury, okrojone do minimum : Sub Gettime 'odczyt czasu z RTC I2cstart I2cwbyte 162 I2cwbyte 2 I2cstart I2cwbyte 163 I2crbyte Sekundy , Ack I2crbyte Minuty , Ack I2crbyte...
Dobra no wiec po kolei: 1. Co do obudowy do zegara, to nigdy nie palnowalem tego urządzenia "ubierać" w obudowę - zreszto u mnie na biurku zegarek stoi bez obudowy i wg mnie jest ok - mozna by co prawda bardziej precyzyjnie dociąć płytki ... A te kilka pocynowanych scieżek - to wynik nadmiaru cyny i braku na podorędziu plecionki. Tak sobie myślę że...
Witam, Może takim sposobem, żeby ręcznie stworzyć bazę danych godzin i minut wschodów i zachodów (na oko na dzień mamy 4 bajty danych x 365 dni to daje 1,5k kodu, dość dużo wpisywania). Następnie bierzemy dany dzień roku (jest na to procedura w bascomie) i mnożymy x4 i odejmujemy 4, czyli Adres =( dzien_roku * 4 ) - 4, po czym wywołujemy od tego adresu...
Witam. Natrafiłem na pewien uciążliwy problem... W swoim projekcie realizuję transmisję przez TWI między AVRem a zegarem czasu rzeczywistego DS1307. Wykorzystuję sprzętową obsługę TWI. Transmisję w obie strony, czyli zapis czasu do DS1307 oraz późniejsze jego odczytywanie, udało mi się zrealizować i jako tako to działało. Tylko że wszystko działo się...
Cały program ma ponad 1500 linii więc cały soft nic tu nie wniesie. Aktualny wycinek dotyczący w/w tematu: [syntax=basic4gl] $regfile = "m16def.dat" $lib "I2C.LBX" '$lib "mcsbyte.lbx" $lib "Ds1307clock.lib" $crystal = 4000000 ' Konfiguracja pinow DS1307 Config Sda = Porta.6 Config Scl = Porta.5 Config I2cdelay = 100 ' opoznienie magistrali I2C Const...
Witam. Poniżej zamieściłem program w bascomie który właśnie pisze (jeszcze nie skończony) i mam taki oto problem: po sprawdzeniu składni wywala takie oto błędy: 1.Error 7 Line: 327 IF THEN expected 2.Error 222 Line: 327 illegal character '----KONFIGORACJA WYSWIETLACZA----.' Config Lcdpin = Pin , Db4 = Pa.5 , Db5 = Pa.4 , Db6 = Pa.3 , Db7 = Pa.2 , E...
Witam serdecznie, Doczytałem ostatnio to czego nie doczytałem wcześniej, temat mi się znacznie bardziej rozjaśnił. Potrzebuję aby ktoś lepszy potwierdził co ustaliłem: Do budowy zegara użyję: Timer2 AtMega8 taktowany asynchronicznie z oscylatora wewnętrznego (low freq. osc.) stabilizowanego zewnętrznym kwarcem 32,768kHz podłączanym pod piny TOSC1 i...
Witam. Posiadam płytkę EVBavr04. Moim celem jest komunikacja z układem zegara czasu rzeczywistego poprzez TWI. z inicjacją układu sobie poradziłem ponieważ na wyjściu SQW/OUT pojawia mi się generator 1Hz. Jednak mam problem z odbiorem danych. Napisałem taka procedurę, jednak nie pobiera ona danych tylko jakieś przypadkowe liczby, nawet wtedy kiedy nie...
Oto i kod. Nie wklejalem procedur I2C_write i I2C_read bo jestem pewien ze dzialaja dobrze. void zapisz_godzine(unsigned char godziny, unsigned char minuty, unsigned char sekundy){ unsigned char temp[3]; I2C_start(); temp[0] = int_to_bcd(sekundy); temp[1] = int_to_bcd(minuty); temp[2]...
To nie ma możliwości wykorzystania pamięci wewnętrznej? Nie potrzebujesz żadnego RTC (DS1307, albo Ds3231,etc.) , ani też nic zapamiętywać w EEPROM poza swoimi wartościami zmiennych dotyczących samego programu/ cykli oświetlenia. Jeżeli dokładność własnego zegara sporządzonego w Arduino jest zadowalająca to możesz doraźnie lub nawet cyklicznie (co...
Moge podac ci moj kod ktory kiedys dzialal #define DS1337 0xD0 //1101 0000B- adres hardware'owy zegara DS1337 #define NOERROR 0 #define ERROR 1 //--------------------- // Adresy w DS1337 //--------------------- #define DZIEN 0x04 #define MIESIAC 0x05 #define ROK 0x06 #define GODZINA 0x02 #define MINUTA 0x01 #define SEKUNDA 0x00 **************** Procedura...
Arduino - platforma - mikro kontroler - ATmega328 Problem polega na tym że kod: root.ls(LS_DATE | LS_SIZE); wysyła bezpośrednio na rs dane i nie wiem jak np. zapisac je do zmiennej, ewentualnie może jest na to inna funkcja lub nawet inna potrzebna biblioteka, piszę tutaj , bo może ktoś coś podobnego robił. oto kod programu (jest tam sporo deklaracji...
http://obrazki.elektroda.pl/7452954000_1... Chciałbym zaprezentować projekt regulatora PID do ekspresu do kawy. Używany jest z ekspresem La Pavoni Domus Bar, ale w zasadzie może sterować dowolnym ekspresem lub jakimkolwiek obiektem grzewczym/chłodniczym o mocy do ~ 1.5kW. Motywacją do wykonania urządzenia była spora histereza fabrycznego...
Witam. Jestem w fazie pisania programu z zegarem DS3231 i atmegą16. Mam podłączone wejście INT0 atmegi z wyjściem INT/SQW DS-a. Podciągnięte rezystorem 10k do 5V. I nie wiem co robię źle ale procesor nie reaguje na sygnał przerwania z DS-a. Powiem szczerze że nigdy nie korzystałem z przerwań zewnętrznych ale znów ustawienie tego nie jest skomplikowane...
http://obrazki.elektroda.pl/5924959500_1... Witam ponownie! Kilka dni temu chwaliłem się projektem "PALM v1.0 BETA Atmega128", a dziś chciałbym przedstawić komputerek do motoru lub roweru jaki zrealizowałem już jakiś czas temu na zamówienie. Urządzenie miało zastąpić oryginalne psujne, mechaniczne zegary. Funkcje i założenia: *Wyświetlanie...
Wkleje plik includowany z obsługa LCD, który stosuje oraz czesc programu głownego: LCS.asm: ;=======================================... ; Obsluga LCD zgodnego z HD44780 dla 8-bitowej szyny danych v1.0 ; Nie obsluguje BUSY flag ani odczytu adresu z LCD ;!!! Znak lub komenda do wyslania do LCD przekazywane sa przez...
witam!! Ostatnio udało mi się uruchomić zegarek na ds1307, lcd2x16, atmega8 wszystko na płytce testowej program w BASCOMIE. I napotkałem na duży problem związany z alarmem, mianowicie nie wiem jak porównać czas alarmu który, został ustawiony(zapisany) w dodatkowych rejestrach ds1307 a ten który zostaje odczytywany z ds-a 1307. Prosiłbym o fragment procedurki...
ds1307 rtc na i2c kup sobie jak bedzies potrzebowal posle ci procedurki w asm
Musisz zamiescic listing swojej procedurki IIC.Procedurka dziala z 24C512 ,OK! ale przeciez DS'a adresuje sie inaczej niz 512 ,wiec jesli tego nie uwzgledniles to moze tutaj jest problem.
Witam. Dzieki za zainteresowanie;). Piszac o sekwencji mialem na mysli odczyt danych co sekunde z DS1307. Procedure do obslugi I2C jest napisana w jezyku C. Wszystkie funkcje startu, stopu, wyslania i odebrania danej sa przetestowane zarowno na PCF8583 jak i na mierniku tem. LM92. Oczwywiscie bit CH ustawiam na "0" na samym poczatku. Zapisisuje oczywiscie...
Moim zdaniem całość nie działa poprawnie, bo używasz Timera1 pracującego w trybie CTC jednocześnie do odmierzania odcinków czasowych wyświetlacza i do pomiaru czasu zatoczenia pełnego koła. W trybie CTC Timer liczy od 0 do wartości Compare1a po czym zostaje wyzerowany, więc ten podprogram w przerwaniu ICP1, który oblicza Ci ile cykli zliczył Timer podczas...
Witam. Zmuszony jestem znów zapytać Kolegów gdzie robię błąd w obsłudze SHT11. [syntax=basic4gl] $regfile = "m16def.dat" '$crystal = 400000 '**************KONFIGURACJA LCD***************** Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portb.3 , Db5 = Portb.2 , Db6 = Portb.1 , Db7 = Portb.0 , E = Portb.4 , Rs = Portd.0 Cursor Off Cls Deflcdchar 0 ,...
Dodaje poprawnie listing programu. [syntax=basic4gl] 'OSTATNIE ZMIANY 08,10,2014 'Problem z blednie wysylanymi danymi 'Problem z wylaczaniem sie sterownika $regfile = "m32def.dat" $crystal = 7372800 $baud = 19200 $include "Config_MMC.bas" $include "CONFIG_AVR-DOS.Bas" $hwstack = 128 $swstack = 128 $framesize = 128 '**************KONFIGURACJA LCD*****************...
Witam. Jak zwykle kiedy nie mogę sobie z czymś poradzić muszę zaczerpnąć porady na forum. Tak jest i tym razem. Otóż zbudowałem sterownik co który między innymi steruje też zaworem c.w.u. Zaworem "kręci" silnik dc a za rozpoznawanie pozycji odpowiadają dwie krańcówki mechaniczne zwierające do masy. Silnik ma hamulec który po odłączeniu zasilania zwiera...
Jest programowy licznik przerwań, działa dobrze. Precyzja odmierzania czasu nie jest tu absolutnie krytyczna. Mógłby ktoś mi coś podpowiedzieć na temat realizacji zatrzasku zasilania? W/g mnie powinno być ok i nawet działa, ale w stanie wyłączenia na bramce jest ponad 2,5V i układ pobiera 2mA. 2822237000_1440081647|smEyQ81jhR Proszę jeszcze tylko o...
Witam Czy mógłby mi ktoś powiedzieć dla czego gdy ustawiam w pamięci RAM tego RTC godzinę i minuty, on wywala inne wartości? przeważnie takie same. Oto procedura: Dodano po 20 Poradziłem sobie. Nie należy konwertować ani odczytu ani zapisu. MAKEBCD/MAKEDEC
Witam Posiada ktos moze gotowe procedurki do obslugi ukladu DS1307napsiane dla mikrokontrolera ATMega16 pod asm? Pozdrawiam dobra mam procedure do odczytu wartosci sekund i minut z 1307? koniec: ldi r16, 0x00 rcall lcdxy ldi r16, 250 rcall czekaj_ms rcall I2Cstart ldi r16, IN_1307 rcall I2Cout rcall I2Cin rcall I2Cin_ACK rcall I2Cin rcall I2Cin_NOACK...
Witajcie, mam problemy z zaprogramowaniem zegara po I2C. Zapisuje zmienne w 2 tetradach. Starszą (która podczas wpisywania jest zapisywana tymczasowo na młodszej tetradzie przesuwam shiftem o 4 w lewo, aby była na miejscu starszej tetrady), następnie sklejam młodszą tetradę ze starszą funkcją logiczną OR. Po tym następuje procedura wysyłania do RTC...
Witam Przerobiłem kod z zegara z datą i termometrem pod RTC PCF8583, na RTC DS1307. Uporałem się z zapisem zegara do DS-a, ale za chiny nie można ustawić daty. Może ktoś zerknąć na ten kod i podpowiedzieć? może powtarzam cały czas ten sam błąd?. [syntax=basic4gl] $regfile = "m32def.dat" $crystal = 16000000 $hwstack = 64 $swstack = 64 $framesize = 64...
Witam, Przedmiotem sprzedaży jest płytka drukowana ( wraz z wieloma dodatkami) wykonana w technice termo-transferu. Płytkę wykonałem dla potrzeb przeprowadzania badań w pracy magisterskiej. Schemat ideowy układu przedstawia jedno ze zdjęć. Najważniejsze elementy układu to: - ATmega32, - Wyświetlacz LCD(HD44780), - 2 czujniki temperatury (DS18b20), -...
Witam, Przedmiotem sprzedaży jest płytka drukowana ( wraz z wieloma dodatkami) wykonana w technice termo-transferu. Płytkę wykonałem dla potrzeb przeprowadzania badań w pracy magisterskiej. Schemat ideowy układu przedstawia jedno ze zdjęć. Najważniejsze elementy układu to: - ATmega32, - Wyświetlacz LCD(HD44780), - 2 czujniki temperatury (DS18b20), -...
Witam wszystkich. Bardzo ładnie proszę, o sprawdzenie kodu poniżej. Nie mogę za nic w świecie ustawić zegara, i z datą jest też nie do końca ok. Męczyłem się składając linijki, i nie wychodzi. Nie wiem gdzie są błędy. Zegar idzie, ale nie idzie go ustawić. Jeśli wyświetla 13:20 i ustawię inny czas, wraca z powrotem do 13:20 lub innej wartości. Czy może...
procedury zdarzeniowe rozmiar procedury procedury mysql
wymuszenie sinusoidalne bloody sterowniki astra tylne hamulce
radio kasety zmieniarka agregat prądotwórczy inwerter
Wymiana żarówki cofania Citroen C1 2018 - krok po kroku Niedomykająca się tylna klapa telefonu mPhone - przyczyny i rozwiązania