-
Thread
RTC DS1307 mit Bascom konfigurieren und abfragen
! Twcr = &B00000100 ' nur TWEN setzen 'address of ds1307 Const Ds1307w = &HD0 ' Addresses of Ds1307 clock Const Ds1307r = &HD1 Config Clock = User ' this will dim the bytes
year As Byte Dim _sec As Byte Dim _min As Byte Dim _hour As Byte Dim Wt As String * 15 Dim Ds1307w As Byte Dim Ds1307r As Byte Ds1307w = &B11010000 Ds1307r = &B11010001 '_day = 24 '_month = 5 '_year = 12 '_sec = 00 '_min = 38 '_hour = 15 Input "Wd.: " , _weekday Input "Tag: " ,
-
Thread
Wieder mal DCF
//Blinkenlights:= true; BlinkTimer:= 10; MinuteSema:= false; minute:= DS1307getMinute; hour:= DS1307getHour; ... [/c] offenbar jede Minute rein. Vom DS1307 (wozu braucht ihr dann noch DCF? der DS1307 zählt doch ohnehin selber die Zeit weiter) wird die Zeit geholt
bemüht, eine callback Prozedur zu schreiben. Hier mein Vorschlag: procedure DCFupdate; begin DS1307setSecond(DCF_SECOND); DS1307setMinute(DCF_MINUTE); DS1307setHour(DCF_HOUR); end; Die Prozedur habe ich vor InitPorts eingefügt - soweit ich mich an pascal erinnern kann, ist die Platzierung
-
Thread
Code in Ordnung/strukturiert/uebersichtlich?
[1] = (( buffer & 0x0F )) + '0'; ds1307.seconds[2] = '\0'; // read & write Minutes DS1307_read(0x01, &buffer); ds1307.minutes[0] = (( buffer & 0x7F ) >> 4 ) + '0'; ds1307.minutes[1] = (( buffer & 0x0F )) + '0'; ds1307.
; case 5: ds1307.day = "Friday\0"; break; case 6: ds1307.day = "Saturday\0"; break; case 7: ds1307.day = "Sunday\0"; } // read & write Date DS1307_read(0x04, &buffer); ds1307
-
Thread
Real-Time Clock (ds1307)
Wie ist das bei dem DS1307 gedacht?? Nicht das das Problem aus der Richtung kommt....
= (1 << TWEN) | (1 << TWSTO) | (1 << TWINT); while(TWCR & (1 << TWSTO)); } void ds1307_writereg(uint8_t adr,uint8_t data) { twi_start(); twi_writeadr(DS1307ADR,TW_WRITE); twi_writedata(adr); twi_writedata(data); twi_stop(); } uint8_t ds1307_readreg(uint8_t adr
-
Thread
RTC läuft nicht
Config Sda = Portc.1 Config Scl = Portc.0 ' Adressen festlegen Const Ds1307w = &HD0 ' Addresse des DS1307 zum schreiben Const Ds1307r = &HD1 ' Addresse des DS1307 zum lesen ' Uhr konfigurieren
RS232 Ausgabe auf den PC machen oder einfach eine LED an einem Port anschalten. Hast Du auch die DS1307 nach Datenblatt beschaltet? Liegt Strom an? I2C-Adresse der DS1307 korrekt eingetragen? Wenn die DS1307 hardwaremäßig nicht korrekt läuft dann sollte das I2cstart eine Fehlermeldung zurückgeben.
-
Thread
DS1307 rennt
Mit den DS1307 habe ich auch immer eine große Abweichung festgestellt. Seitdem verwende ich nur noch DS3234.
Die DS3231 ist fast identisch mit der DS1307 und hat einen integrierten TCXO. Die würde sogar gehen weil sie im Code unterstützt wird. Trotzdem würde mich mal interessieren ob jemand eine gescheite Genauigkeit mit der DS1307 hingekriegt hat
-
Thread
I2C Real Time Clock/Calendar (DS1337
RAM_END 0x3F void SetTimeDate() // simple, hard-coded way to set the date. { I2C_WriteRegister(DS1307, MONTHS_REGISTER, 0x08); I2C_WriteRegister(DS1307, DAYS_REGISTER, 0x31); I2C_WriteRegister(DS1307, YEARS_REGISTER, 0x17); I2C_WriteRegister(DS1307, HOURS_REGISTER, 0x08 + 0x40); // add 0x40 for PM I2C_WriteRegister(DS1307, MINUTES_REGISTER, 0x51); I2C_WriteRegister(DS1307, SECONDS_REGISTER, 0x00); } [/c] und lese diese wieder mit: [c] void DS1307_GetTime(uint8_t *hours, uint8_t *minutes, uint8_t *seconds)
-
Thread
Function und sprintf problem / frage
(); unsigned char ds1307_read_minute(); unsigned char ds1307_read_hour(); unsigned char ds1307_read_day(); unsigned char ds1307_read_date(); unsigned char ds1307_read_month(); unsigned char ds1307_read_year(); unsigned
-MP -MF .dep/ds1307.o.d ds1307.c -o ds1307.o In file included from ds1307.c:2: ds1307.h:12: warning: function declaration isn't a prototype ds1307.h:13: warning: function declaration isn't a prototype ds1307.h:14
-
Thread
Propleme beim Zeitgesteuerten Dimmen einer LED
************************************************************************* * Zeit und Datum aus DS1307 auslesen und konvertieren */ void getDateDs1307(int date[]) { Wire.beginTransmission(DS1307_I2C_ADDRESS); // I2C-Kommunikation im Schreibmodus starten Wire.write(0x00);
************************************************************************* * Zeit und Datum aus DS1307 auslesen und konvertieren */ void getDateDs1307(int date[]) { Wire.beginTransmission(DS1307_I2C_ADDRESS); // I2C-Kommunikation im Schreibmodus starten Wire.write(0x00);
-
Thread
Atmega328p und DS1307
Habs jetzt mal an ein grove - ds1307 gehängt. Auf dem Board ist ja nur der DS1307 Chip, ein quarz und 2 Pullup Widerstände. Funktioniert einwandfrei. Hab mir mal nur die Sekunden ausgeben lassen. Liegt also eindeutig nicht am
Ausgabe am Seriellen Port aus? Ein "Test" müsste du ja auf jeden fall bekommen. Probier nen anderen DS1307 Chip, wenn das nicht Funktioniert hol dir das https://www.reichelt.de/arduino-grove-echtzeituhr-rtc-ds1307-grv-rtc-p191187.html Ich kann mich nur widerholen. Damit und mit deiner Software funktioniert
-
Thread
Auslesung von DS1307 RTC
(0x00);//stop oscillator i2c_write(ds1307_dec2bcd(second)); i2c_write(ds1307_dec2bcd(minute)); i2c_write(ds1307_dec2bcd(hour)); i2c_write(ds1307_dec2bcd(dayofweek)); i2c_write(ds1307_dec2bcd(day)); i2c_write(ds1307_dec2bcd(month
()); *hour = ds1307_bcd2dec(i2c_readAck()); i2c_readAck(); *day = ds1307_bcd2dec(i2c_readAck()); *month = ds1307_bcd2dec(i2c_readAck()); *year = ds1307_bcd2dec(i2c_readNak()); i2c_stop(); } [/c] ds1307
-
Thread
Kompilieren mit Fehler darf nicht sein
Könnt Ihr meine Projektdatei kompilieren? Beim Kompilieren bekomme ich einen Fehler: rm -rf DS1307.o DS1307.elf dep/* DS1307.hex DS1307.eep DS1307.lss DS1307.map Build succeeded with 0 Warnings... avr-gcc.exe -mmcu=atmega32 -Wall -gdwarf-2 -Os -std=gnu99 -funsigned-char -funsigned-bitfields
" avr-gcc.exe -mmcu=atmega32 -Wl,-Map=DS1307.map DS1307.o -o DS1307.elf DS1307.o: In function `main': C:\(Meine Daten)\Privat\(AVR Projekte)\Projekte\Real Time Clock DS1307\default/../DS1307.c:800: undefined reference to `twiInit' DS1307
-
Thread
Problem mit DS1307
Monat As Byte Dim Jahr As Byte Dim Sekunde As Byte Dim Minute As Byte Dim Stunde As Byte Dim Ds1307w As Byte Dim Ds1307r As Byte Ds1307w = &B11010000 Ds1307r = &B11010001 Wochentag = 7 Tag = 16 Monat = 12 Jahr = 07 Sekunde = 00 Minute = 28 Stunde = 13 Cls Do Rem Datum und Zeit
Modus Cursor Off Noblink 'LCD = Cursor aus 'address of ds1307 Const Ds1307w = &HD0 ' Addresses of Ds1307 clock Const Ds1307r = &HD1 Config Clock = User ' this will dim the bytes
-
Thread
DS1307 an 3,3V
= _bv(PIND2); // Einschalten des Pullups um INT0 zu verweden. } [/c] Die Ansteuerung des DS1307 : [c] #define CLOCK_HALT 7 #define SQW_CONTROL_REG 0x07 #define SQW_OUT 7 #define SQW_SQWE 4 #define SQW_RS1_RS0_1Hz 0x0 void ds1307_init() { /* Tell the DS1307 to
ds1307 derartig gestört dass er nicht mehr funktionieren wollte.
-
Thread
I2C Uhr zeigt I2c Error!
Hi, [c] #define DS1307 0x68 // Adresse des DS1307 ist 0x68 [/c] nimm mal dies: [c] #define DS1307 0xD0 // Adresse des DS1307 ist 0x68 * 2 [/c] Deine I2C-Lib will nicht die Adresse deines Chips sondern
Stephan W. schrieb im Beitrag #2031280: > Hi, > [c] > #define DS1307 0x68 // Adresse des DS1307 ist 0x68 > [/c] > > nimm mal dies: > > [c] > #define DS1307 0xD0 // Adresse des DS1307 ist 0x68 * 2 > [/c] > > Deine I2C-Lib will nicht die Adresse
-
Thread
Frage zum Wellenwiderstand
geblieben, Den TO hatte ich angeschrieben aber keine Antwort erhalten. ich änderte in "DS1307new.h" zu: [c] #ifndef DS1307_ID #define DS1307_ID 0x68 #endif // #ifndef DS1307_ID // ********************************************* // Library interface description // ********************************************* class DS1307new ...usw. [/c] und in "DS1307new.cpp" [c] #ifndef DS1307_ID #define DS1307_ID 0x68 #endif // #ifndef DS1307_ID // ********************************************* // Public functions
-
Thread
RTC DS1307 1Hz
ok habe mich etwas umgeschaut kam zu folgendem code: #include "Wire.h" #define DS1307_I2C_ADDRESS 0x68 // each I2C object has a unique bus address, the DS1307 is 0x68 void setup() { Wire.begin(); } void sqw1() // set to 1Hz { Wire.beginTransmission(DS1307_I2C_ADDRESS);
Hallo @ all #include "Wire.h" #define DS1307_I2C_ADDRESS 0x68 // each I2C object has a unique bus address, the DS1307 is 0x68 void setup() { Wire.begin(); } void sqw1() // set to 1Hz { Wire.beginTransmission(DS1307_I2C_ADDRESS)
-
Thread
Probleme mit DS1307 und dessen Zeitausgabe
Daten liefert. Ist der Fehler in meinem Programm oder liegt der Fehler am DS1307. Hab derzeit nur diesen Einen DS1307 da, auf einem Fertigmodul von Amazon. Kenne sonst nur den PCF8583, allerdings ist dieser nicht bei mir vorrätig. Programmplatzanzeige und Frequenzanzeige funktionieren
wäre deiner Meinung nach richtig? > Ist der Fehler in meinem Programm oder liegt der Fehler am DS1307. Welche Daten laufen über den Airbus, d.h.was dekodiert der Logikanalysator? Nur wenn vom DS1307 die richtigen Daten über den Bus kommen, hat dein Programm eine Chance.
-
Thread
Kondensator an Quarz einer Echtzeituhr oder nicht?
Ich habe hier die DS1307. Im Datenblatt http://datasheets.maximintegrated.com/en/ds/DS1307.pdf ist in den Schaltbildern immer nur der Quarz eingezeichnet, schaut man im Internet fertige Module mit dem DS1307 an, ist dort
Levelshifter: http://www.ebay.de/itm/I2C-DS1307-wirklich-Zeit-Uhr-Modul-fur-Arduino-Tiny-RTC-/171533844270
-
Thread
Arduino und DS1307
Glaskugel sagt: vbat nicht richtig beschaltet, DS1307 läuft gar nicht.
---> http://datasheets.maximintegrated.com/en/ds/DS1307.pdf <---
-
Thread
DS1307 Lib für Fleury's I2C
inline bool ds1307_read(struct ds1307_time_t *time_data) { uint8_t data; /* Tell the DS1307 we want to read starting at address 0. */ i2c_start_wait(DS1307_ADDR+I2C_WRITE); i2c_write(0x00); /* Commence
bool ds1307_read(struct ds1307_time_t *time_data) static inline bool ds1307_write(struct ds1307_time_t *time_data) Die Datentypen sind bei mir ebenfalls das struct von der lib struct ds1307_time_t {
-
Thread
Datum und Uhrzeit auf Mikrocontroller
erfahren oder ist das geheim? Hast du wohlmöglich die eierlegende Wollmilchsau bezgl. Einstellung DS1307-Uhr gefunden? 73 Wilhelm
erfahren oder ist das geheim? Hast du wohlmöglich > die eierlegende Wollmilchsau bezgl. Einstellung DS1307-Uhr gefunden? Nun, ich habe es mir sehr einfach gemacht und die DS1307-Library für den Arduino verwendet. Da ist folgendes Beispiel dabei, das man leicht etwas an die eigenen Bedürfnisse anpassen
-
Thread
suche C source für die DS1307 RTC
Hat überhaupt schon mal jemand den DS1307 mit der I2C Library von Peter Fleury zum Laufen gebracht ? Wenn ich den DS1307 ansteuere wie im EEprom Beispiel angegeben, dann hängt sich der Mega128 auf..... Greets Karlheinz
doch ein stop start command ich mache das ja mit der arduino LIB und verzweige bei Bedarf auf DS1307 oder DS3231 ich weiss ja nicht wie ihr das verwendet, mit start und stop für die DS1307?
-
Thread
Bascom 2 getrennte I2C TWI an einem Controller DS1307
tadellos, jetzt wollte ich noch nen DS307 RTC dazu in den I2C hängen und mit dem Maste beide Slaves (DS1307 und Mega32 auslesen (Mega32 funktioniert weiterhin, DS1307 geht nicht) sobald ich den Mega 32 vom I2C trenne läuft auch die Kommunikation zum DS1307! TWI geschwindigkeit schon auf 100khz gestellt,
Und warum nicht UART zwischen den ATMEGA's und I2C mit DS1307 ?
-
Thread
String einlesen und bearbeiten
include <avr/signal.h> #include <stdio.h> //#include "usart.h" //#include "uart.h" #define DS1307 0xd0 /* I2C Adresse unseres DS1307 Uhrenbausteins, write-Zugriff */ #define USE_LCD 1 // 1 Falls LCD verwendet wird // type declarations - Hier werden neue Typen für Variablen definiert typedef
}else { /* issuing start condition ok, device accessible */ i2c_start_wait(DS1307+I2C_WRITE); // set device address and write mode i2c_write(0x00); // write address = 0 i2c_rep_start(DS1307+I2C_READ); // set device address and read
-
Thread
Pinkompatible Alternative zum DS1307?
Lena schrieb im Beitrag #4458341: > Also, es gibt mit dem DS1307 definitiv deutlich mehr Übertragungsfehler > als mit anderen I2C-Devices, die am gleichen Bus hängen. Das muß aber jemand vergessen haben, meinen DS1307 zu sagen, denn die arbeiten korrekt. Wichtig
ACK gelesen und dann STOP gegeben. Danach war der nächste Transfer (in meinem Falle ebenfalls ein DS1307) gestört. mfG + sorry
-
Thread
Sommerzeitberechnung mit Bascom
PortC.4 Config Scl = Portc.0 'PortC.5 bei Atmega 8 Const Ds1307_write = 208 '&HD0 I2C Adresse der Uhr DS1307 Const Ds1307_read = 209 '&HD1 I2C Adresse der Uhr DS1307 '*********************
Return Setdate: I2cstart ' Start I2cwbyte Ds1307_write ' DS1307 schreiben I2cwbyte 3 ' DS1307 Adresszeiger auf 4 (Byte 5) stellen Byt = Dayofweek() I2cwbyte
-
Thread
RTC Zeitcontainer zum Umstecken - Frage zum Stellen der Zeit
Du bei eBay mal nach "rtc ds1307" suchst, findest Du haufenweise solche fertigen Module, die kosten von Chinaversendern kaum mehr als ein einzelner DS1307 und haben dann sogar noch ein I2C-EEPROM mit auf der Platine (TinyRTC).
schlimm? Nach Datenblatt liegt der DS3231 im Standby um Faktor 2 und aktiv um Faktor 5 unter dem DS1307. Allerdings hab ich den länger nicht eingesetzt.
-
Thread
DS1307 Error Bascom
Portc.1 ' I2C Bus konfigurieren Config Scl = Portc.0 Const Ds1307w = &HD0 ' Addresse der Ds1307 Uhr Const Ds1307r = &HD1 Config Porta = Output Dim Ta As Integer ' Stellen der Uhr, muss nur einmal ausgeführt werden
Portc.1 ' I2C Bus konfigurieren Config Scl = Portc.0 Const Ds1307w = &HD0 ' Addresse der Ds1307 Uhr Const Ds1307r = &HD1 Config Porta = Output Dim Ta As Integer ' Stellen der Uhr, muss nur einmal ausgeführt werden
-
Thread
18650 Zelle zu 5V
Hi, Ich betreibe nen ATMega328p an dem ein HC12 und ein DS1307 hängt. Der MC befindet sich die meisten zeit im sleep. Ich betreibe das ganze mit ner 18650 Zelle und der MC und das HC12 Modul kommen von Spannungen von 3 - 4.2V zurecht nur leider steigt der DS1307
, Platz und um es einfach mal auszuprobieren auf ein selbst designtes PCB setzen. Da ich die DS1307 schon rumliegen hatte lag es nahe diese in dem Projekt einzusetzen.
-
Thread
Das ewige Drama mit der DS1307 RTC (Real Trash Clock)
DS1307-hater schrieb im Beitrag #3258177: > Allerdings geht das > Ding vor. Kann man schlecht durch Anhalten des Taktes (was möglich aber > meist sinnlos ist) erklären. Das Datenblatt ist recht restriktiv
Dirk K. schrieb im Beitrag #3896602: > Die DS1307 machen denselben Quatsch wie meine DS1302. und warum nimmt keiner den DS3231? kostet in China nicht mehr als die DS1307 Module Paul Baumann schrieb im Beitrag #3896897: > Braucht man denn
-
Thread
Seltsames Arduino Serial Read verhalten
Serial.available()) { command = Serial.read(); if (command == 84) { setDateDs1307(); getDateDs1307(); Serial.println("Done With Set "); } else if (command == 65) { getDateDs1307(); Serial.println(" "); } else if (command
warum nutzt du nicht die Arduino LIB? DS1307new die DS1307 ist zickig in setup teste ich ob RTC vorhanden und wenn ja welche [c] #if (ARDUINO>0) DEBUG_PRINTLN(F(" -> Scanning...")); byte error, address; int nDevices=0; for
-
Thread
Suche fertiges RTC-Projekt (DS1307) für ATmega8 in C
; //(0=Montag;...;6=Sonntag) unsigned char isdst; }; struct ds1307 rtc; void DS1307GetTime ( void ) { unsigned char __data rtc_temp; rtc.sekunde = DS1307ReadByte ( 0x00 ); rtc.minute = DS1307ReadByte ( 0x01 ); rtc.stunde = DS1307ReadByte ( 0x02 ); rtc.wtag = DS1307ReadByte ( 0x03 ); rtc.tag = DS1307ReadByte ( 0x04 ); rtc.monat = DS1307ReadByte ( 0x05 ); rtc_temp = DS1307ReadByte ( 0x06 ); rtc.jahr = (rtc_temp & 0xF0 ); rtc.jahr
-
Thread
DS1337 schlechte Genauigkeit
Tausch doch einfach den Chip und nimm DS1307 statt DS1337. DS1307 benötigt 12.5pF und ist damit genau passend für das Reichelt-Quarz - und pinkompatibel (ohne Gewähr).
noch aufgeklärt hat. danke noch mal Dietmar für die Guten Tips. Ich habe doch tatsächlich einen DS1307 in meiner Kiste noch gefunden und der läuft seit 5h in meinem Testboard. fehlerfrei... ;) jetzt habe ich nur noch ein Problem. Der DS1307 ist wie Michael richtig schreibt nicht ganz PIN - Kompartibel
-
Thread
DS1307 - I2C Übertragung ACK
Beiträge durchstöbert, habe jedoch nicht meinen Spezial-Fall gefunden. Bin dabei den leidigen DS1307 RTC anzusteuern. Ich habe folgendes Modul 2 mal zuhause: https://www.ebay.de/itm/2PCS-Arduino-I2C-RTC-DS1307-AT24C32-Real-Time-Clock-Module-For-AVR-ARM-PIC-SMD/272950653008?_trkparms=aid%3D222007%
Keine Batterie angeschlossen? Das mag der DS1307 nicht.
-
Thread
DS 1307 Register defekt? Programmfehler ?
lcd_string(datum); } return (0); } void RTC_Init(void) { i2c_init(); i2c_start(Ds1307+I2C_WRITE); // Initialize the I2c module. i2c_write(0x07); // Select the Ds1307 ControlRegister to configure Ds1307 i2c_write(0x00);
after selecting Sec Register i2c_start(Ds1307+I2C_READ); // connect to DS1307(Read mode) by sending its ID sec = i2c_read(1); // read second and return Positive ACK min = i2c_read(1); // read
-
Thread
I2C, Kennt sich hier jemand aus, bitte?
){return ( (val/16*10) + (val%16) );} void setDateDs1307(byte second, byte minute, byte hour,byte dayOfWeek, byte dayOfMonth, byte month, byte year) { Wire.beginTransmission(DS1307_I2C_ADDRESS); Wire.send(0); Wire.send
= 02; hour = 13; dayOfWeek = 7; dayOfMonth = 22; month = 5; year = 10; setDateDs1307(second, minute, hour, dayOfWeek, dayOfMonth, month, year); } void loop() { byte second, minute, hour, dayOfWeek, dayOfMonth, month, year; getDateDs1307(&second, &minute, &hour, &dayOfWeek
-
Thread
RTC DIP Package
#3756442: > Also auf der MAXIM Seite ist überhaupt nichts mit DIP mehr zu finden, > auch nicht der DS1307 > http://para.maximintegrated.com/en/search.mvp?fam=rtc&270=TCXO http://www.reichelt.de/Real-Time-Clock/DS-1307/3//index.html?ACTION=3&GROUPID=2949&ARTICLE=58149&SEARCH=ds%201307&OFFSET=500&WKID=0& Was hast Du gegen DS1307? Eigentlich sollte für die Genauigkeit eher der Quarz verantwortlich sein...
-
Thread
Arduino ESP32 & ds1307new LIB
.. nicht zurecht? hmmm, möglich, aber das ist in der DS3231 auch nicht vorhanden [c] void DS1307new::getCTRL(void) { Wire.beginTransmission(DS1307_ID); Wire.write((uint8_t)0x07); // set CTRL Register Address Wire.endTransmission(); Wire.requestFrom(DS1307_ID,
0xA0 I2Ceeprom 0xD0 DS3231rtc RTC T= 29.0C -------------- 2019/08/24_14:12:15 DS1307new::DS1307new() { #if defined(__AVR__) Wire.begin(); #endif }
-
Thread
RTC Minute getrennt lesen Bascom
Goto Neun End Select [/code] [code] Dim Weekday As Byte Getdatetime: I2cstart I2cwbyte Ds1307w I2cwbyte 0 I2cstart I2cwbyte Ds1307r I2crbyte _sec , Ack I2crbyte _min , Ack I2crbyte _hour , Ack I2crbyte Weekday , Ack I2crbyte _day , Ack I2crbyte _month , Ack I2crbyte
Portc.1 ' I2C Bus konfigurieren Config Scl = Portc.0 Const Ds1307w = &HD0 ' Addresse der Ds1307 Uhr Const Ds1307r = &HD1 Config Clock = User ' Interne Time/Date Routinen für Bascom
-
Thread
I2C Hilfe/Tutorial
/en/ds/DS3231.pdf bzw. ich teste vorher ob ein DS1307 oder DS3231 am I2C hängt und benutze nur die vorhandenen Register. sie benutzen dieselbe ID die Register für Datum und Uhrzeit liegen auf den selben Registern und man kann die DS1307new LIB verwenden
readIIC() Wire.read() #include <DS1307new.h> #define DS1307_ID 0x68 //#if defined(__AVR_ATmega328P__) // ----------------- TON ----------------- //#define BEEPER 8 //Pin 7 on LCD -> D11 auf nano #if defined(__AVR_ATmega328P_
-
Thread
DS1307 und Mega8
springen die zahlen im Display wieder... Hat jemand vielleicht mal einen beispiel in C wie man den DS1307 stellt. Gruß André
--------------------------*/ unsigned char read_DS1307(unsigned char adr) { unsigned char val; start(); out(DS1307_ADDR&0xFE); /* LSB=0 => write */ out(dec2bcd(adr)); start(); out(DS1307_ADDR|0x01); /* LSB
-
Thread
I2C, Programm "crashed" beim Sende Versuch
(C_Ds1307WriteMode_U8); // Connect to DS1307 by sending its ID on I2c Bus I2C_Write(C_Ds1307ControlRegAddress_U8);// Select the Ds1307 ControlRegister to configure Ds1307 I2C_Write(0x00);
(C_Ds1307WriteMode_U8); // Connect to DS1307 by sending its ID on I2c Bus I2C_Write(C_Ds1307ControlRegAddress_U8);// Select the Ds1307 ControlRegister to configure Ds1307 I2C_Write(0x00);
-
Thread
Hilfe bei DS1307
Datenblatt recht verschwurbelt erklärt: 1. Slave Receiver Mode (Write Mode): ... After the DS1307 acknowledges the slave address + write bit, the master transmits a word address to the DS1307. *This sets the register pointer* on the DS1307, with the DS1307 acknowledging the transfer. The master can then transmit *zero* or more bytes of data with the DS1307 acknowledging each byte received. 2. Slave Transmitter Mode (Read Mode): ... The DS1307 then begins to transmit data starting with the register address *pointed to by the register pointer*.
-
Thread
xmega und DS1307
F_TWI) ((F_SYS / (2 * F_TWI)) - 5) #define TWI_BAUDRATE TWI_BAUD(Taktfrequenz, Takt_TWI) #define DS1307 0x68 //Adresse des DS1307 [/c]
Vielleicht liegt es auch daran, das der DS1307 4,5V bis 5V benötigt. https://www.sparkfun.com/datasheets/Components/DS1307.pdf
-
Thread
DS1307 wird heiß
sehe ich nicht. Wurde der DS1307 bereits mit der Lupe auf Lötbrücken zwischen den Pins und unter dem IC abgesucht?
laufen lassen"? Gleiche Schaltung nur Atmega aus seiner Fassung gezupft oder Atmega und DS1307 an JP1 getrennt ?
-
Thread
Probleme mit RTC an TWI
Welche RTC hast du denn? Ich hab die DS1307. Gruß
hast: Hast du schon mal die Datenleitung angesehen? Kommt das ACK vom DS1307?
-
Thread
DS 1307 via I2C an atmega328-brauche Hilfe
Hi Forum, ich versuche seit einiger Zeit, meine DS 1307 RTC mit einem Amtega 328 anzusprechen. Dazu wollte ich als ersten Test in eines der RAM-Register der RTC einen Wert schreiben (48) (Adresse des Registers ist 0x08) und den dann wieder auslesen und
Datenblatt bei den richtigen Bits zu bleiben Ja, sicher. Welches Datenblatt ? Hier ist es fur DS1307: [c] The address byte contains the 7 bit DS1307/DS1308 address, which is 1101000, followed by the *direction bit (R/W ) which, for a write, is a 0. [/c] Siehe auch: https://www.mikrocontroller.net
-
Thread
AVR-Atmega32 RS232 keine PC Verbindung?!
! Danach wurde über RS232 ein einfaches LED Blinkprogramm aufgespielt! Danach habe ich einen DS1307 aufgelötet, seitdem bekomme ich keine RS232-Verbindung zum AVR Studio, obwohl ich das selbe Kabel mit den selben Einstellungen verwende! Gleichzeitig verwende ich ein komplett selbst gebautes Atmega32
Danach > wurde über RS232 ein einfaches LED Blinkprogramm aufgespielt! > > Danach habe ich einen DS1307 aufgelötet, seitdem bekomme ich keine > RS232-Verbindung zum AVR Studio, obwohl ich das selbe Kabel mit den > selben Einstellungen verwende! Den DS1307 finde ich im Schaltplan nicht. Wo sitzt
-
Thread
Bascom RTC , Zeit schreiben
anderen Variablen in den > RTC? > > s = Makebcd(_sec) Hallo So funktioniert es 100% mit DS1307. Nur als Tipp ansehen. Setdate: I2cstart ' Start I2cwbyte Ds1307w ' DS1307 schreiben I2cwbyte 3 ' DS1307 Adresszeiger auf 4 (
Jahr schreiben I2cstop Return Settime: I2cstart ' Start I2cwbyte Ds1307w ' DS1307 schreiben I2cwbyte 0 ' DS1307 Adresszeiger auf 0 stellen _sec = Makebcd(_sec) I2cwbyte _sec ' Sekunden schreiben _min = Makebcd(