pc1602lcm.c
来自「AT24C01~24C16燒錄器程序,可以通過麼MENU選擇燒錄IC型號」· C语言 代码 · 共 95 行
C
95 行
//---------------------------------------------------------------------------------------
#include "../SubProgram/SubprogramList.h"
//---------------------------------------------------------------------------------------
//SET LCM RS
void SetLCM_RS(U8 set)
{
if(set==1)
LCM_RS=1;
else
LCM_RS=0;
COMMAND_CS=CommandStatus;
}
//--------------------------------------------------------------
//SET LCM Enable
void SetLCMEnable(U8 enable)
{
if(enable==ReadEnable)
LCM_RW=1;
else
LCM_RW=0;
COMMAND_CS=CommandStatus;
}
//---------------------------------------------------------------
//check LCM Status
void CheckLCMStatus(void)
{
SetLCM_RS(0);
SetLCMEnable(ReadEnable);
while((LCD_CS & 0x80)!=0);
}
//---------------------------------------------------------------
//Send LCM Command
void SendLCMCommand(U8 command,U8 check)
{
if(check==1)
CheckLCMStatus();
SetLCM_RS(0);
SetLCMEnable(WriteEnable);
LCD_CS=command;
}
//---------------------------------------------------------------
//Send LCM Data
void SendLCMData(U8 cdata,U8 check)
{
if(check==1)
CheckLCMStatus();
SetLCM_RS(1);
SetLCMEnable(WriteEnable);
LCD_CS=cdata;
}
//--------------------------------------------------------------
//Initial LCM
void InitialLCM(void)
{
SendLCMCommand(0x38,0);
SendLCMCommand(0x38,0);
SendLCMCommand(0x38,0);
SendLCMCommand(0x38,1);
SendLCMCommand(0x08,1);
SendLCMCommand(0x01,1);
SendLCMCommand(0x0c,1);
SendLCMCommand(0x06,1);
}
//-------------------------------------------------------------
//Clear LCM
void ClearLCM(void)
{
SendLCMCommand(0x01,1);
}
//--------------------------------------------------------------
//display one char
void DisplayOneChar(U8 Line,U8 adr,U8 cdata)
{
if(Line==0)
adr=adr |0x80;
else
adr=adr |0xc0;
SendLCMCommand(adr,1);
SendLCMData(cdata,1);
}
//---------------------------------------------------------------
//display string data
void DisplayStringData(U8 Line,U8 *StrData,U8 DataLength)
{
U8 CharA=0;
if(DataLength>24)
DataLength=24;
while(CharA<DataLength)
{
DisplayOneChar(Line,CharA,StrData[CharA]);
CharA++;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?