📄 commonfunc.c
字号:
#include "SPCE061A.h"
#include "LCD701_Functions.h"
#include "Key.h"
//========================================================================
// 语法格式: void System_Init(void)
// 实现功能: 系统初始化(系统时钟、中断、通讯录索引等)
// 参数: 无
// 返回值: 无
//========================================================================
void System_Init(void)
{
extern void Initial_INT(void);
*P_SystemClock = C_Fosc_49M|C_StrongMode; // 系统时钟
LCD701_Init();
Key_Init();
}
//========================================================================
// 语法格式: void DelayMS(unsigned int ms)
// 实现功能: 延时一段时间(不精确)
// 参数: ms 延时的毫秒数
// 返回值: 无
//========================================================================
void DelayMS(unsigned int ms)
{
unsigned int i;
while(ms--)
{
for(i = 0; i < 1044; i++)*P_Watchdog_Clear = 1;
}
}
//========================================================================
// 语法格式: unsigned char Key_GetCh(void)
// 实现功能: 获取按键编码,4*4键盘编码排布如下:
// 1 2 3 Up(u)
// 4 5 6 Dn(d)
// 7 8 9 Enter(y)
// * 0 # Esc(n)
// 参数: 无
// 返回值: 按键编码
//========================================================================
unsigned char Key_GetCh(void)
{
unsigned char KeyCode, KeyCh;
KeyCode = Key_Get();
switch(KeyCode)
{
case PAD_0:
KeyCh = '0'; break;
case PAD_1:
KeyCh = '1'; break;
case PAD_2:
KeyCh = '2'; break;
case PAD_3:
KeyCh = '3'; break;
case PAD_4:
KeyCh = '4'; break;
case PAD_5:
KeyCh = '5'; break;
case PAD_6:
KeyCh = '6'; break;
case PAD_7:
KeyCh = '7'; break;
case PAD_8:
KeyCh = '8'; break;
case PAD_9:
KeyCh = '9'; break;
case PAD_STAR:
KeyCh = '*'; break;
case PAD_POUND:
KeyCh = '#'; break;
case PAD_UP:
KeyCh = 'u'; break;
case PAD_DN:
KeyCh = 'd'; break;
case PAD_ENTER:
KeyCh = 'y'; break;
case PAD_ESC:
KeyCh = 'n'; break;
default:
KeyCh = '\0'; break;
}
return KeyCh;
}
//========================================================================
// 语法格式: void PrintPacked(unsigned char* StrBuf)
// 实现功能: 在LCD上显示以"压缩方式"存储的字符串
// 参数: StrBuf 要显示的字符串
// 返回值: 无
//========================================================================
void PrintPacked(unsigned char* StrBuf)
{
unsigned char *p_StrBuf, HZ_Buf[2];
p_StrBuf = StrBuf;
while(*p_StrBuf!='\0')
{
if(*p_StrBuf>0x00ff)
{
HZ_Buf[0] = *p_StrBuf & 0x00ff;
HZ_Buf[1] = *p_StrBuf >> 8;
LCD701_PutHZ(HZ_Buf);
}
else
{
LCD701_PutChar(*p_StrBuf);
}
p_StrBuf++;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -