最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

单片机ds1302程序

来源:动视网 责编:小OO 时间:2025-10-02 18:47:52
文档

单片机ds1302程序

#include#include#defineucharunsignedchar#defineuintunsignedintsbitLCD1602_E=P3^6;sbitLCD1602_RW=P3^5;sbitLCD1602_RS=P3^4;sbitDSIO=P0^7;sbitRST=P0^5;sbitSCLK=P0^6;externucharTIME[7];voidDs1302Write(ucharaddr,uchardat);ucharDs1302Read(ucharaddr);voidD
推荐度:
导读#include#include#defineucharunsignedchar#defineuintunsignedintsbitLCD1602_E=P3^6;sbitLCD1602_RW=P3^5;sbitLCD1602_RS=P3^4;sbitDSIO=P0^7;sbitRST=P0^5;sbitSCLK=P0^6;externucharTIME[7];voidDs1302Write(ucharaddr,uchardat);ucharDs1302Read(ucharaddr);voidD
#include

#include

#define uchar unsigned char

#define uint unsigned int

 sbit LCD1602_E=P3^6;

sbit LCD1602_RW=P3^5;

sbit LCD1602_RS=P3^4;

sbit DSIO=P0^7;

sbit RST=P0^5;

sbit SCLK=P0^6;

extern uchar TIME[7];

void Ds1302Write(uchar addr, uchar dat);

uchar Ds1302Read(uchar addr);

void Ds1302Init();

void Ds1302ReadTime();

v误差 0us

void LcdWriteCom(uchar com);

void LcdWriteData(uchar dat)

void LcdInit();

void LcdDisplay();

uchar code READ_RTC_ADDR[7] = {0x81, 0x83, 0x85, 0x87, 0x, 0x8b, 0x8d}; 

uchar code WRITE_RTC_ADDR[7] = {0x80, 0x82, 0x84, 0x86, 0x88, 0x8a, 0x8c};

uchar TIME[7] = {0, 0, 0x12, 0x01, 0x01, 0x02, 0x13};

void main()

{

 

 

  

}

 

void Ds1302Write(uchar addr, uchar dat)

{

 先将SCLK置低电平。

 然后将RST(CE)置高电平。

 开始传送八位地址命令

  数据从低位开始传送

 

  数据在上升沿时,DS1302读取数据

 

 

 

 写入8位数据

 

 

  数据在上升沿时,DS1302读取数据

 

 

  

 

 

 传送数据结束

}

uchar Ds1302Read(uchar addr)

{

 先将SCLK置低电平。

 然后将RST(CE)置高电平。

 开始传送八位地址命令

  数据从低位开始传送

 

  数据在上升沿时,DS1302读取数据

 

  下降沿时,放置数据

 

 读取8位数据

  从最低位开始接收

 

 

 

  下降沿时,放置数据

 

  以下为DS1302复位的稳定时间,必须的。

 

}

void Ds1302ReadTime()

{

 读取7个字节的时钟信号:分秒时日月周年

 

 

}

void Ds1302Init()

{

   禁止写保护,就是关闭写保护功能

 写入7个字节的时钟信号:分秒时日月周年

  

   打开写保护功能

}

v误差 0us

{

 

 

  

 

 

}

void LcdWriteCom(uchar com) 写入命令

{

 使能

  选择发送命令

  选择写入

 放入命令

   等待数据稳定

  写入时序

  保持时间

}

void LcdWriteData(uchar dat)   写入数据

{

  使能清零

  选择输入数据

  选择写入

 写入数据

 写入时序

 保持时间

}

void LcdInit()      初始化子程序

{

  将8位总线转为4位总线

  在四位线下的初始化

 开显示不显示光标

 写一个指针加1

 清屏

 设置数据指针起点

}

void LcdDisplay()

{

     时

    

     分

 

     秒

    年

    月

    日

  星期  

}

文档

单片机ds1302程序

#include#include#defineucharunsignedchar#defineuintunsignedintsbitLCD1602_E=P3^6;sbitLCD1602_RW=P3^5;sbitLCD1602_RS=P3^4;sbitDSIO=P0^7;sbitRST=P0^5;sbitSCLK=P0^6;externucharTIME[7];voidDs1302Write(ucharaddr,uchardat);ucharDs1302Read(ucharaddr);voidD
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top