📄 ca320240f.c
字号:
//established on 2004/04/14
//CA320240F and lcd(SED1330/1335/1336) compatible provided
//pin1:GND
//pin2:VCC
//pin3:V0(adjust contrast ratio of LCD)
//pin4:A0(Data Type Selecton) connect to A1
//pin5:WRn connect to P3.6/WRn of 8031
//pin6:RDn connect to P3.7/RDn of 8031
//pin7:DB0 connect to D0
//... ...
//pin14:DB7 connect to D7
//pin15:CSn connect to 74138 output Y2n,also as 8031 address of 0x4000
// 74138 input A connect to 8031 P2.7(A15),B to P2.6(A14),C to P2.5(A13)
//pin16:RESETn, not used
//pin17:VOUT(-20V)
//pin18:SEL1 connect to GND,as work on 8080 mode.(connect to VCC as the 6800 mode,not used)
//D0-D7 is the data bus,and A0-A15 is the address bus(so you must use a 74373)
//
//
//#define CA320240F
#ifdef CA320240F
#include "..\h\globle.h"
#include "..\h\CA320240F.h"
void CA320240F_initial(void)
//set to text mode.
{
byte i;
word j;
XBYTE[CA320240_WriteCommand]=SYSTEMSET;
for(i=0;i<8;i++) XBYTE[CA320240_WriteData]=SYSTEMSET_parameter_text[i];
XBYTE[CA320240_WriteCommand]=DISPLAY_ON;
XBYTE[CA320240_WriteData]=DISPLAY_ON_parameter_text;
XBYTE[CA320240_WriteCommand]=CSRFORM;
for(i=0;i<2;i++) XBYTE[CA320240_WriteData]=CSRFORM_parameter_text[i];
XBYTE[CA320240_WriteCommand]=SCROLL;
for(i=0;i<10;i++) XBYTE[CA320240_WriteData]=SCROLL_parameter[i];
XBYTE[CA320240_WriteCommand]=HDOT_SCR;
XBYTE[CA320240_WriteData]=HDOT_SCR_parameter;
XBYTE[CA320240_WriteCommand]=CSRDIR_Right;
XBYTE[CA320240_WriteCommand]=OVLAY;
XBYTE[CA320240_WriteData]=OVLAY_parameter_text;
XBYTE[CA320240_WriteCommand]=CSRW;
for(i=0;i<2;i++) XBYTE[CA320240_WriteData]=CSRW_parameter[i];
XBYTE[CA320240_WriteCommand]=MWRITE; //clear vedio ram,32KB in total
for(j=0;j<30*40;j++) XBYTE[CA320240_WriteData]=0x20;//space,30 lines,40 columns.
}
void SetToGraphicMode(void)
{
byte i;
word j;
XBYTE[CA320240_WriteCommand]=SYSTEMSET;
for(i=0;i<8;i++) XBYTE[CA320240_WriteData]=SYSTEMSET_parameter_graphic[i];
XBYTE[CA320240_WriteCommand]=SCROLL;
for(i=0;i<10;i++) XBYTE[CA320240_WriteData]=SCROLL_parameter[i];
XBYTE[CA320240_WriteCommand]=HDOT_SCR;
XBYTE[CA320240_WriteData]=HDOT_SCR_parameter;
XBYTE[CA320240_WriteCommand]=CSRDIR_Right;
XBYTE[CA320240_WriteCommand]=OVLAY;
XBYTE[CA320240_WriteData]=OVLAY_parameter_graphic;
XBYTE[CA320240_WriteCommand]=CSRFORM;
for(i=0;i<2;i++) XBYTE[CA320240_WriteData]=CSRFORM_parameter_graphic[i];
XBYTE[CA320240_WriteCommand]=DISPLAY_ON;
XBYTE[CA320240_WriteData]=DISPLAY_ON_parameter_graphic;
XBYTE[CA320240_WriteCommand]=CSRW;
for(i=0;i<2;i++) XBYTE[CA320240_WriteData]=CSRW_parameter[i];
XBYTE[CA320240_WriteCommand]=MWRITE; //clear vedio ram,32KB in total
for(j=0;j<0xf0*40;j++) XBYTE[CA320240_WriteData]=0x0;//240 lines,40 columns.
}
void SetCursorPosition(byte x,byte y)
{
byte CSRL,CSRH;
CSRL=y*40+x; //TEXT
CSRH=(y*40+x)>>8;
XBYTE[CA320240_WriteCommand]=CSRW;
XBYTE[CA320240_WriteData]=CSRL;
XBYTE[CA320240_WriteData]=CSRH;
}
void DisplayEChar(byte x,byte y,byte char_code)
{
SetCursorPosition(x,y);
XBYTE[CA320240_WriteCommand]=MWRITE;
XBYTE[CA320240_WriteData]=char_code;
}
byte ReadMemory(byte x,byte y)
{
byte i;
SetCursorPosition(x,y);
XBYTE[CA320240_WriteCommand]=MREAD;
i=XBYTE[CA320240_ReadData];
return(i);
}
/*
void DisplayCChar(byte x,byte y,word char_code)
{
SetToGraphicMode();
SetCursorPosition(x,y);
}
void DisplayBmpPicture(byte x,byte y,byte width,byte heighth,byte *picture)
{
SetToGraphicMode();
SetCursorPosition(x,y);
}
*/
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -