⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 disp.c

📁 读者使用源代码时
💻 C
字号:
#define uchar unsigned char
/*定义全局变量LINE,CLMN*/
uchar		LINE, CLMN; 		/*LINE当前显示页,CLMN当前显示列*/
bit AREA; 				/*控制区域,AREA =0,E1控制区;AREA =1,E2控制区*/

/*说明使用到的外部变量*/
extern 	uchar COM, DAT, NDIG;
extern  	char xdata BUFFER[];

/*定义西文字库*/
uchar 		code CTAB[0x61][0x08]=
              {
                 {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}, /* " "=00H */
                 {0x00,0x00,0x00,0x4F,0x00,0x00,0x00,0x00}, /* "!"=01H */
                 {0x00,0x00,0x07,0x00,0x07,0x00,0x00,0x00}, /* """=02H */
                 {0x00,0x14,0x7F,0x14,0x7F,0x14,0x00,0x00}, /* "#"=03H */
                 {0x00,0x24,0x2A,0x7F,0x2A,0x12,0x00,0x00}, /* "$"=04H */
                 {0x00,0x23,0x13,0x08,0x64,0x62,0x00,0x00}, /* "%"=05H */
                 {0x00,0x36,0x49,0x55,0x22,0x50,0x00,0x00}, /* "&"=06H */
                 {0x00,0x00,0x05,0x03,0x00,0x00,0x00,0x00}, /* "'"=07H */
                 {0x00,0x00,0x1C,0x22,0x41,0x00,0x00,0x00}, /* "("=08H */
                 {0x00,0x00,0x41,0x22,0x1C,0x00,0x00,0x00}, /* ")"=09H */
                 {0x00,0x14,0x08,0x3E,0x08,0x14,0x00,0x00}, /* "*"=0AH */
                 {0x00,0x08,0x08,0x3E,0x08,0x08,0x00,0x00}, /* "+"=0BH */
                 {0x00,0x00,0x50,0x30,0x00,0x00,0x00,0x00}, /* ";"=0CH */
                 {0x00,0x08,0x08,0x08,0x08,0x08,0x00,0x00}, /* "-"=0DH */
                 {0x00,0x00,0x60,0x60,0x00,0x00,0x00,0x00}, /* "."=0EH */
                 {0x00,0x20,0x10,0x08,0x04,0x02,0x00,0x00}, /* "/"=0FH */
                 {0x00,0x3E,0x51,0x49,0x45,0x3E,0x00,0x00}, /* "0"=10H */
                 {0x00,0x00,0x42,0x7F,0x40,0x00,0x00,0x00}, /* "1"=11H */
                 {0x00,0x42,0x61,0x51,0x49,0x46,0x00,0x00}, /* "2"=12H */
                 {0x00,0x21,0x41,0x45,0x4B,0x31,0x00,0x00}, /* "3"=13H */
                 {0x00,0x18,0x14,0x12,0x7F,0x10,0x00,0x00}, /* "4"=14H */ 
                 {0x00,0x27,0x45,0x45,0x45,0x39,0x00,0x00}, /* "5"=15H */
                 {0x00,0x3C,0x4A,0x49,0x49,0x30,0x00,0x00}, /* "6"=16H */
                 {0x00,0x01,0x01,0x79,0x05,0x03,0x00,0x00}, /* "7"=17H */
                 {0x00,0x36,0x49,0x49,0x49,0x36,0x00,0x00}, /* "8"=18H */
                 {0x00,0x06,0x49,0x49,0x29,0x1E,0x00,0x00}, /* "9"=19H */
                 {0x00,0x00,0x36,0x36,0x00,0x00,0x00,0x00}, /* ":"=1AH */
                 {0x00,0x00,0x56,0x36,0x00,0x00,0x00,0x00}, /* ";"=1BH */
                 {0x00,0x08,0x14,0x22,0x41,0x00,0x00,0x00}, /* "<"=1CH */
                 {0x00,0x14,0x14,0x14,0x14,0x14,0x00,0x00}, /* "="=1DH */
                 {0x00,0x00,0x41,0x22,0x14,0x08,0x00,0x00}, /* ">"=1EH */
                 {0x00,0x02,0x01,0x51,0x09,0x06,0x00,0x00}, /* "?"=1FH */
                 {0x00,0x32,0x49,0x79,0x41,0x3E,0x00,0x00}, /* "@"=20H */
                 {0x00,0x7E,0x11,0x11,0x11,0x7E,0x00,0x00}, /* "A"=21H */
                 {0x00,0x41,0x7F,0x49,0x49,0x36,0x00,0x00}, /* "B"=22H */
                 {0x00,0x3E,0x41,0x41,0x41,0x22,0x00,0x00}, /* "C"=23H */
                 {0x00,0x41,0x7E,0x41,0x41,0x3E,0x00,0x00}, /* "D"=24H */
                 {0x00,0x7F,0x49,0x49,0x49,0x49,0x00,0x00}, /* "E"=25H */
                 {0x00,0x7F,0x09,0x09,0x09,0x01,0x00,0x00}, /* "F"=26H */
                 {0x00,0x3E,0x41,0x41,0x49,0x7A,0x00,0x00}, /* "G"=27H */
                 {0x00,0x7F,0x08,0x08,0x08,0x7F,0x00,0x00}, /* "H"=28H */
                 {0x00,0x00,0x41,0x7F,0x41,0x00,0x00,0x00}, /* "I"=29H */
                 {0x00,0x20,0x40,0x41,0x3F,0x01,0x00,0x00}, /* "J"=2AH */
                 {0x00,0x7F,0x08,0x14,0x22,0x41,0x00,0x00}, /* "K"=2BH */
                 {0x00,0x7F,0x40,0x40,0x40,0x40,0x00,0x00}, /* "L"=2CH */
                 {0x00,0x7F,0x02,0x0C,0x02,0x7F,0x00,0x00}, /* "M"=2DH */
                 {0x00,0x7F,0x06,0x08,0x30,0x7F,0x00,0x00}, /* "N"=2EH */
                 {0x00,0x3E,0x41,0x41,0x41,0x3E,0x00,0x00}, /* "O"=2FH */
                 {0x00,0x7F,0x09,0x09,0x09,0x06,0x00,0x00}, /* "P"=30H */
                 {0x00,0x3E,0x41,0x51,0x21,0x5E,0x00,0x00}, /* "Q"=31H */
                 {0x00,0x7F,0x09,0x19,0x29,0x46,0x00,0x00}, /* "R"=32H */
                 {0x00,0x26,0x49,0x49,0x49,0x32,0x00,0x00}, /* "S"=33H */
                 {0x00,0x01,0x01,0x7F,0x01,0x01,0x00,0x00}, /* "T"=34H */
                 {0x00,0x3F,0x40,0x40,0x40,0x3F,0x00,0x00}, /* "U"=35H */
                 {0x00,0x1F,0x20,0x40,0x20,0x1F,0x00,0x00}, /* "V"=36H */
                 {0x00,0x7F,0x20,0x18,0x20,0x7F,0x00,0x00}, /* "W"=37H */ 
                 {0x00,0x63,0x14,0x08,0x14,0x63,0x00,0x00}, /* "X"=38H */
                 {0x00,0x07,0x08,0x70,0x08,0x07,0x00,0x00}, /* "Y"=39H */
                 {0x00,0x61,0x51,0x49,0x45,0x43,0x00,0x00}, /* "Z"=3AH */
                 {0x00,0x00,0x7F,0x41,0x41,0x00,0x00,0x00}, /* "["=3BH */
                 {0x00,0x02,0x04,0x08,0x10,0x20,0x00,0x00}, /* "\"=3CH */
                 {0x00,0x00,0x41,0x41,0x7F,0x00,0x00,0x00}, /* "]"=3DH */
                 {0x00,0x04,0x02,0x01,0x02,0x04,0x00,0x00}, /* "^"=3EH */
                 {0x00,0x40,0x40,0x40,0x40,0x40,0x00,0x00}, /* "_"=3FH */
                 {0x00,0x01,0x02,0x04,0x00,0x00,0x00,0x00}, /* "`"=40H */
                 {0x00,0x20,0x54,0x54,0x54,0x78,0x00,0x00}, /* "a"=41H */
                 {0x00,0x7F,0x48,0x44,0x44,0x38,0x00,0x00}, /* "b"=42H */
                 {0x00,0x38,0x44,0x44,0x44,0x28,0x00,0x00}, /* "c"=43H */ 
                 {0x00,0x38,0x44,0x44,0x48,0x7F,0x00,0x00}, /* "d"=44H */
                 {0x00,0x38,0x54,0x54,0x54,0x18,0x00,0x00}, /* "e"=45H */
                 {0x00,0x00,0x08,0x7E,0x09,0x02,0x00,0x00}, /* "f"=46H */
                 {0x00,0x0C,0x52,0x52,0x4C,0x3E,0x00,0x00}, /* "g"=47H */
                 {0x00,0x7F,0x08,0x04,0x04,0x78,0x00,0x00}, /* "g"=48H */
                 {0x00,0x00,0x44,0x7D,0x40,0x00,0x00,0x00}, /* "i"=49H */
                 {0x00,0x20,0x40,0x44,0x3D,0x00,0x00,0x00}, /* "j"=4AH */
                 {0x00,0x00,0x7F,0x10,0x28,0x44,0x00,0x00}, /* "k"=4BH */
                 {0x00,0x00,0x41,0x7F,0x40,0x00,0x00,0x00}, /* "l"=4CH */
                 {0x00,0x7C,0x04,0x78,0x04,0x78,0x00,0x00}, /* "m"=4DH */
                 {0x00,0x7C,0x08,0x04,0x04,0x78,0x00,0x00}, /* "n"=4EH */
                 {0x00,0x38,0x44,0x44,0x44,0x38,0x00,0x00}, /* "o"=4FH */
                 {0x00,0x7E,0x0C,0x12,0x12,0x0C,0x00,0x00}, /* "p"=50H */
                 {0x00,0x0C,0x12,0x12,0x0C,0x7E,0x00,0x00}, /* "q"=51H */
                 {0x00,0x7C,0x08,0x04,0x04,0x08,0x00,0x00}, /* "r"=52H */
                 {0x00,0x58,0x54,0x54,0x54,0x64,0x00,0x00}, /* "s"=53H */
                 {0x00,0x04,0x3F,0x44,0x40,0x20,0x00,0x00}, /* "t"=54H */
                 {0x00,0x3C,0x40,0x40,0x3C,0x40,0x00,0x00}, /* "u"=55H */
                 {0x00,0x1C,0x20,0x40,0x20,0x1C,0x00,0x00}, /* "v"=56H */
                 {0x00,0x3C,0x40,0x30,0x40,0x3C,0x00,0x00}, /* "w"=57H */
                 {0x00,0x44,0x28,0x10,0x28,0x44,0x00,0x00}, /* "x"=58H */
                 {0x00,0x1C,0xA0,0xA0,0x90,0x7C,0x00,0x00}, /* "y"=59H */
                 {0x00,0x44,0x64,0x54,0x4C,0x44,0x00,0x00}, /* "z"=5AH */
                 {0x00,0x00,0x08,0x36,0x41,0x00,0x00,0x00}, /* "{"=5BH */
                 {0x00,0x00,0x00,0x77,0x00,0x00,0x00,0x00}, /* "|"=5CH */
                 {0x00,0x00,0x41,0x36,0x08,0x00,0x00,0x00}, /* "}"=5DH */
                 {0x00,0x02,0x01,0x02,0x04,0x02,0x00,0x00}, /* "~"=5EH */
                 {0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x00},/* " "=5FH */
               };

/*说明使用到的外部函数*/
void CWE1(void);		/*实现控制器E1控制指令的传递*/
void CWE2(void); 		/* 实现控制器E2控制指令的传递*/
void DWE1(void); 		/*实现控制器E1控制数据的传递*/
void DWE2(void); 		/*实现控制器E2控制数据的传递*/

/* locate(uchar page,column)函数,指定字符串首字符的显示位置*/
void locate(uchar page,column)
{
	page=page+column/120;
	LINE=page%4;
	COM=LINE|0xb8;
	CWE1();
	CWE2();
	column=column%120;
	CLMN=column;
	if (column>=60)
	{	
		AREA=1;
		column=column-60;
	}
	else AREA=0;
	COM=column;
	if (AREA) CWE2();
	else CWE1();
}

/* onechar (char c)子函数,写一个字符, 流程图见图2-26*/ 
void onechar (char c)  
{
	uchar i;
	for (i=0;i<6;i++)
	{	
		DAT=CTAB[c-0x20][i];
		if (AREA) DWE2();
		else DWE1();
		locate(LINE, CLMN+1);
	}
}

/* show (void)子函数,显示一个字符串,流程图见图2-27*/
void show (void)
{
	uchar i;
	for (i=0;i<NDIG;i++)
	{
	onechar(BUFFER[i]);
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -