📄 dsp2812lcd.c.bak
字号:
//BUS LCD
#include "DSP28_Device.h"
unsigned int * LED_COMM=(Uint16 *)0x20C0;
unsigned int * LED_STAT=(Uint16 *)0x20E0;
//////////////////////////////////////////////////
//---寄存器设置---------------------------------------------------------
unsigned char Set_F500[]={4,0x83,0x00,0xf5,0x00};
unsigned char Set_F504[]={4,0x83,0x04,0xf5,0x04};
unsigned char Set_F505[]={4,0x83,0x05,0xf5,0x80};
unsigned char Set_F6C4[]={4,0x83,0xc4,0xf6,0x10};
unsigned char Set_F080[]={4,0x83,0x80,0xf0,0xfc};
unsigned char Set_F08E[]={4,0x83,0x8e,0xf0,0x32};
unsigned char Set_F090[]={4,0x83,0x90,0xf0,0x14};
unsigned char Set_F091[]={4,0x83,0x91,0xf0,0x25};
unsigned char Set_F092[]={4,0x83,0x92,0xf0,0x1e};
unsigned char Set_F094[]={4,0x83,0x94,0xf0,0x05};
unsigned char Set_F095[]={4,0x83,0x95,0xf0,0x0e};
unsigned char Set_F096[]={4,0x83,0x96,0xf0,0x03};
unsigned char Set_8F[]={7,0x8f,0x69,0x45,0x61,0x67,0x6c,0x65};
////////////////////////////////////////////////////////
// 一个指令代码或数据传送子程序
void SdCmd(unsigned char Command) //send a command
{
* LED_COMM= Command;
}
// 指令包传送结束子程序
void CmdEnd() //send state bit
{
* LED_STAT= 1;
}
// 一个指令包传送子程序
void WritePKG(unsigned char *pkg) // send a command package
{
unsigned char i;
for(i=*pkg;i;i--) //pkg 数组首地址存放指令包的数据量,包括指令代码
SdCmd(*(++pkg));
CmdEnd();
}
//////////////////////////////////////////////////////
//------初始化子程序------------------------------------------------------
void initLCDM(void)//初始化程序
{
// execute all the setting in above
WritePKG(Set_F500);
WritePKG(Set_F504);
WritePKG(Set_F505);
WritePKG(Set_F6C4);
WritePKG(Set_F080);
WritePKG(Set_F08E);
WritePKG(Set_F090);
WritePKG(Set_F091);
WritePKG(Set_F092);
WritePKG(Set_F094);
WritePKG(Set_F095);
WritePKG(Set_F096);
WritePKG(Set_8F);
}
///////////////////////////////////////////////
////////////////////////////////////////////////////
void main(void)
{
unsigned int i;
InitSysCtrl(); //初始化系统
DINT; //关中断
IER = 0x0000;
IFR = 0x0000;
InitPieCtrl(); //初始化PIE控制寄存器
InitPieVectTable(); //初始化PIE参数表
InitPeripherals(); //初始化外设寄存器
InitGpio(); //初始化IO口
EINT; //Enable INTM
ERTM; //Enable DBGM
}
void ldelay(unsigned int k)
{
while(k>0)
{
k--;
delay(500);
}
}
void delay(unsigned int t)
{
while(t>0)
t--;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -