📄 leddrv.c
字号:
/****************************************************************
** *
** FILE : LedDrv.c *
** *
** By : Cyb 2007.07.01 *
****************************************************************/
#define LEDDRV_GLOBALS
#include "includes.h"
#include "hardware.h"
#include "NK1628_drv.h"
#include "uart_drv.h"
#include "LedDrv.h"
#if DEBUG_UARTNo_LEDDRV <=1
#include "timetask.h"
static INT8U test[4]={ 0x00,0x00,0x00,0x00};
static TMR_TSK *testtmr;
#endif
INT8U NUMBER[10]= { 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0xff,0x6f};
static INT8U Clear[4] = { 0x00,0x00,0x00,0x00};
void SendLedDisplay(INT8U *text,INT8U textlen,INT8U bpos,INT8U epos)
{
#if DEBUG_UARTNo_LEDDRV >1
INT8U i;
INT8U len;
INT8U addr;
len = epos - bpos +1;
addr = bpos*2;
if(len < textlen)
{
return;
}
DispControl(DISPCONTROL|DISPOFF);
SetWorkMode(DISPMODE|DIG4SEG13,DATAMODE|NORMAL|ADDRFIXED|DATADISP);
for(i=0;i<len;i++)
{
SendData(ADDRSET,addr,*text++);
addr+=2;
}
DispControl(DISPCONTROL|DISPON);
#endif
}
#if DEBUG_UARTNo_LEDDRV <=1
void GetTest(INT8U *tr)
{
memcpy(test,tr,4);
PrintFromUART(DEBUG_UARTNo_LEDDRV,"\ntest=");
SendFromUART_MEM_HEX(DEBUG_UARTNo_LEDDRV,test,4);
}
void TestDisplay(INT8U *text,INT8U textlen,INT8U bpos,INT8U epos)
{
INT8U i;
INT8U len;
INT8U addr;
len = epos - bpos +1;
addr = bpos*2;
if(len < textlen)
{
return;
}
DispControl(DISPCONTROL|DISPOFF);
SetWorkMode(DISPMODE|DIG4SEG13,DATAMODE|NORMAL|ADDRFIXED|DATADISP);
for(i=0;i<len;i++)
{
SendData(ADDRSET,addr,*text++);
addr+=2;
}
DispControl(DISPCONTROL|DISPON);
}
static void testtmrproc(void)
{
TestDisplay(test,4,0,3);
}
#endif
void ClearLedDisplay(void)
{
SendLedDisplay(Clear,4,0,3);
}
void InitLed(void)
{
InitNKContrPins();
DispControl(DISPCONTROL|DISPOFF);
SetWorkMode(DISPMODE|DIG4SEG13,DATAMODE|TEST|ADDRFIXED|DATADISP);
DispControl(DISPCONTROL|DISPON);
ClearLedDisplay();
#if DEBUG_UARTNo_LEDDRV <=1
testtmr = CreateTimer(testtmrproc, 0);
StartTmr(testtmr, MILTICK, 5);
#endif
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -