📄 disp.c
字号:
/*
****************************************************
****************************************************
*/
#include <reg52.H>
#include <rtx51tny.h>
#include "Typedef.H"
#include "UserDef.H"
#include "Keypad.h"
#include "Disp.h"
#include "HW_Disp.h"
/* 公共全局变量 */
struct _stcDISPMSG dm;
bit bDispBusy;
/* 私有全局变量 */
/***************************************************
显示任务
****************************************************/
static void TaskDisp(void) _task_ TASK_DISP
{
INT8U * p;
DispInit();
DispCls();
bDispBusy = FALSE;
while (1)
{
os_wait(K_SIG,0,0);
DispXYSet(dm.x,dm.y);
switch (dm.type)
{
case DTYPE_CLS:
DispCls();
break;
case DTYPE_CHAR:
DispFont(dm.font);
p = (char *)dm.DData;
DispChr(*p);
break;
case DTYPE_HZ:
p = (char *)dm.DData;
DispHZ(*p);
break;
case DTYPE_STR:
DispFont(dm.font);
p = (char *)dm.DData;
while (*p != 0)
{
DispChr(*p);
p ++;
}
break;
case DTYPE_INT8U:
DispFont(dm.font);
DispIntU(*((INT8U *)dm.DData),dm.len);
break;
case DTYPE_INT16U:
DispFont(dm.font);
DispIntU(*((INT16U *)dm.DData),dm.len);
break;
case DTYPE_INT32U:
DispFont(dm.font);
DispIntU(*((INT32U *)dm.DData),dm.len);
break;
case DTYPE_INT8S:
DispFont(dm.font);
DispIntS(*((INT8S *)dm.DData),dm.len);
break;
case DTYPE_INT16S:
DispFont(dm.font);
DispIntS(*((INT16S *)dm.DData),dm.len);
break;
case DTYPE_INT32S:
DispFont(dm.font);
DispIntS(*((INT32S *)dm.DData),dm.len);
break;
case DTYPE_FLOAT:
DispFont(dm.font);
DispFloat(*((float *)dm.DData),dm.len);
break;
}
bDispBusy = FALSE;
}
}
/***************************************************
任务创建函数
signal_target_task 接收键盘信号的任务编号
****************************************************/
void TaskCreate_DISP(void)
{
os_create_task(TASK_DISP);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -