-
Thread
Atmel AVR µC gesucht
Hauptgrund ua. die Attiny841 zu kaufen. Es muss ein I2C Master nutzbar gemacht werden, der eine DS3231 oder notfalls DS1307 ausliest. Weiteres sollte ein Hardware UART erforderlich sein. Die Filtermaske bei Atmel bringt mir da nichts. Denn nach I2C bzw TWI Master zu suchen geht nicht.
Max schrieb im Beitrag #3840291: > Es muss ein I2C Master nutzbar gemacht werden, der eine DS3231 oder > notfalls DS1307 ausliest. Das kann man doch ganz einfach in Software machen; teilweise mache ich es immer noch so, da einige µC kein IIC bieten.
-
Thread
Mikrokontroller und Quarz 16.000
Oberwelle von 32,768kHz wäre etwa bei 196 kHz und damit schwach mit einem LW Radio ganz in der Nähe des DS1307 empfangbar.
schreiben, zB. alle 1s eine Anzeige Toggeln oder so und schon weisst du ob der Quarz funktioniert. Beim Ds1307 würde ich ähnlich vorgehen. Setzte die Zeit auf 0:00 und lass eine anzeige aufleuchten wenn die Zeit des Ds1307 bei 1,00min ist vergleiche es mit einer uhr und da hast dus ob der richtig funktoiniert
-
Thread
MAX7313 an Arduino Nano - Pins nicht "schaltbar"
werden [c] #if defined(ARDUINO) #if ARDUINO >= 100 //check busy Wire.beginTransmission(DS1307_ID); printIIC(STATUS_REGISTER); Wire.endTransmission(); Wire.requestFrom( ( DS1307_ID ), 1); // request Status Register 1 Byte if ((readIIC() & 0x00ff) & (1<<BSY))
if( !(i2c_test_flags&(1<<I2C_RTC_TEMP_BSY)) ) { // read Temp Wire.beginTransmission(DS1307_ID); // DS anwaehlen printIIC(MSB_TEMP); // MSB Byte anwaehlen Wire.endTransmission(); Wire.requestFrom( ( DS1307_ID ), 2); // request
-
Thread
Arduino sketch
resistors divide the voltage in half // Reset the register pointer Wire.beginTransmission(DS1307_ADDRESS); Wire.write(zero); Wire.endTransmission(); Wire.requestFrom(DS1307_ADDRESS, 7); int second = bcdToDec(Wire.read()); int minute = bcdToDec(Wire.read()); int hour = bcdToDec
// Only used to print to serial and not needed for logging purposes { Wire.beginTransmission(DS1307_ADDRESS); Wire.write(zero); Wire.endTransmission(); Wire.requestFrom(DS1307_ADDRESS, 7); int second = bcdToDec(Wire.read()); int minute = bcdToDec(Wire.read()); int hour = bcdToDec
-
Thread
Arduino + Uhrenchip
RTC mit ds1307 kann einfach und unkompliziert per i2c ausglesen werden .
Für Arduino gibt es bereits eine komplette RTC library: http://learn.adafruit.com/ds1307-real-time-clock-breakout-board-kit/arduino-library Die Komponenten (Ds1307+Uhrenquarz) werden dich ca 3€ kosten.
-
Thread
Beschaltung DS3231 bei bestehendem I²C Bus
; //case 0xA0:I2C EEPROM ")); case 0xD0: Wire.beginTransmission(DS1307_ID); printIIC(0x3F); (Wire.endTransmission()) ? i2c_test_flags|=(1<<I2C_RTC_3231) : i2c_test_flags|=(1<<I2C_RTC_1307); #ifdef DEBUG (i2c_test_flags&(1<<I2C_RTC_3231)) ? Serial.println(F(" DS3231 RTC ")) : Serial.println(F(" DS1307 RTC ")); #endif break; default: DEBUG_PRINTLN(F("")); break; } [/c]
-
Thread
Uhrenquarze, SMD-Gehäuse
Hallo Ich brauche für meinen DS1302 und DS1307 ein Uhrenquarz. aus platz gründen möchte ich einen im SMD Format. Jetzt hab ich bei Reichelt geschaut und da gibt es diese mit verschiedenen pF werden (9pF, 12pF bsw. 6pF, 7pF, 10pF,
Hab jetzt mal kurz ins Datenblatt des DS1307 rein geschaut und da steht 12.5pF. :-) Trotzdem noch die frage: was würde das ausmachen wenn es mehr pF als empfohlen sind/währen?
-
Thread
DCF77-Programm-Multitaskingproblem
System gespeicherte Zeit ist ein Bitmuster. Zur Ergänzung kann ich hier noch die Umwandlung in ein DS1307-taugliches Bitmuster angeben: [c] ds1307_set[2] = ((dcf_set[2]>>5)&7)|((dcf_set[3]&15)<<3); // minute ds1307_set[3] = ((dcf_set[3]>>5)&7)|((dcf_set[4]&7)<<3); // hour ds1307_set[4] = (dcf_set[5]>>2)&7; // weekday ds1307_set[5] = ((dcf_set[4]>>4)&15)|((dcf_set[5]&3)<<4); // day ds1307_set[6] = ((dcf_set[5]>>5)&7)|((dcf_set[6]&3)<<3); // month
-
Thread
PCF8583
features" aus Deinem Listing habe ich mittlerweile übernommen. Sven: danke für den Tipp mit dem DS1307. ich werde der Sache nachgehen. scheint mir eine "bessere??" Lösung zu sein. nochmals Dank an Euch beide, Roland
@Sven >Wenn Du auf den Alarm-Interupt nicht angewiesen bist, kann ich den >DS1307 von MAXIM/Dallas empfehlen. Wieso sollte man beim 1307 auf den Alarm verzichten ? Mit Pin 7 ist das überhaupt kein Akt. Obendrein bietet er ne menge zusatzfunktionen ;)
-
Thread
RTC puffern
Such mal unter den Dallas RTCs (DS1307 oder so). Die haben einen separaten Standby-Anschluss, besser geeignet für Akku oder Goldcap als der PCF.
Ich denke, ich habe mich entschieden --> DS 1672S-33 3V3, Batterie, Goldcap, oder sogar Akku möglich, Ladeschaltung ist integriert. Ebenso wie die besagte Diode. In SO-8. Scheint optimal, und für 2,30EUR billiger als DS1307 bei Reichelt. VG
-
Thread
PCF8574 Ausgänge
" #include <util/delay.h> /* 9600 baud */ #define UART_BAUD_RATE 9600 #define DS1307 0xD0 //Adresse des DS1307 #define PCF_Write 0x70 //Adresse für PCF Porterweiterung schreiben #define PCF_Read 0x71 //Adresse für PCF Porterweiterung lesen unsigned
unsigned char val; i2c_start(DS1307+I2C_WRITE); i2c_write(reg); i2c_stop(); i2c_start(DS1307+I2C_READ); val = i2c_readNak(); i2c_stop(); return val; } char pcf_read(
-
Thread
I²C Frage zu den Adressen
zusammen, ich habe mal eine Frage zu der I²C (TWI) Schnittstelle. Nehmen wir als Beispiel den Maxim DS 1307 RTC Chip. Den kann man per TWI an einen µC anbinden. IM Datenblatt zu dem DS1307 sehe ich aber keine Angaben, wie man dem Chip eine ID vergeben kann. Hintergrund meiner Gedanken ist. Was ist
schlecht. Man ist ein bisschen auf die Implementierung der Hersteller angewiesen. Im fall des Maxim DS1307 wurde dann nicht die möglichkeit vorgegeben. MFG Stephan
-
Thread
Probleme mit i2c
procedure procedure display_time is var byte hr, min, sec, day hd44780_position1 ( 3 ) ds1307_read ( 0x02 , hr ) print_decimal_2 ( hd44780 , hr , "0" ) hd44780 = ":" ds1307_read ( 0x01 , min ) print_decimal_2 ( hd44780 , min , "0" ) hd44780 = ":" ds1307_read ( 0x00 , sec ) print_decimal_2 ( hd44780 , sec , "0" ) hd44780 = "/" ds1307_read ( 0x03 , day ) print_decimal_1 ( hd44780 , day , "0" ) end procedure [/code]
-
Thread
RTC Schaltung mit Led
Dein RTC-Modul. Damit das RTC-Modul mit Batteriespannungen unter 5V noch gut funktioniert, bitte kein DS1307-TinyRTC Modul holen, sondern z.B. die hochgenaue DS3231 wie eBay Nr. 201061620203 oder ähnlich. Lieferzeiten bei Versand aus China beachten, das kann bis zu 40 Tage dauern! Zum Programmieren
schlafen schicken, Arduino nanoV3 um 5€ Estersandro T. schrieb im Beitrag #3880633: > RTC Modul DS3231 um 1€ ist viel genauer als der DS1307 und kann per Alarm selber den tiefschlafenden Atmel wecken Estersandro T. schrieb im Beitrag #3894895: > Jetzt habe ich die Teile bestellt dann kommt
-
Thread
Quarz Abweichung in ppm bei einem Arduino nano Nachbau.
jede Quarzuhr eine Abweichung von 1 Min/Jahr hin Kognitive Verzerrung. > und > meine RTC DS1307 mit 32,786 kHz Uhrenquarz kommt nur auf 1 Min/Monat, > also ca. 50ppm? Abgleichen!
Svensson schrieb im Beitrag #7962851: > meine RTC DS1307 Du meinst die blauen Platinen mit dem EEPROM drauf? Die werden mit Quarzen fraglicher Qualität/Anpassung bestückt. Da kommt es nur auf billig und Stückzahl an. Versuchs mal mit dem DS3231
-
Thread
Worum gehts bei RTC
der µC noch die Uhrzeit weiterrechnen, wenn er am rumdösen (SleepMode) ist? Zum Vergleich -> RTC DS1307 0,5µA ATMega8 (PowerDown Mode) -> 3µA Also immerhin das 6fache. Also 6fach kürzere Batterielebensdauer. Und ich bezweifle, dass man den Timer weiterlaufen lassen kann im PowerDOwn Mode.
Henrik Jahnke wrote: > Zum Vergleich -> RTC DS1307 0,5µA > ATMega8 (PowerDown Mode) -> 3µA Wo ist das Problem ? Angenommen ein Golkap (= 1F) dient zur Pufferung und der AVR kommt mit 3V aus, dann haben wir (5V-3V) * 1F / 3µA = 185h Pufferzeit
-
Thread
DCF77 (wieder mal)
reicht wenn alle paar Stunden (oder in der Nacht) einmal ein korrektes Signal empfangen wird, und der DS1307 nachgeführt wird. - möglichst wenig Arbeit in der ISR Grundsätzliche Funktionsbeschreibung: Der Pin Change Interrupt wird verwendet, um die Signale vom DCF-Empfänger aufzuzeichnen. Timer 1
Da möchte ich einigermaßen verläßliche Zeitinfo haben, die auch batteriegepuffert ist (deswegen der DS1307). Andererseits weiss ich nicht wie genau der DS1307 ist (z.B. Abweichung in einem Jahr) außerdem gibts da ja noch die Sommerzeit... deshalb das DCF77 zusätzlich. Das Ding wird im Keller stehen, da
-
Thread
Stimmen diese Berechnungen? Leckstrom Kondensator
Berechnungen? Ich wollte den Supercap zur längerfristigen (ca. 1-3Monate) pufferung eines RTCs (DS1307) verwenden. Der 1307 benötigt 500nA im schlimmsten Fall. Somit würde das System ja 2.5uAs benötigen. Folglich: 0.55As / 2.5uAs = 220000s = 61.1h Bis zur entladung mit RTC... Gibt es
#3927289: > Ich wollte den Supercap zur längerfristigen (ca. 1-3Monate) pufferung > eines RTCs (DS1307) verwenden. also ich würde den genaueren DS3231 nehmen als Modul auch China kein bischen teurer! Claudio H. schrieb im Beitrag #3927289: > Ladungsverlust pro Sekunde: Q = I x t = 2uA * 1s
-
Thread
Visual C++ CRT Linker-Problem?
== "1") ){ // Wenn RTC nicht schon gefunden labelDS1307info->Text = "search"; // Anzeige labelComInf->Visible = false; if(search == 0){ if( ComOpen(comport,baud,P_NONE,S_1BIT,D_8BIT) ){ // Test ob Comport nicht
} if( loops >= searchLoops){ // Keine RTC gefunden labelDS1307info->Text = "No DS1307 found\nCheck the connection"; labelComInf->Visible = true; labelComInf->Text = "Unterstützte Comports:\n1 bis 50"; buttonSearch->Visible =
-
Thread
Einfaches Mikrocontroller Projekt gesucht!
Die Idee mit der Uhr ist vielleicht gar nicht schlecht. Als Basis köntest Du ein DS1307 Modul nutzen: http://www.ebay.com/itm/SainSmart-I2C-RTC-DS1307-AT24C32-Real-Time-Clock-For-Arduino-Raspberry-Pi-MCU-/ Für Display und Microcontroller musst Du eine eigene Platine erstellen.
Tim . schrieb im Beitrag #3348162: > Als Basis köntest Du ein DS1307 Modul nutzen: > > http://www.ebay.com/itm/SainSmart-I2C-RTC-DS1307-AT24C32-Real-Time-Clock-For-Arduino-Raspberry-Pi-MCU-/ Der Link funktioniert nicht.
-
Thread
[V] CPLD, FPGA & Co.
DC-Motor - Neu/unbenutzt - gegen Gebot 08. Relais-Board - Neu/unbenutzt - gegen Gebot 09. Dev.-Board DS1307 - Neu/unbenutzt - gegen Gebot 10. Dev.-Board Stepper - Neu/unbenutzt - gegen Gebot
vorhanden: 05. Dev.-Board DC-Motor - Neu/unbenutzt 08. Relais-Board - Neu/unbenutzt 09. Dev.-Board DS1307 - Neu/unbenutzt 10. Dev.-Board Stepper - Neu/unbenutzt Alles zusammen für 12€ incl. Versand .....
-
Thread
RTC DS3231 - Temperatur Daten?
C komisch, ich weiss auch nicht weiter [c] // read Temp Wire.beginTransmission(DS1307_ID); // DS anwaehlen printIIC(MSB_TEMP); // MSB Byte anwaehlen Wire.endTransmission(); Wire.requestFrom( ( DS1307_ID ), 2); // request
mal das BSY Flag prüfen bevor er die Temperatur liest //check busy Wire.beginTransmission(DS1307_ID); printIIC(STATUS_REGISTER); Wire.endTransmission(); Wire.requestFrom( ( DS1307_ID ), 1); // request Status Register 1 Byte if ((readIIC() & 0x00ff) & (1<<BSY))
-
Thread
pgmspace.h|1067|error: unknown type name ‘uint_farpt
main.c Zeile 176 kommentiert eine '}' aus. Wenn man die reinnimmt (und ds1307test.c der Rundablage zuführt) gehts(tm).
quick'n'dirty: [code]avr-gcc -Wall -DF_CPU=16000000UL -mmcu=atmega32 -Os -o main *.c[/code] ..ds1307test.c entsorgen nicht vergessen! ..wers mit obigem Archiv nachstellen will: [code] $ rm -rf wecker ; mkdir wecker ; cd wecker ; unzip ../wecker.zip >/dev/null ; rm -f ds1307test.c ; sed -i '
-
Thread
I2C-Bus terminieren? Genauer Uhrenquarz für RTC?
Fragen: 1. Braucht man an einem I2C-Bus, an dem ein Mega8L, ein EEPROM AT24C512 und eine RTC DS1307 hängen Abschlusswiderstände, wie an jedem normalen Bus? (Platinengröße: 3*4cm, Leitungslängen dementsprechend kurz) 2. Welchen Uhrenquarz würdet ihr empfehlen, wenn das Ding ziemlich genau
Das kann dann ins Dataflash oder EEPROM geschrieben werden. Ich versuche es erst mal mit der DS1307 mit Uhrenquarz oder Oszillator und hoffe, dass ich nicht allzu viele durchprobieren muss, bis ich einen genauen und vor allem temperaturstabilen finde.
-
Thread
Bitte Schaltung prüfen! :)
Qa4AAOSwnFZXVZzO - FT800CB -> http://www.hotmcu.com/5-graphical-lcd-touchscreen-480x272-spi-ft800-p-124.html - DS1307Z - 2x DHT22 - 2x DS18b20 - 433MHz Sender (Billigteile) Prototyp geätzt - alles funktioniert! :) Da ich mir aber bald Platinen ätzen lassen möchte, würde ich doch noch gern wissen wie es
dem alle Leitungen nach +5V und GND gehen und an den nichts angeschlossen ist. Ein Stecker DHT2 und DS1820 für den dasselbe gilt. Ein Baustein DS1307 der alleine in weiter Flur hockt, ohne Verbindungen zum Rest der Welt, und das alles bloss weil der Schaltplanersteller zu faul ist Linien zu zeichen. Im
-
Thread
Arduino Micro + Uhrenchip
Ich bis jetzt den ds1307 genutzt, da gibt es bei Ebay Module mit eingebauter Knopfzellen Battery zum längerfristigen Speichern, damit auch nach den trennen der Strom Versorgung, beim erneuten Anschalten die Uhrzeit noch
_%28DS1307%29_%28SKU:DFR0151%29 oder http://bildr.org/2011/03/ds1307-arduino/
-
Thread
Datenblatt URL ändern?
DS1631 http://datasheets.maximintegrated.com/en/ds/DS1631-DS1731.pdf
DS1307 https://datasheets.maximintegrated.com/en/ds/DS1307.pdf
-
Thread
RTC DS1302 liefert manchmal falsche Werte
Ich hatte ähnliche Probleme mit meinem DS1307. Verursacht hat diese ein Schaltregeler auf der Platine wogegen die ICs nicht genug abgeschirmt waren, und ein zu großer Pull-UP, falls nicht schon geschehen würde ich diese beiden sachen einmal
DS1307 IST I2C DS1302 NICHT !
-
Thread
Uhr bauen-I2C,
nur darüber denken... Back to topic, Stichworte für euch zum suchen der nötigen Informationen: DS1307 (Batteriegepufferte Echtzeituhr mit I2C bzw. TWI ) 74HC585 (Schieberegister) SPI-Schnittstelle (um die Schieberegister zu bedienen) Peter Fleury, TWI Library (fertige Softwarebibliothek für I2C
mein Sohn wie er das genau machen soll. Also er muss ja die Platine mit dem RTC, wir haben einen DS1307 gewählt, er hat auch seinen Lehrer gefragt, der sollte auch passen. Hier der Link: http://www.datasheetcatalog.org/datasheet/maxim/DS1307.pdf aber er soll ja, den Print mit dem Pollinboard
-
Thread
Massefläche unter Quarz
braucht man keine extra Massefläche Allerdingds empfielt Maxim im Datenblatt für das Uhren-ICs (DS1307) eine lokale Massefläche unter dem Quarz, obwohl diese Quarze ein Metallgehäuse haben?!
an Masse und Problem war gelöst Das heisst man sollte das Quarz tatsächlich damit verbinden (im DS1307-Datenblatt stand: Massefläche auf die andere Seite)? Macht man das mit einem Drahtbügel?
-
Thread
Radio Projekt mit Fehler, brauche Hilfe :(
Mh mal kurzes Update: Das Problem mit dem DS1307 konnte ich dadurch lösen dass ich das Brückenkabel auf 1/3 der Größe reduziert habe. Seitdem läuft das Auslesen der Uhrzeit korrekt. Was das XS3868 angeht: Ich habe herausgefunden, dass wenn die
); //Clock DS1307new clock; char HourChars[5], MinuteChars[5], SecondChars[5]; unsigned long LastTimeUpdate = 0; unsigned int LastHour=100, LastMinute=100, LastSecond=100; //Radio Si4703_Breakout FmTuner(A0
-
Thread
RTC DS3231 Frage zu Code
. > Ist dann wohl eher eine Designfrage des Programmierers. aber das genau die Adresse von der DS3231 (genau wie der DS1307) fest ist sehe ich in dieser Routine keinen Sinn sie variabel zu setzen! Wer kann den Code für die DS denn anderweitig nutzen? ausser I2C start und stop ist da nichts übertragbar
Joachim B. schrieb im Beitrag #6875372: > aber das genau die Adresse von der DS3231 (genau wie der DS1307) fest > ist sehe ich in dieser Routine keinen Sinn sie variabel zu setzen! Ja...das hier ist echt nen schlechts Bsp. Ich hab aber direkt daran gedacht, falls es von der
-
Thread
RTC3231 SQW-Ausgang und DCF77-Modul-Ausgang nicht synchron
#6821884: > die beiden LEDs blinken zwar im Sekundentakt > aber unsynchronisiert. Hast du die DS3231 aus China? Ich habe dieselbe Erfahrung gemacht mit DS1307, Chinesischer Nachbau. Obwohl im Datenblatt steht, dass die Teilerkette mit Schreiben der Sekunden zurückgesetzt wird, passiert es nicht. Habe auch 2 Stück original DS1307 gekauft um es zu testen. Die original IC-s benehmen sich wie im Datenblatt geschrieben, sie zählen genau 1 Sekunde nach dem Schreiben weiter. Offensichtlich weist deine DS3231 IC denselben Mangel
-
Thread
F_CPU calibrieren und in eeprom abspeichern
[c] void main(void) { .... clock_prescale_set(clock_div_2);//8mhz init_timer_smh(); kk_ds1307_getAll_to_global_struct_zt(); #if calib_fcpu u32 rtc_start=3600*hou+60*min+sec; timer_100msX=0; #endif .... while(1) { //------------------- smh timer ------------------ if (timer_smh
Axel S. schrieb im Beitrag #7832407: > Genauigkeit deiner RTC //kk_ds1307_setDate(12,1,25); //kk_ds1307_setTime(15,47,00); Am 12.1. nach PC-Zeit gestellt. Stand jetzt: Im Minutenbereich keine Abweichung. => die RTC ist ausreichend genau.
-
Thread
I2C kommunikation hängt
Hi ich will mit dem MSSP Modul vom PIC16F877A über i2c eine ds1307 RTC ansteuern nun hab ich mich über Sprut Informiert und das Ganze auch schon programmiert bei der Simulation in Proteus ISIS funktioniert das auch einwandfrei aber beim Aufbau am Steckbrett bleibt
Board schon überprüft. Nun weiß ich nicht wie ich weiterkommen soll wie kann ich die Funktion vom DS1307 testen? Ich hab das Quarz mit der Nr. 14-26T32,768KHZ von http://www.csd-electronics.de/de/index.htm an den PINS 1&2 sollte ich mit einem Multimeter mit Frequenzzähler etwas am Quarz messen können
-
Thread
Uhr mit RTC und DCF
Hi, ich habe hier einen ATmega88, ein RTC (DS1307), ein Conrad DCF Modul sowie ein HD44780 2x16 Zeilen Display. Nun würde ich die Komponenten gerne zu einer Uhr mit automatischer Zeitsynchronisation "zusammenbauen" und das Ganze als Einstieg in
solchen HW-Interrupts irgendeine besondere Beschaltung > (Pull-Ups, oder ähnliches) Im Datenblatt des DS1307 Fig.1 siehst du, dass der SQW/OUT ein Open-Drain-Ausgang ist. Ohne Pull-Up kann dort also kein High-Pegel entstehen.
-
Thread
STM32F405 I2C Levelshifter benötigt?
Meine angeschlossenen I2C Komponenten laufne mit 5V wie beispielsweise der ADS1015 (AD-Wandler) oder DS1307 (RTC). Einen bidirektionalen Pegelwandler habe ich mir bereits gebastelt, aber es würde Platz sparen, wenn ich ihn ohnehin nicht benötige... Benötige ich also einen Pegelwandler, wenn die Pins
angeschlossenen I2C Komponenten laufne mit 5V wie beispielsweise > der ADS1015 (AD-Wandler) oder DS1307 (RTC). Der ADS1015 kann mit 3,3V betrieben werden, der DS1308 (!) auch (nicht der DS1307). Überlegen ob man nicht eine Spannungsdomain (5v) eliminieren kann. rgds