Advertisement

STM32F4系列RTC中的BCD码和十进制转换程序

阅读量:

在处理RTC数据时,其存储格式为BCD码,因此若需将其读取并展示为可识别的数值,必须将其转换为十进制形式。最初考虑到使用"itoa"与"sprintf"等标准函数进行转换,但实际测试后发现这些方法在此场景下并不适用。因此,决定自行编写C语言函数以实现所需的数据转换功能。接下来将直接展示相关程序代码,期望对读者有所帮助。

复制代码
    /*********************************************************************************************** *功能:RTC16进制转为10进制
    *入口参数:需要转换的BCD数
    *出口参数:无
    *返回值:转换完成的10进制值
    *创建时间:2019年9月1日
    *创建人:daode
    ************************************************************************************************/
    u8 RTC_BCD_TO_TEN(u8 val)
    {
    	u8 temp=0;
    	temp=(val>>4)*10;
    	return (temp+(val&0x0f));
    }
    
    /****

全部评论 (0)

还没有任何评论哟~