/* 包含头文件 ----------------------------------------------------------------*/
#include "rtc/bsp_rtc.h"
#include "usart/bsp_debug_usart.h"
/* 私有类型定义 --------------------------------------------------------------*/
/* 私有宏定义 ----------------------------------------------------------------*/
/* 私有变量 ------------------------------------------------------------------*/
RTC_HandleTypeDef hrtc;
/* 扩展变量 ------------------------------------------------------------------*/
/* 私有函数原形 --------------------------------------------------------------*/
/* 函数体 --------------------------------------------------------------------*/
/**
* 函数功能: 从串口调试助手获取数字值(把ASCII码转换为数字)
* 输入参数: value 用户在超级终端中输入的数值
* 返 回 值: 输入字符的ASCII码对应的数值
* 说 明:本函数专用于RTC获取时间,若进行其它输入应用,要修改一下
*/
uint8_t USART_Scanf(uint32_t value)
{
uint32_t index = 0;
uint32_t tmp[2] = {0, 0};
while (index < 2)
{
/* 等待直到串口接收到数据 */
tmp[index++] =getchar();
if ((tmp[index - 1] < 0x30) || (tmp[index - 1] > 0x39)) /*数字0到9的ASCII码为0x30至0x39*/
{
printf("请输入 0 到 9 之间的数字 -->:\n");
index--;
}
}
/* 计算输入字符的ASCII码转换为数字*/
index = (tmp[1] - 0x30) + ((tmp[0] - 0x30) * 10);
/* 检查数据有效性 */
if (index > value)
{