|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
本帖最后由 niubility 于 2022-11-25 11:02 编辑
' c8 S$ K N B" p* Z! B8 v3 N, g9 u8 J
: Q4 g {0 j2 ]LCD初始显示时间日期仿真都为相同数据2005/05/05 05:05(代码设置初试时间为2021/3/24, 12:23)) a" J7 ]8 F* q2 h: ^& Z
* p9 N0 y* m. g* B. X! c, o定义了DS1302.h 文件:
+ e1 | W+ ~ a! ~3 R9 I3 z- 定义uchar timeBuff[] = {21,3,24,12,23,32};//2021/3/24, 12:23:32
- 进行时间的读写基本操作' L9 f. ~& a. w% z6 L/ X
& G" `8 I% S/ t. Z# K3 q0 Mmain.c 如下:
% [: x" O, Q0 J! A. U. b# R8 H: |+ K+ p7 ]; t
#include "./DS1302.h"
3 ^/ ]9 f/ y* x) C3 ~, S- void main()
- {
- Led_P=0;
- //DelayMs(10);
- //Led_P=1;
- UART_init();
- LcdInit(); // 执行液晶初始化
- DS1302_Init(); // 时钟芯片的初始化,三引脚置低
- LcdShowInit(); // 液晶显示“20 - - : ”
- if(DS1302_Read_Byte(0x81)>=128) // 判断时钟芯片是否正在运行
- {
- DS1302_Write_Time(); //TimeBuff ---> DS1302
- Led_P=1;
- }
- while(1)
- {
- DS1302_Read_Time(); // 获取当前时钟芯片的时间,存在数组time_buf中
- FlashTime(); //TimeBuff --->LCD1602
- //其他代码
- }
- }+ B2 N+ l' [# U/ l1 b* k5 r- m
* n' y- }+ i" SPS:
+ z5 q# u& W# l% O- p, S我晶振由12MHz 更换到 11.0592MHz。2 i* C2 e& o% c, V7 ~& @5 a1 n0 m
DS1302 和LCD1602的读写时序都有更正。5 a+ U2 z/ `0 i
但不知道是不是还有其他地方需要更改
% i4 y0 _* c+ q1 T0 z2 a4 X3 M7 ?0 \9 @2 F' A5 H4 p/ G, ], |
3 e) P$ A& @; M. T9 @
: J1 Z. s" C T4 e: |; ^
: }( c" A, R8 D. U |
|