DS1337 и 16F877a

K

kandy71

Guest
Здрасти,
Аз използване на DS1337 с DS32KHZ свързани с 16F877a, обаче, часовникът се губи 1 секунда всяка минута.Аз не мога да разбера защо.
Аз ли нещо не е наред?Не мога да калибрирате часовник?

Благодаря

 
Не сте наистина ни е дал много за да продължа, тя може да бъде въпрос или да издаде софтуер, хардуер, имах същия проблем някога agobut беше мой between1-8 минути и е установено, че това е софтуер issuse (грешка) е правилна и тя работи добре

какъв език са ви usinf picbaisc АСМ?

wizpic

 
Здрасти,
Благодаря ви за вашия отговор
Използвах УСВ с водача за ds1307

 
За съжаление, ако публикувам отново.Но всеки знае как да решат този въпрос?

 
Това е моят код

Код:

# включват <16F877A.h>

# устройството *= 16

# устройството ICD = TRUE

# устройството ADC = 8# Предпазители NOWDT / / Не Гледайте Куче таймер

# Предпазители ХС / / Висока скорост OSC (> 4MHz)

# Предпазители непригодени / / Power Up таймер

# Предпазители NOPROTECT / / кодекс не е защитена от четене

# Предпазители NODEBUG / / Не Debug режим за МКБ

# Предпазители NOBROWNOUT / / Не brownout нулиране

# Предпазители NOLVP / / Не prgming ниско напрежение, B3 (PIC16) или B5 (PIC18), използвани за I / O

# Предпазители NOCPD / / Не ЕЕ защита

# Предпазители WRT_50% / / долната половина на програмната памет е пиша защитавам# употреба забавяне (часовник = 18432000)

# употреба RS232 (Baud = 9600, паритет = N, xmit = PIN_C6, rcv = PIN_C7, бита = 8)

# ifndef DS1337_SDA

# определят DS1337_SDA PIN_C4

# определят DS1337_SCL PIN_C3

# endif# употреба i2c (магистър, SDA = DS1337_SDA, SCL = DS1337_SCL)

# включват <LCD.C>

# включват "ds1337.h"
/ / Майн програма

нищожен основни (Void)

(

date_time_t DT;

ds1337_init ();

dt.month = 12; / / декември

dt.day = 31 / / 31

dt.year = 06; / / 2006

dt.hours = 23; / / 23 часа (11pm в 24-часа време)

dt.minutes = 59 / / 59 минути

dt.seconds = 50 / / 50 секунди

ds1337_set_datetime (& DT);DS1337_read_datetime (& DT);lcd_init ();

printf ( "Старт \ п \");а (вярно)

(

delay_ms (300);

ds1337_read_datetime (& DT);

printf (lcd_putc, "\ е \% 02d / \% 02d / \% 02d \ N", dt.day, dt.month, dt.year);

printf (lcd_putc, "\% 02d: \% 02d: \% 02d", dt.hours, dt.minutes, dt.seconds);

)

)

 

Welcome to EDABoard.com

Sponsor

Back
Top