提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
51单片机利用串口发送读取到达ds1302时间,格式为2022-05-09 15:14:13(年月日时分秒)
前言
提示:这里可以添加本文要记录的大概内容:
简单的把一些我学习51单片机过程中写的一些东西发出来,学习之余,仅供参考
提示:以下是本篇文章正文内容,下面案例可供参考
1、代码
代码主函数部分如下(示例):
#include “reg52.h”
#include “uart.h”
#include “ds1302.h”
void main(void)
{
unsigned char i;
InitUart();
while(1)
{
if((Compointer>2) && ((Combuf[Compointer-2] == 0x0d) && (Combuf[Compointer-1] == 0x0a)))
{
switch(Combuf[0])
{
case ‘G’: //2022-05-09 15:05:00
Ds1302ReadTime();
SendChar(0x20/16+‘0’);
SendChar(0x20%16+‘0’); //20
SendChar(TIME[0]/16+‘0’);
SendChar(TIME[0]%16+‘0’); //22
SendChar(0x2D); //-
SendChar(TIME[1]/16+‘0’);
SendChar(TIME[1]%16+‘0’); //05
SendChar(0x2D); //-
SendChar(TIME[2]/16+‘0’);
SendChar(TIME[2]%16+‘0’); //09
SendChar(0x20); //
SendChar(TIME[3]/16+‘0’);
SendChar(TIME[3]%16+‘0’); //15
SendChar(0x3A); //:
SendChar(TIME[4]/16+‘0’);
SendChar(TIME[4]%16+‘0’); //05
SendChar(0x3A); //:
SendChar(TIME[5]/16+‘0’);
SendChar(TIME[5]%16+‘0’); //00
SendChar(0x0D);
SendChar(0x0A);
break;
case ‘S’:
for(i=0;i<6;i++)
{
TIME[i]=Combuf[i+1];
}
Ds1302Init();
for(i=0;i<9;i++)
{
SendChar(Combuf[i]);
}
break;
default:break;
}
Compointer = 0;
}
}
}
2.显示
总结
提示:这里对文章进行总结:
51单片机与ds1302结合,利用串口发送读取到的时间。