DS1307 RTC显示问题

问题描述

我已将PIC18F24k40系列MCU与DS1307一起使用。这是部分代码。我正在设置时间的DATE_TIME_SET_ADD()函数.display_RTC_Clock()正在显示时间。目前它像这样

我是十进制MIN_SET和SEC_SET = 0X40的设置值。但是在运行模式下显示时,它显示十六进制值0X28

Temp1= sec & 0x0f;Temp2= sec>> 4;
LEDBuffer_1[0] = disPTABLE[Temp1];
LEDBuffer_1[1] = disPTABLE[Temp2];
Temp3 = min & 0x0f;Temp4= min >> 4;
LEDBuffer_1[2] = disPTABLE[Temp3];
LEDBuffer_1[3] = disPTABLE[Temp4];

如果我将其更改为低于值,它将在40之后显示十六进制值。如果我将MIN_SET和SEC_SET设置为= 0X00,则可以正确递增。但是对于MIN_SET和SEC_SET = 0X40 min参数显示0X40,sec参数显示56,显示38

Temp1= sec %10;Temp2= sec/10;
LEDBuffer_1[0] = disPTABLE[Temp1];
LEDBuffer_1[1] = disPTABLE[Temp2];
Temp3 = min %10;Temp4= min /10;
LEDBuffer_1[2] = disPTABLE[Temp3];
LEDBuffer_1[3] = disPTABLE[Temp4];

需要进行哪些更改才能显示实际值。我需要将bcd转换为十进制并将十进制转换为bcd的某个地方

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)