67 lines
2.1 KiB
C
67 lines
2.1 KiB
C
|
/*--------------------------------------------------------------------------*/
|
||
|
/**@file UI_common.c
|
||
|
@brief UI 显示公共函数
|
||
|
@details
|
||
|
@author bingquan Cai
|
||
|
@date 2012-8-30
|
||
|
@note AC319N
|
||
|
*/
|
||
|
/*----------------------------------------------------------------------------*/
|
||
|
#include "includes.h"
|
||
|
|
||
|
static const u8 asc_number[] = "0123456789"; ///<0~9的ASCII码表
|
||
|
|
||
|
/*----------------------------------------------------------------------------*/
|
||
|
/**@brief 获取一个一位十进制的数的个位
|
||
|
@param i:输入的一个一位十进制的数
|
||
|
@return 无
|
||
|
@note void itoa1(u8 i, u8 *buf)
|
||
|
*/
|
||
|
/*----------------------------------------------------------------------------*/
|
||
|
void itoa1(u8 i, u8 *buf)
|
||
|
{
|
||
|
buf[0] = asc_number[i % 10];
|
||
|
}
|
||
|
|
||
|
/*----------------------------------------------------------------------------*/
|
||
|
/**@brief 获取一个2位十进制的数的各个位
|
||
|
@param i:输入的一个2位十进制的数
|
||
|
@return 无
|
||
|
@note void itoa2(u8 i)
|
||
|
*/
|
||
|
/*----------------------------------------------------------------------------*/
|
||
|
void itoa2(u8 i, u8 *buf)
|
||
|
{
|
||
|
buf[0] = asc_number[(i % 100) / 10];
|
||
|
buf[1] = asc_number[(i % 10)];
|
||
|
}
|
||
|
/*----------------------------------------------------------------------------*/
|
||
|
/**@brief 获取一个3位十进制数的各个位
|
||
|
@param i:输入的一个3位十进制数
|
||
|
@return 无
|
||
|
@note void itoa3(u8 i, u8 *buf)
|
||
|
*/
|
||
|
/*----------------------------------------------------------------------------*/
|
||
|
void itoa3(u16 i, u8 *buf)
|
||
|
{
|
||
|
buf[0] = asc_number[(i % 1000) / 100];
|
||
|
buf[1] = asc_number[(i % 100) / 10];
|
||
|
buf[2] = asc_number[i % 10];
|
||
|
}
|
||
|
/*----------------------------------------------------------------------------*/
|
||
|
/**@brief 获取一个4位十进制的数的各个位
|
||
|
@param i:输入的一个4位十进制的数
|
||
|
@return 无
|
||
|
@note void itoa4(u8 i, u8 *buf)
|
||
|
*/
|
||
|
/*----------------------------------------------------------------------------*/
|
||
|
void itoa4(u16 i, u8 *buf)
|
||
|
{
|
||
|
buf[0] = asc_number[(i % 10000) / 1000]; //千
|
||
|
buf[1] = asc_number[(i % 1000) / 100]; //百
|
||
|
buf[2] = asc_number[(i % 100) / 10]; //十
|
||
|
buf[3] = asc_number[i % 10]; //个
|
||
|
}
|
||
|
|
||
|
|