https://datasheets.maximintegrated.com/e...
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...
Albo masz zamienione linie SCK i SDA :) , jeśli masz baterie włożoną, to sprawdź czy na pinie 3 masz 3V. Jak nie to podepnij go do masy. 100n ceramik na zasilaniu tuż przy układzie jest mile widziany. Ja bym obstawiał na hardware.
Judas, Krzysiek... Dzięki za miłe słowa. Motywują do robienia dalszych projektów i nawet już pomysły są :) Myślę, że teraz pójdzie mi już łatwiej. Program pisałem w C. Źródło udostępniam poniżej, chociaż sam program jest dość prosty. Po kilku kursach dałoby się go ogarnąć. Tak jak pisałem wcześniej, zdecydowałem się nieco go uprościć, idąc w stronę...
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, własnie uruchomiłem zegar, kalendarz na DS1307 wszystko śmiga lub prawie , poza jednym drobnym szczegółem a mianowicie , nie mogę ustawić wyświetlania daty w Config Date http://wiki.mcselec.com/bavr/CONFIG_DATE ... wyświetla się w stylu USA [syntax=basic4gl] '---------------------------------------... ' DS1307.BAS...
I2cwbyte 209 'adres zapisu - chyba odczytu jesli sie nie mylę. pozdrawiam Może i sie nie mylisz ale i tak i tak nie działa - problem chyba jest w rejestrach ale nie wiem w którym miejscu. Dodano po 2 Problem rozwiązany: Sub Ds1307_write ' Zapisz ustawienie zegara Hour = Makebcd(hour) Minute = Makebcd(minute) Second = Makebcd(second)...
Witam. Jestem początkującym użytkownikiem arduino. Podłączyłem pod Arduino moduł RTC. Co do samego podłączenia kabelków to zrobiłem wszystko tak jak na zdjęciach w załączniku. Potem załadowałem następująćy program na Arduino, który miał ustawić czas i RTC miało go pamiętać: #include <DS1307RTC.h> #include <TimeLib.h> #include <Time.h>...
Strasznie mieszasz, zmieniając te systemy liczbowe. Powinno być: [syntax=basic4gl] 'Wyjscie 1Hz I2cstart I2cwbyte &HD0 I2cwbyte &H07 ' zapis do adresu 07H I2cwbyte &H10 ' ustawienie czestotliwosci SQW/OUT I2cstop [/syntax]
W temacie jest wspomniany jeszcze RTC. RTC to gotowy zegar z generatorem na kwarcu, bardzo energooszczędny, czasem ma wyjście 1 Hz jak DS1307, ale trzeba go ustawić przez I2C, a po utracie zasilania zapomni ustawienia, więc raczej bez mikrokontrolera w pobliżu nie ma sensu stosowanie RTC. Połączenie RTC z mikrokontrolerem ma tę zaletę, że RTC podtrzymany...
Po naniesionych poprawkach. Mam nadzieję, że teraz jest dobrze. main.c [syntax=c]#define F_CPU 16000000UL #include <util/delay.h> #include <util/twi.h> #include <avr/io.h> #include <avr/interrupt.h> #include <stdio.h> #include <stdlib.h> #include "HD44780.h" #include "DS1307.h" unsigned char Dec2bcd(unsigned char...
Na wyjściu SQW/OUT DS1307 możesz uzyskać przebieg 1Hz, trzeba w rejestrze Control DS1307 ustawić bit SQWE=1 i bity RS1=0 RS0=0. Następnie podepnij do tego pina LED-> rezystor -> zasilanie i zobacz z jaka częstotliwością będzie migał.
Witam , potrzebuje pomocy w przerobieniu tego kodu żeby załączał się "Alarm" CODZIENNIE o tej samej godzinie . Pomoże ktoś :) ? z góry dzięki ! Kod : [syntax=vbnet] //DateTime (uint16_t year, uint8_t month, uint8_t day, uint8_t hour, uint8_t min, uint8_t sec) #include <Wire.h> #include "RTClib.h" #define alarmPin 2 const int alarm[]={2020,4,11,6,0,0};...
Zamieniłem ten układ na DS1307.
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...
okteraz mam problem z ustawieniem czasu. wiec uruchamiam TIMERTCset i po otwarciu Monitora szeregowego wyskakuje Unable to sync with the RTC 0:00:00 0 0 1970 0:00:01 1 1 1970 0:00:02 1 1 1970 0:00:03 1 1 1970 0:00:04 1 1 1970 0:00:05 1 1 1970 0:00:06 1 1 1970 i sie resetuje po kazdym uruchomieniu,czy modol rtc jest uszkodzony? a po uruchomieniu szkicu...
Nie wiem jaki masz LCD: 16x2 czy 24x2, jakby co to dasz radę sam ustawić. [syntax=cpp] // DS1307_LCD (C)2010 Henning Karlsen // Uses DS1307 library but not wire library // DS1302: SDA pin -> Arduino Digital 18 // SCL pin -> Arduino Digital 19 // LCD: DB7 -> Arduino Digital 2 // DB6 -> Arduino Digital 3 // DB5 -> Arduino Digital 4 // DB4...
Witam, stworzyłem na płytce stykowej układ, gdzie podłączyłem przyciski, LCD hd47780, rtc ds1307 i buzzer. Korzystam z bibliotek do wyświetlacza od "radzia", TWI od p. Mirka oraz ze znalezionej na tym forum biblioteki do RTC. Napisałem szybki program, który wyświetla godzinę w formie hh:mm:ss na ostatnich polach pierwszej linii. Dodatkowo dodałem przerwanie,...
Działa elegancko. Żeby było wiarygodnie to nawet wygrzebałem Ardu Leonardo z m32u4 na pokładzie. Na jedną rzecz bym jeszcze uważał. Twój kod nie jest w żaden sposób synchronizowany. Może się kiedyś zdarzyć, że jedna z wiadomości nie dojdzie. Z nie będzie miało wartości 3 i przy nastepnej wiadomości procesor zacznie przypisywać wartości innych zmiennych...
Po pierwsze przeczytaj dokumentacje do tego układu. Po drugie pod jakiego procka piszesz. Programuje sie go wysyłając odpowiedni adres przez I2C orak kolejne ustawienie zegarka w formacje tak jak pisze w dokumentacji. Jak nie masz procedór wysyłania i odbierania damych przez magistrale I2C to poszukaj na forum na pewno znajdziesz
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...
Bo nieraz potrzeba wygaszać dwukropek, lub szybciej migać w zależności czy jest zegar jest w trybie ustawiania czy nie, lub sygnalizacja włączenie alarmu np.świecenie się na stałe dolnej dwukropki jak alarm ustawiony, itp.
Mam jeszcze jedno pytanie.W jaki sposób korygować programowo niedokładność mojego zegara bo spieszy mi 3 sekundy na dobę.Proszę o przykłady w języku c
Ja używam DS1307, wg noty katalogowej działa od 4,5V, ale nie zaszkodzi go sprawdzić. Do PCF8583 się zraziłem bo w pierwszym moim układzie, w którym go zastosowałem bardzo często mi się zawieszał (PCF) chociaż tylko na samym początku bo od kilku lat działa w nim.
Podpowiedź: ustawiłem zgodnie z dokumentacją RS1=0, RS0=0, SQWE=1. A wcale, że nieprawda :) (RS1 u Ciebie jest równe 1)
Witam. Jeszcze jedno pytanie czy Fuse-bity są ustawione prawidłowo. Chodzi mi czy ustawiony jest rezonator zewnętrzny i częstotliwość ?
Mogę się mylić bo dawno nie używałem DS1307, zamiast niego używam kompatybilny DS2331, niemniej zmierzam do puenty. Ten drugi nie rusza dopóki nie ustawisz w nim jakiegoś czasu. Spróbuj, po prostu, użyć tej funkcji SetTimeDate() Jeśli nadal nie będzie chciał ruszyć to przyjrzyj się temu rezonatorowi kwarcowemu. W przypadku jego uszkodzenia można się...
No właśnie nie, warunek : Pętlij się dopóty, dopóki wartość zmiennej konfig będzie równa 0x01 oraz dopóki ktoś nie naciśnie Esc czyli znak==0x76 chodzi o to żeby na bieżąco odczytywało z RTC wskazanie zegara i aktualizowało to na wyświetlaczu. Problem zniknął gdy zmienną 'i' która była extern zamieniłem na zmienną 'g' tworzoną wewnątrz funkcji w pierwszej...
A próbowałeś go skonfigurować zaraz po włączeniu? Ustawić opcje i aktualny czas?
ten kod działać działa ale nie do końca tak jak bym chciał działa jak ustawie godzinę na 10:00 godzinę załączania na 9:01 a godzinę wyłączania na godzinę 10:01 to od godziny 9:01 do 10:01 jest załączona a od 10:01 do 9:01 jest wyłączona ale jak dam godzinę załączania na 10:01 a godzinę wyłączania na godzinę 9:01 to dioda jest cały czas załączona dopiero...
najpierw start po adresie zapisu znów start i potem odczytywanie Tak też było i mam teraz (jak mówię - przetestowałęm już dziesiątki kombinacji...) unsigned char ds1307_get(unsigned char addr) { unsigned char ret; i2c_Start(); i2c_WriteTo(0xD0); i2c_PutByte(addr); i2c_Start(); i2c_ReadFrom(0xD1);...
a może na początek trzeba sprawdzić ustawienie fusebitów, w tym dzielnika przez 8.
Jeśli np: przydałby Ci się dodatkowo zegar czasu rzeczywistego, to kup DS1307. Wystarczy ustawić bity RS0 i RS1 na 1 i na wyjściu masz 32768Hz. Ponadto w http://pdfserv.maxim-ic.com/en/ds/DS1307... masz schemat wewnętrzego generatora. Możesz też spróbować podłączyć PCF8583 i brać sygnał zegarowy dla uP z wyjścia OSCO (2) PCF'a.
Jest jeszcze układy dallasa DS1307 również bardzo popularne. I ona ma wszystkie pozycje daty i godziny pod osobnym adresem. Lecz nie posiada alarmu. Coś za coś. Zawsze jest DS1337 - ma 2 alarmy :) a jest może ze 20 groszy droższy od DS1307.
W nawiązaniu do próśb kolegów w postach wyżej napisałem nowy soft do tego zegarka (w C). Dołożyłem opcje: 1. budzika 2. możliwość używania czujników temperatury z serii DS18x20, czyli inne niż DS18B20. No i teraz tak: nie mam niestety na stanie innych czujników niż DS18B20, więc opcja nr 2 nie została przeze mnie przetestowana. Napisałem bibliotekę...
Poczytaj sobie o C++, bo pytając o każdą literkę na forum zejdzie Ci długo z tworzeniem czegokolwiek. Tak samo jak tworzysz zmienną "int zmienna;" i potem jej używasz w kodzie "zmienna++;" tak samo tworzy się obiekty "DS1307 clock;" i potem używa na nich funkcji/metod. Na początek polecam kurs M. Zelent o C++ i C++ obiektowym, jest na Yutube, a jakaś...
Ab ovo- zacznijmy od początku. "Jedyne co zmieniłem to procesor z Atmega8 na Atmega8L". Nowy- ustawiony fabrycznie na 1MHz z wewnętrznego oscylatora.
Niestety nie pomogę Ci, ale powiem, że ostatnio spotkałem się z podobnym przypadkiem. Chciałem odczytać godzinę z DS1307 i również rejestry stały w miejscu. Cały dzień się głowiłem co jest nie tak, zamieniłem układ na PCF'a i ten działał bez problemu, więc włożyłem ponownie tego DS'a i dalej nic. Okazało się, że musiałem do niego wprowadzić wartość...
Mógłbym prosić o dokładniejsze wytłumaczenie tego przykładu bo nie bardzo wiem co miałbym tam pozmieniać aby ustawiać zegar w menu. Dodano po 4 Problem rozwikłany. Zapomniałem przeliczyć odczytana wartość hex na dec. Co do kwarca to nie mam pola masy wkoło wyprowadzeń oscylatora Pracujesz na zmiennych Date$ i Time$, to wszystko. Odnośnie kwarcu, nie...
Witam, Mam kolejny problem z moim projektem. Wiem, że temat ds1307 jest bardzo popularny. Przeczytałem już chyba 10 razy dokumentacje DS1307, kilka przykładowych kodów do obsługi oraz wszystkie możliwe posty na elektrodzie dotyczące tego układu i nadal nie rozwiązałem mojego problemu. Od razu powiem, że mam odpowiednie napięcia na układzie - zasilanie...
Też mi się wydaje, że powinno się coś zapisać, aczkolwiek nie testowałem tego. Jutro zresetuje swój układ i zobaczę jak jest. Program tworzy na karcie pliki z datą w nazwie i może to jest problemem, chociarz przy poprawnej komunikacji i nieustawionym zegarze DS1307 powinien coś podać, jakieś domyślne wartości. SDA\SCL są podciągnięte do zasilania przez...
nie wiem, czy o tym była jakaś mowa, ale ODŁĄCZASZ ZASILANIE i jeśli zegar nie ma podtrzymania to się po prostu zresetuje To nie ma znaczenia ponieważ na początku ustawia godzinę : [syntax=c] main(){ ... ds1307_init(); ds1307_setTime(03,03,00);//inicjalizajca poczatkowej godziny i daty ds1307_setDate(15,04,11,2); ... }[/syntax]
Ten zegar musi miec podtrzymanie zasilania,jesli nastepuje jego zanik to jest to sytuacja taka jaka ma miejsce po odlaczeniu zasilania od pamieci Ram.Zastanow sie jak moze ten uklad wystartowac.Kazde rozwiazanie bedzie wedlug Ciebie glupie.Moze wystartowac i liczyc od przypadkowych ustawien (i tak robi)lub nie startowac i czekac na ustawienie (jak np...
hej koledzy!!! juz jestem:) wielkie dzieki za pomoc - czesciowo juz zegar dziala, mieliscie racje!! zmienilem w kodzie odczytu HD na HA i dziala odczyt ' -------------------- Procedura odczytu czasu i daty -------------------- Clock: I2cstart I2cwbyte &HA0 ' zmienilem z HD0 na HA0 I2cwbyte 2 I2cstart I2cwbyte &HA1 ' zmienilem z HD0 na HA1 I2crbyte...
Zatem jak to mogę ustawić, by czas pobierało z zegara Chodzi o zegar komputera? i czas po resecie był aktualny, a nie taki jak wgrany w sofcie? Nie da się. Jeśli w setup ustawiasz czas to bedzie taki jaki tam wpiszesz. Teraz wieź na logikę. Masz RTC z baterią, po kiego ch.... po każdym resecie ustawiasz w nim czas? Gdzie sens, gdzie logika? Takie ustawianie...
Jak zrobic "zerowania bitu aktywującego pracę oscylatora" ? Robisz to automatycznie zapisując sekundy w DS1307, 7 bit wyzerowany aktywuje prace oscylatora. Ustawienie 7 bitu w sekundach zatrzymuje oscylator. Co do obsługi zapisu i odczytu DS1307, twój przykład w ogóle nie jest odporny na błędy, zakładasz że każda instrukcja I2cwbyte i I2rwbyte wykona...
Wystarczyło użyć wujka [url=https://www.google.pl/#hl=pl&tbo=d&...
Można do tego PICa podłączyć zewnętrzny zegar RTC np DS1307 lub PCF8574 i w nim ustawić żądany alarm.
Przyjrzyj się dokładnie tej "baterii" - czy nie pisze li-ion 3,6v ? Zazwyczaj baterie te (zwane 'button' lub 'coin battery' nie mają miejsca na dokladniejszy ich opis; ‘Przygadanie się’ batterii na nie wiele się zda, jeżeli nie wie się na co zwróci uwagę, albo nie zna się źródła możliwie zaistniałego problemu. Jeżeli to jest popularny "Tiny...
Kombinowałem trochę z tym zegarem, ale najgorsze jest ustawianie drugiej linii, bo zegar działa w pętli, i nie wyświetla w drugiej albo migocze szybko. Zostawiłem go na razie, bo kończę zegar na IW-18. Dziś skończę obudowę do IW-18, i zabieram się znowu za ten drugi. No i się wziąłem. Poskładałem taki kod jak niżej: [syntax=basic4gl]$regfile = "m32def.DAT"...
Lepiej będzie w przerwaniu ustawiać jedynie flagę, a w głównej pętli programu odczytywać stan TWSR i wysyłać komunikaty? I tak się nie wyrobisz, chyba że bardzo zwolnisz zegar I2C/TWI. Normalnie I2C działa na 100kHz, więc z prędkością zbliżona do maksymalnej dla RS232 (takiego typowego). Po prostu nie zdąrzysz nadawać po RS. Oczywiście ustawienie flagi...
Moze inaczej pomoglem sobie jakas biblioteka od ds1307 i zegar dziala. Nie moge tylko ustawic na wyjsciu 1HZ ? Z tym mam problem. Nie bardzo to rozumiem.
Przerwania PCINTx wykonują się przy każdej zmianie stanu logicznego, niema możliwości konfiguracji np. tylko dla zbocz narastającego lub opadającego. Stan zbocza na poszczególnym pinie sprawdzasz w przerwaniu. Attiny13 ma 6 pinów PB.0-PB.5 (PCINT0 do PCINT5) które mogą wywołać przerwanie. I tu jest jedna myląca rzecz :) dla tych pinów jest tylko jeden...
czyli chcąc odczytać tylko wartość sekund, będę musiał odczytać wszystko od sekund aż do daty i roku? po odczytaniu sekund, zamiast bitu 'acknowledge', wysyłasz 'notacknowledge' i STOP i tyle przy nastepnym czytaniu najpierw też będziesz musiał wysłać 0x00 aby wskaznik ponownie ustawił się na rejestrze sekund
(at)ElektrodaBot Napisz program do arduino nano w języku arduino Nie używaj funkcji Delay Zaimplementuj moduł zegara RTC DS1307 I2C Zaimplementuj moduł wyświetlacza LED 4 cyfry opartego o sterownik TM1637 Zaimplementuj trzy przełączniki na PinD9=UstawGodzine, PinD10=Ustawminuty i PinD11=PrzełaczCzas W programie umieść obsługę zegara na wyświetlaczu,...
Błąd :avrdude: stk500_getsync(): not in sync: resp=0x00, to jak ktoś już tutaj wspominał, problem z komunikacją PC <-> Arduino. Też to nieraz mam. Rozwiązaniem jest zmiana portu COM w Menedżer urządzeń > Porty > Arduino > PPM > Właściwości > Ustawienia portu > Zaawansowane ustawienia > Numer portu COM > Wybierz jakiś inny...
Ok zatem zrobiłem coś takiego: [syntax=c] uint8_t binToBCD(uint8_t data) { uint8_t result; result = (data / 10) << 4; result += (data % 10); return result; } ..... sekundy = binToBCD(sekundy); minuty = binToBCD(minuty); godziny = binToBCD(godziny); _delay_ms(250); //======================= zapis to RTC I2C_Start(); I2C_SendByte(208); I2C_SendByte(0);...
Na zdjęciach modułów widać, że są baterie. W modułach DS3231, też jest błąd; jest bateria CR2032 a jednocześnie zrobione jest ich ładowanie. Nie ma to znaczenia czy chińczyk; moduły DS3231 działają, moduły na DS1307 też działają.
Nie wiem po co kolega dołączył rezonator kwarcowy gdyż mógł ustawic na wewnętrzny oscylator RC. Ten DS1307 to pewnie coś w podobie do PCF8583 też mi się wydaje niepotrzebny gdyż ATmega8 ma wbudowany RTC. Mógłbyś programowo zrobic RTC a do projeku wykorzysyac wersje z "L" wtedy po wyłaczeniu z zasilania uC zasilałaby bateria pastylkowa. A co do tego...
Może zajżysz tutaj. http://www.elektroda.pl/rtvforum/viewtop... Jest tam źródło w bascomie dla komputerka do Dewoo. Tam chyba znajdziesz to czego ci potrzeba. niestety ale w tym zrodle jest kod pod ds1307clock, probowalem go przerobic i godzina i data niby sie wyswietla ale mam caly czas problem z opcja ustawiania daty. pcf niby...
Problem rozwiązany. Błędy były dwa: 1) podczas rysowania schematu odwrotnie oznaczyłem wyjścia z ATmegi32: SDA i SCL. Wystarczy spojrzeć na schemat, w ATmedze nogi poprawnie oznaczone, lecz dalej połączenie z tych nóg oznaczone odwrotnie. 2) Tutaj dziękuje excray. Nie ustawiłem Bitu CH na 0, zrobiłem to kiedyś podczas oprogramowywania układu DS1307,...
Dziękuję za odpowiedzi jak tylko będę w domu to przetestuje. Dodano po 25 Zastanawiam się czy dało by radę zamiast [syntax=c]int CZAS = (GODZ*3600+MIN*60+SEC); [/syntax] Zrobić [syntax=c]int CZAS = (GODZ+MIN+SEC); [/syntax] [syntax=csharp]GODZ = (RTC.get(DS1307_HR,true)); MIN = (RTC.get(DS1307_MIN,true)); SEC = (RTC.get(DS1307_SEC,true)); [/syntax]
potencjometry na razie sobie odpuściłem na rzecz dodania zegarka i zmiany wyświetlania ekranów za pomocą guzików. Ale na tym stanąłem. Wiem że gosuby itp to nie najlepsze rozwiązania i to się właśnie teraz odbiło. Przełączanie działa ale jak się przełączy np na ekran zegarka to czas stoi. W sumie to domyślam się dlaczego - a no pewnie że odwołuję się...
S1 i S2 służą do odłączania od reszty układu poszczególnych elementów, użyłem fortepianowych bo mam ich troch na stanie. Sensory używam jako zworki, zlutuje (na stałe) odpowiednio aby ustawić adres na 24LC256, pierwszy raz użyłem DS1307 i nie bardzo wiem co się po nim spodziewać. Sam miałem wątpliwości co do masy na otworach, więc już usuwam :D W załączniku...
Zegarek na Arduino Mega ?? za marnotrawstwo masz minusa, wykorzystałeś chociaż 1% jego zasobów ? Plus za guziki, większość ustawiana jest jedynie przez IDE.
Witam mógłby mi ktoś pomóc problem jest taki ze w Bascomie się nie skompiluje proszę niech mi ktoś pomoże upożądkować program. $regfile = "m8def.DAT" $crystal = 8000000 $lib "I2C.LBX" $lib "Ds1307clock.lib" Config Lcdpin = Pind , Db4 = Portd.1 , Db5 = Portd.2 , Db6 = Portd.3 , Db7 = Portd.4 , E = Portd.0 , Rs = Portd.5 Config Lcd = 16 * 2 Config Sda...
Witam, od jakiegoś czasu próbuję stworzyć sobie zegarek z termometrem + napięcie akumulatora do auta. Wszystkie programy osobno działają bez zarzutu. Problem zaczął się z chęcią wprowadzenia przełączalnych ekranów i wprowadzeniu przerwań. Doczytałem że przerwania skutecznie psują komunikację z DS'ami przez co temperatura się nie odczytuje. Ogólnie to...
liczby 0xAB (to nic innego jak zapis hexadecymalny i wystarczy użyć kalkulatora A co kolega będzie rozumiał z zapisu np. ADMUX=0xAB;//* ? Jaki kanał ADC jest wybrany, jakie napięcie referencyjne? Aaaa, właśnie. Możesz napisać sobie w komentarzu co to ustawia, ale pisanie który bit za co odpowiada to będzie overkill. Innymi słowy napiszesz program,...
http://obrazki.elektroda.pl/6783263600_1... Chciałbym przedstawić konstrukcję, która nie wnosi do świata elektroniki zupełnie nic nowego ponad standardowe połączenie kilku elementów, która powstała dla zabawy i żeby ładnie wyglądała, czyli zegarek binarny. Założeniem była budowa zegarka z widocznymi wszystkimi elementami i zasilanego...
Witajcie. Chcialbym ulozyc sobie kilka spraw i prosze o sprawdzenie moich przemyslen. Rzecz dotyczy ukladow RTC DS1307, ATmega8 i Bascom. 1. Swiezy uklad trzeba zainicjowac ustawiajac 0 bitu 7 z rejestru 00H. 2. Jezeli chce zeby uklad odliczal czas w trybie 24 godzinnym musze ustawic bit 6 rejestru 02H na 0. 3. Po zaniku napiecia zasilajacego uklad...
W źródle masz jeszcze wsad do pamięci EEPROM; Clock_IN-8.eep W DS1307 pin7 podejrzyj czy masz 1Hz; szeregowo wstaw LED wykorzystując rezystor R6
Witam, odczytuję DS3107. Minuty i godziny odczytują się jak należy - natomiast dni się nie zmieniają! Ustawiłem 23:59 - po minucie zmienia się na 00:00 - ale dzień miesiąca nie przeskakuje. Dzień miesiąca odczytuję spod 0x04. Dodatkowo - rejestr ten zachowuje się bardzo dziwnie - gdy jest podłączona bateria, nie mogę ustawić liczby większej niż 6, bez...
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.
walczyłem niedawno z takim efektem. po prostu pomyliłem zmienne i wyświetlałem wynik BCD jako DEC. teraz chodzi bez problemu. jadyny prawdziwy "problem " pojawił się w kalendarzu, gdzie dzień tygodnia nie jest wyliczany z daty i trzeba go ustawić razem z datą, a nie przewidziałem tego w programie. w zasilaniu chodzi tylko 100n. prędzej procesor potrafi...
Poczytaj sobie manuala do Atmeg. Albo książkę Baranowskiego "Układy Atmega w praktyce". Oczywiście, sam podłaczałem do magistrali I2C chyba nawet po kilkanaście układów równolegle. Częścią ramki transmisyjnej jest adres układu docelowego. Oczywiście topologia jest taka, że jeden z układów występuje jako master, reszta to slave'y. Tylko master może inicjowac...
baterie podpinacz zgodnie z dokumentacja czyli + na noge Vbat - to wiadomo zasilanie układu na VCC bez zadnej diody DS1307 to nie PCF baterie podpinasz tylko do Vbat bity konfiguracyjne czyli jesli pamietam rejestr 07h ustawiasz wszystkie na zero ale dokładnie to sprawdz z dokumentacja bo niemam przy sobie i układ pamieta to ustawienie do wyłaczenia...
Witam, Podepnę się pod wątek. Jak wrócę do domu sprawdzę czy u mnie kod działa prawidłowo i dam Ci znać. Jedyne co mi przychodzi teraz do głowy to bym sprawdził co pokaże Arduino bez ustawiania czasu. Zakomentuj czas.adjust(DateTime(__DATE__, __TIME__)); i jeszcze dla pewności zresetował bym DS1307. Ja mam inny problem. Może ktoś z szanownych forumowiczów...
http://obrazki.elektroda.net/95_12889773... Witam! Chciałbym zaprezentować Wam moją pierwszą konstrukcję znanego już na elektrodzie piórnika ze ściągą. Sercem mojego układu jest Arduino Duemilanove (ATmega328) wspomagany przez wyświetlacz hd44780 20x4, zegar RTC DS1307 (z własną baterią) i czujnik temperatury MCP9700. Cyfrowy piórnik zasila...
Kilka pytań - bo kto pyta nie błądzi :-) Niby wszystko ładnie liczyło w przerwaniach - ale tylko do momentu kiedy zacząłem wywoływać Sub lub funkcję - wtedy zaczyna się resetować i zaczyna program od początku co sekundę ?? O co chodzi Teraz przestało mi nawet liczyć w przerwaniach. Wchodzi tylko raz i potem lcd się czyści. Zamieszczam kod, w którym...
Ależ dyskusje egzystencjalne, jasny gwint! A wracając do tematu... istnieje możliwość kalibrowania kwarców trymerem jak na schemacie http://obrazki.elektroda.pl/6143433200_1... To metoda stara jak świat ale może okazać się wystarczająca. DS1307 wprawdzie nie potrzebuje żadnych kondensatorów, ale nic nie stoi na przeszkodzie żeby je dosać...
Witam, posiadam projekt sterownika do terrarium (odpowiada za wyświetlanie temperatury i wilgotności, oraz załączanie kabla grzewczego), dostosowałem go do własnych potrzeb, jednak napotkałem problem z podłączeniem zegara czasu rzeczywistego (DS1307), potrzebuję pomocy w podłączeniu go do Arduino UNO, oraz dorobieniu nowej części programu. Chciałbym...
Witam forumowiczów. Jestem w trakcie składania zegarka na RTC DS1307 i wyświetlaczu oled z kontrolerem SSD1306. Program skrobię w BASCOM-ie. Mam problem z formatem godzin, minut i sekund. Otóż gdy wstawiona jest funkcja Time$ wtedy dane wyświetlają się prawidłowo, tj. 07:05:03. Ale wtedy nie mogę ustawić ani godziny, ani minut, ani sekund. Natomiast...
http://obrazki.elektroda.pl/9209815100_1... Witam. Chciałem zaprezentować swoją nową konstrukcję. Tym razem to zegarek na lampkach VFD, konkretnie IW-11 (lub IV-11, w zależności jak sobie z cyrylicy przepiszemy). Lampy są fajne, całkiem spore i niedrogie, znak ma ponad 2cm wysokości. Konstrukcja Zegarek jest zbudowany na mikrokontrolerze...
Witam. Uruchomiłem tego DSa i tu pojawił się następny problem. Układ spieszy, jakieś 10 sekund w ciągu 4 dni. Jak wyeliminować to spieszenie?? Chodzi mi oczywiście o jakiś zautomatyzowany sposób a nie ręczne ustawianie.
Poradziłem sobie z oledem w ten sposób że, wywaliłem fabryczny obwód do resetu, i podpiąłem pin reset z paska oleda pod atmegę. Kondensator, rezystor i diodę. Podobnie zrobili tu: http://forum.atnel.pl/topic7982-90.html Teraz jest inny problem. Gdy szybko włączam i wyłączam procesor, tzn power down, to procek mi się zawiesza. Pokażę program. [syntax=vbnet]$regfile...
EEPROM nie musi być na 1-WIRE, obecnie używam I2C. Program w zasadzie już działa tylko muszę dorobić obsługę przerwania wyzwalanego przyciskiem (INT1), które ustawi flagę zakończenia działania, poczeka na koniec pętli, zamknięcie pliku i wyłączy zasilanie (a przynajmniej zawiesi program i głęboko uśpi procesor). Jest tylko jeden problem - zostało mi...
No kurcze. Zakres w skanerze ustawiłem od zera do 250 i pokazał mi 192 i 194. Myślałem że to działa jak zegarki PCF8583, lub DS1307. Teraz to już kompletnie zgłupiałem. Jest tylko jeden układ, NJW1504.
Najpierw znowu ustawiam 1 na bicie TWINT rejestru TWCR, tyle, że tym razem za pomocą maski? Tak więc, chwile wcześniej ustawiłem tam 1, więc iloczyn logiczny da też 1. I na końcu negujemy cały rejestr. Czyli ostatecznie bity chwile wcześniej ustawione zostaną wyzerowane? Nie wiem, czy dobrze zrozumiałem powyższy tekst, ale to jest tylko warunek i nie...
Witam, zbudowałem klasyczny zegar, tak jak w temacie napisałem na ATmega32, Chińskim module z układem DS1307 i z jakąś pamięcią na I2C której nie używam, czas pokazywany jest na wyświetlaczu LED. Wcześniej testowałem sobie to wszystko z wyświetlaczem LCD 2x16 HD44780 wszystko śmigało mi super. Po dodaniu LCD i multipleksowania zegar po kilku, kilkunastu...
Ten RTC (nie znam) wymaga danych w postaci BCD czy nie? Nie rozumiem do końca co masz na myśli. Jeśli chodzi o to czy należy podać mu początkowe ustawiania czasu i daty w BCD to nie, można to zrobic normalnie dziesietnie.
DS1307 jest mało dokładny, tak samo jak sam uC, lepiej stosować DS3231 cena bardzo podobna. Slyszalem juz od kilku osob, ze DS1307 jest malo dokladny, ale ja mam z nim swietne doswiadczenia. Poprzedni zegar, ktory zrobilem na DS1307 przez prawie rok 'rozjechal' sie z moja komorka (ustawiajaca sie automatycznie) tylko o kilka sekund. Z moich testow...
Dziękuję. Dokończyłem kod. Mógłby ktoś sprawdzić poprawność? (PS Proszę, nie bijcie, pewnie niektóre rzeczy są ta wykonane bardzo...niepoprawnie, ale to moje początki z Bascomem) [syntax=basic4gl]$large $regfile = "89c420.dat" $crystal = 11059200 'czestotliwosc kwarcu w Hz Declare Sub Alarm , Sub Dsread , Sub Ustaw_czas , Sub Ustaw_date , Sub Ustaw_budzik...
Czy ustawiałeś wstępnie czas w DS3231? Trzeba to jednorazowo zrobić i upewnić się, czy działa zasilanie bateryjne układu.
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...
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ę...
http://obrazki.elektroda.net/56_12705711... Witam ! W związku z dzisiejszymi urodzinami mojej żony jakiś czas temu postanowiłem zrobić ładny zegarek do salonu. Jako, że chciałem zrobić zegar który widziany jest w nocy a nie chciałem używać wyświetlaczy LED postanowiłem użyć lamp nixie. Po rozebraniu dwóch woltomierzy V530 polskiej produkcji...
Napisalem wyzej - w nocie katalogowej http://datasheets.maximintegrated.com/en... Strona 8 a szczegolnie tabelka powie ci jakie wartosci masz wpisac. Bity 0-3 czytane sa 'normalnie', bity 4-7 tam gdzie masz w tabelce '10' musisz pomnozyc razy 10 i tak dzisiejsza data to: 06 --> 0000 0110 (bity w rtc) czyli 6 dec 01 --> 0000 0001 (bity w rtc)...
Witam Robie budzik na bazie ukladow jak w temacie. Na razie jest to wstepna wersja, w ktorej odczytuje tylko rejestry z sekundami i minutami, a nastepnie wyswietlam je (po odpowiedniej konwersji) na czterech mulipleksowanych wyswietlaczach siedmiosegmetnowych. Ale niestety czasami (srednio raz na 15 minut) wyswietlaja sie niekompletne cyfry - cyfra...
Witam wszystkich, ostatnio złożyłem sobie taki zegarek: http://majsterkowo.pl/zegar-ds1307/ i chciałbym sobie dorobić funkcję budzika lecz jestem kompletnie zielony w programowaniu i prosiłbym o to was, w zamian oferuję 50 punktów, przy okazji znalazłem błąd w oryginalnym programie, otóż przycisk btnDown był zdefiniowany pod pin 9 , który ,,wisiał''...
ds1307 ustawi zegar ds1307 procedury projekt ds1307
termostat gniazdo impuls wtrysku trzaski lampy
zasilacz mip550d naprawa pompy zatapialnej
Kod 1852 - Interpretacje i Zastosowania Komunikat "PC dos" w zmywarce Miele - przyczyny i rozwiązania