⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 num.c

📁 该文件为S3C44B0硬件平台配置具体函数的初始化及其SD卡读写程序
💻 C
字号:
#include "Glib.h"
void GUI_DispDecAt(I32 v, I16P x, I16P y, U8 Len) {
	char ac[12];
	char* s = ac;
  GUI_AddDecShift(v, Len, 0, &s);
  Disp_String(ac, x, y);
}
const U32 GUI_Pow10[10] = {
  1 , 10, 100, 1000, 10000,
  100000, 1000000, 10000000, 100000000, 1000000000
};
void GUI_AddDecShift(I32 v, U8 Len, U8 Shift, char**ps) {
  char c,GUI_DecChar;
  long d;
  GUI_DecChar = '.';
  if (Shift) Len--;
  if ((U32)v >= GUI_Pow10[Len])
	v = GUI_Pow10[Len]-1;
  while (Len) 
  {
    if (Len--==Shift)
      *(*ps)++ = GUI_DecChar;
    d = GUI_Pow10[Len];
    c = (char) (v/d);
    v -= c*d;
    *(*ps)++ = c+'0';
  }
  **ps = 0;
}





/////////////////////////////////////////////////////////////////////////
void GUI_DispBinAt(U32 v, I16P x, I16P y, U8 Len) {
	char ac[33];
	char* s = ac;
  GUI_AddBin(v, Len, &s);
  Disp_String(ac, x, y);
}
void GUI_AddBin(U32 v, U8 Len, char**ps) 
{
  char *s = *ps;
  (*ps) += Len;
  **ps     = '\0';     /* Make sure string is 0-terminated */
  while(Len--) {
    *(s+Len) = (char)('0'+ (v&1));
    v>>=1;
  }
}
//////////////////////////////////////////////////////////////////////
void GUI_DispHexAt(U32 v, I16P x, I16P y, U8 Len) {
  char ac[9];
	char* s = ac;
  GUI_AddHex(v, Len, &s);
  Disp_String(ac, x, y);
}
static const char acHex[16] =  {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' };

void GUI_AddHex(U32 v, U8 Len, char**ps) {
  char *s = *ps;
  if (Len > 8)
    return;
  (*ps) += Len;
  **ps     = '\0';     /* Make sure string is 0-terminated */
  while(Len--) {
    *(s+Len) = acHex[v&15];
    v>>=4;
  }
}
//////////////////////////////////////////////////////////////////////////////////

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -