完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
#include
#include typedef unsigned char uint8; typedef unsigned int uint16; ***it SCK=P3^5;//时钟 ***it SDA=P3^4;//数据 ***it RST=P1^7;//复位 ***it RS=P1^0; ***it RW=P1^1; ***it EN=P1^5; ***it busy=P0^7; uint16 num; #define DS1302_W_ADDR 0xBE #define DS1302_R_ADDR 0xBF uint8 time[]={50,59,23,15,8,7,10}; void DS1302WriteByte(uint8 dat) { uint8 i; SCK=0; for(i=0;i<8;i++) { SDA=dat & 0x01; SCK=1; dat>>=1; SCK=0; } } uint8 DS1302ReadByte() { uint8 i,dat; for(i=0;i<8;i++) { dat>>=1; if(SDA==1) { dat |= 0x80; } SCK=1; SCK=0; } return dat; } void reset_ds1302(void) { RST = 0; SCK = 0; RST = 1; } void clear_ds1302_WP(void) { reset_ds1302(); RST = 1; DS1302WriteByte(0x8E); DS1302WriteByte(0); SDA = 0; RST = 0; } /** * 设置写保护 */ void set_ds1302_WP(void) { reset_ds1302(); RST = 1; DS1302WriteByte(0x8E); DS1302WriteByte(0x80); SDA = 0; RST = 0; } void set_time(uint8 *timedata) { uint8 i,tmp; for(i=0;i<7;i++) { tmp=timedata[i]/10; timedata[i]=timedata[i]%10; timedata[i]=timedata[i]+tmp*16; } clear_ds1302_WP(); reset_ds1302(); RST=1; DS1302WriteByte(DS1302_W_ADDR); for(i=0;i<7;i++) { DS1302WriteByte(timedata[i]); } DS1302WriteByte(0); SDA=0; RST=0; set_ds1302_WP(); } void read_time(uint8 *timedata) { uint8 i; clear_ds1302_WP(); reset_ds1302(); DS1302WriteByte(DS1302_R_ADDR); for(i=0;i<7;i++) { timedata[i]=DS1302ReadByte(); } SDA=0; RST=0; set_ds1302_WP(); } void wait() { do { P0=0xFF; EN=0; RS=0; RW=1; EN=1; }while(busy==1); EN=0; } void w_dat(uint8 dat) { wait(); RS=1; RW=0; P0=dat; EN=1; EN=0; } void w_cmd(uint8 com) { wait(); RS=0; RW=0; P0=com; EN=1; EN=0; } void init() { EN=0; w_cmd(0x38); w_cmd(0x0C); w_cmd(0x06); w_cmd(0x01); } void main() { init(); set_time(&time); while(1) { read_time(&time); w_cmd(0x80); w_dat(time[6]); w_dat('-'); w_dat(time[4]); w_dat('-'); w_dat(time[3]); w_dat('-'); w_dat(time[2]); w_dat(':'); w_dat(time[1]); w_dat(':'); w_dat(time[0]); } } 请问这个程序有什么问题吗,为什么在液晶上显示乱码了 |
|
相关推荐
1个回答
|
|
有没有高手来解答下
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
飞凌嵌入式-ELFBOARD ELF 2的硬件知识分享--核心板
119 浏览 0 评论
【敏矽微ME32G070开发板免费体验】\\+Lora通信终端产品开发项目
335 浏览 0 评论
1215 浏览 0 评论
1033 浏览 0 评论
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-shell编程入门之提取字符并设置rtc时间
924 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
11963 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-16 19:08 , Processed in 0.544914 second(s), Total 68, Slave 52 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号