DS1302的时间信号的输入输出编码是什么形式
答案:3 悬赏:70 手机版
解决时间 2021-01-03 07:58
- 提问者网友:謫仙
- 2021-01-02 21:16
DS1302的时间信号的输入输出编码是什么形式
最佳答案
- 五星知识达人网友:青灯有味
- 2021-01-22 05:06
BCD码
全部回答
- 1楼网友:等灯
- 2021-01-22 06:49
BCD码呀,它的数据手册里有的。
时间信号的输入输出都按照BCD码的规则
一般情况下,后四位表示个位数,前三位表示十位数
所以读出来的数要做一下变换的
再看看别人怎么说的。
- 2楼网友:未来江山和你
- 2021-01-22 05:23
7;
RST=0; //,从DS1302的寄存器中读一个字节;i<读取当前时间秒星期
Current_Time[6] =Read_Data_FROM_DS1302(0x8D);
}
5;向DS1302写入一个地址
dat=Read_Byte_FROM_DS1302();16*10+byte%16;
CLK=1;BCD码转换
return byte/
RST=0;
X>>
}
}
2;8;/
CLK=0;
return dat;读取当前时间时钟
Current_Time[3] =Read_Data_FROM_DS1302(0x87); /
RST=1;读取当前时间月
Current_Time[5] =Read_Data_FROM_DS1302(0x8B)、 得到时间
void GET_Time()
{ /、星期等这七个寄存器的值;
byte|=t、秒和年;在上面写入的地址中读取数据
CLK=1;/,作为程序设计人员; /
t=SDA,从DS1302的某个寄存器中读取数据;
RST=1软件设计中主要是针对DS1302芯片进行程序的设计;/、月; ///
}
4;>、日; /、 读字节函数
uchar Read_Byte_FROM_DS1302()
{
uchar i;/,比如读取时间寄存器中的时间;i++)
{
SDA=X&1、分;
}
3; //i<
RST=0;
Write_Byte_TO_DS1302(addr); /8;//,对DS1302的主要操作是;读取当前时间秒
Current_Time[1] =Read_Data_FROM_DS1302(0x83);
CLK=0,主要是时;下面代码可用循环语句
Current_Time[0] =Read_Data_FROM_DS1302(0x81);=1;
for(i=0; //
Write_Byte_TO_DS1302(addr);
CLK=1;
Write_Byte_TO_DS1302(dat);
for(i=0。(2)向DS1302中写入一个数据(通常这个数据就是DS1302中某个寄存器的8位地址);/、 写字节函数
void Write_Byte_TO_DS1302(uchar X) /,uchar dat)
{
CLK=0;读取当前时间日
Current_Time[4] =Read_Data_FROM_DS1302(0x89):(1)向DS1302中写一个字节。
1; /,byte、 写数据函数
uchar Read_Data_FROM_DS1302(uchar addr)
{
uchar dat;
}
/。(3)读取时间寄存器中的时间;
CLK=0;< 向DS1302写入一个字节
{ uchar i;i++)
{
byte>,t; /=1;写保护
CLK=1、 读数据函数
void Write_Data_TO_DS1302(uchar addr;读取当前时间分钟
Current_Time[2] =Read_Data_FROM_DS1302(0x85),由以上DS1302的技术资料分析可知
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯