求单片机1602液晶显示DS1302实时时钟的一份实验报告,需要有程序及电路图介绍的那种哦 有好程序可以到 中国电子开发网()去晒一晒 我一直在那里潜水 我最近也在研究这个程 所以 我简单的看了一下你的程序 你是把DS1302的数据读出来直接就送了显示 像这样 write_。
单片机1602液晶显示的DS1302实时时钟帮我分析以下程序运行步骤,详细解释一下,尤其是Bcd转换 这是我写的一个成功的,你仔细对比下就知道了!includeincludedefine U8 unsigned chardefine U16 unsigned intdefine BOOL bitU8 secondh,secondl,minuteh,minutel,hourh,hourl,second,minute,hour;U8 monthl,monthh,month,day,datel,dateh,date,year,yearl,yearh;定义LCD功能管脚*/sbit LCDRS=P2^6;控制LCD数据或命令的读写sbit LCDRW=P2^5;控制LCD读写信号sbit LCDEN=P2^7;使能LCD定义DS1302功能管脚*/sbit DSRST=P3^5;DS1302复位管脚sbit DSIO=P3^4;控制DS1302数据传输sbit DSCLK=P3^6;DS1302时钟延时函数*/void delay(U16 time){U16 time1,time2;for(time1=time;time1>;0;time1-)for(time2=110;time2>;0;time2-);}检测LCD忙碌状态*/BOOL judge_lcd(){BOOL flag;LCDEN=0;LCDRS=0;LCDRW=1;LCDEN=1;delay(1);flag=(BOOL)(P0&0x80);状态位第7位为1时禁止读写,为0时可读写LCDEN=0;return flag;}实现LCD写指令*/void write_lcd_command(U16 command){while(judge_lcd());检测LCD是否为忙碌状态P0=command;LCDRS=0;LCDRW=0;LCDEN=1;delay(1);LCDEN=0;}实现LCD写数据*/void write_lcd_date(U16 date){while(judge_lcd());检测LCD是否为。
单片机,ds1302时钟电路显示问题,时间一直跳变(在开发板上实验的正常) 先写入一下试试
ds1302时钟程序编好了,只能静态显示,时间不走是什么原因? 你是用才写的还是汇编,如果是c的话,我可以帮你看看。是仿真还是实物?最好能把电路图发过来,程序正常的话,你可以检查一下晶振是否正常工作,数据引脚是否连接上拉电阻。
ds1302时钟程序编好了,只能静态显示,时间不走是什么原因?
ds1302时钟芯片。。。谁给我看下这个程序?液晶可以显示,但是时钟不会走显示的也不是我初始化的时间。 1、存储和读取的时间的内容应为BCD码。write_1302(0x8c,0x11);maioh=(miao&0x7f)>;>;4;2、建议上电后,ce=0;clk=0;延时一会儿再操作1302。或者多写两次撤销写保护命令。write_1302(0x8e,0x10);笔误,应该是 write_1302(0x8e,0x80);3、建议读写1302的clk速率降低,如datasheet,2MHz最大。4、建议首次改写时间时,将秒值最高位置为1,时间设置完毕后,清秒值最高位。5、建议,刷新LCD速率在100mS~500mS。没有必要不停地读1302,写1602。6、检查硬件连接,及起振晶体。或更换一片1302再看看。最后调试成功,请告知原因。谢谢!