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

📄 min.c

📁 用ICC-AVR编译器编译M16单片机适用的LCD12232液晶屏驱动程序.
💻 C
字号:
//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------
//					    	LCD12232 APP for AVR 
//								  V0.1c
// 	  							 zhongwh
//							Copyright 2003-2005 
//   					   Email: hfkj01@163.com
//						    2005-6-19 15:38:52
//			    Compiled with Imagecraft C Compiler for the AVR series
//				ICC-AVR application builder : 2005-6-19 18:15:13
// 								Target : M16
// 								Crystal: 6.0000Mhz
//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------
#include <iom16v.h>
#include <macros.h>
#include "LCD12232.C"
const char chartable[35][32]={
//输   C4268 
{0x88,0x68,0x1F,0xC8,0x0C,0x28,0x90,0xA8,0xA6,0xA1,0x26,0x28,0x10,0xB0,0x10,0x00,
0x09,0x09,0x05,0xFF,0x05,0x00,0xFF,0x0A,0x8A,0xFF,0x00,0x1F,0x80,0xFF,0x00,0x00},//A
//入   C4075 
{0x00,0x00,0x00,0x00,0x00,0x01,0xE2,0x1C,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x80,0x40,0x20,0x10,0x0C,0x03,0x00,0x00,0x00,0x03,0x0C,0x30,0x40,0xC0,0x40,0x00},//B
/*--  文字:  卡  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x00,0x40,0x40,0x40,0x40,0x40,0x40,0xFF,0x44,0x44,0x44,0x44,0x44,0x44,0x40,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x00,0x02,0x04,0x0C,0x38,0x10,0x00,0x00},//C
/*号   C2637 */
{0x80,0x80,0x80,0xBE,0xA2,0xA2,0xA2,0xA2,0xA2,0xA2,0xA2,0xBF,0x82,0xC0,0x80,0x00,
0x00,0x00,0x00,0x04,0x06,0x05,0x04,0x04,0x44,0x84,0x44,0x3E,0x04,0x00,0x00,0x00},//D
/*密   C3560 */
{0x10,0x4C,0x24,0x04,0xF4,0x84,0x4D,0x56,0x24,0x24,0x14,0x84,0x24,0x54,0x0C,0x00,
0x00,0x01,0xFD,0x41,0x40,0x41,0x41,0x7F,0x41,0x41,0x41,0x41,0xFC,0x00,0x00,0x00},//E
/*码   C3475 */
{0x02,0x82,0xF2,0x4E,0x43,0xE2,0x42,0xFA,0x02,0x02,0x02,0xFF,0x02,0x80,0x00,0x00,
0x01,0x00,0x7F,0x20,0x20,0x7F,0x08,0x09,0x09,0x09,0x0D,0x49,0x81,0x7F,0x01,0x00},//F
/*插   C1869 */
{0x10,0x10,0x10,0xFF,0x90,0x24,0x24,0xA4,0x24,0xFC,0x22,0x23,0x22,0xB0,0x20,0x00,
0x02,0x42,0x81,0x7F,0x00,0xFF,0x49,0x48,0x40,0x7F,0x40,0x49,0x49,0xFF,0x01,0x00},//G
/*座   C5589 */
{0x00,0x00,0xFC,0x04,0x84,0x74,0x84,0x05,0xFE,0x04,0x84,0x74,0x84,0x06,0x04,0x00,
0x40,0x30,0x4F,0x42,0x49,0x48,0x48,0x4B,0x7F,0x4A,0x49,0x4C,0x48,0x63,0x40,0x00},//H
/*时   C4217 */
{0x00,0xFC,0x84,0x84,0x84,0xFE,0x14,0x10,0x90,0x10,0x10,0x10,0xFF,0x10,0x10,0x00,
0x00,0x3F,0x10,0x10,0x10,0x3F,0x00,0x00,0x00,0x23,0x40,0x80,0x7F,0x00,0x00,0x00},//I
/*间   C2868 */
{0x00,0xF8,0x01,0x02,0xF6,0x10,0x12,0x12,0x12,0x12,0xFA,0x12,0x02,0xFF,0x02,0x00,
0x00,0xFF,0x00,0x00,0x3F,0x11,0x11,0x11,0x11,0x11,0x3F,0x40,0x80,0x7F,0x00,0x00},//J
/*已   C5049 */
{0x00,0x02,0xF2,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0xFF,0x02,0x00,0x00,0x00,
0x00,0x00,0x3F,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x78,0x00,0x00},//K
/*--  文字:  开  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x40,0x42,0x42,0x42,0x42,0xFE,0x42,0x42,0x42,0x42,0xFE,0x42,0x42,0x42,0x42,0x00,
0x00,0x40,0x20,0x10,0x0C,0x03,0x00,0x00,0x00,0x00,0x7F,0x00,0x00,0x00,0x00,0x00},//L
/*电   C2171 */
{0x00,0xF8,0x48,0x48,0x48,0x48,0xFF,0x48,0x48,0x48,0x48,0xFC,0x08,0x00,0x00,0x00,
0x00,0x07,0x02,0x02,0x02,0x02,0x3F,0x42,0x42,0x42,0x42,0x47,0x40,0x70,0x00,0x00},//M
/*--  文字:  关  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x00,0x10,0x10,0x10,0x11,0x1E,0x14,0xF0,0x10,0x18,0x17,0x12,0x18,0x10,0x00,0x00,
0x01,0x81,0x41,0x21,0x11,0x09,0x05,0x03,0x05,0x09,0x31,0x61,0xC1,0x41,0x01,0x00},//N
/*剩   C4203 */
{0x08,0x48,0x4A,0xEA,0x0A,0xFE,0x09,0xE9,0x4D,0x48,0x00,0xF8,0x00,0xFF,0x00,0x00,
0x00,0x11,0x09,0x05,0x02,0xFF,0x04,0x09,0x19,0x01,0x00,0x4F,0x80,0x7F,0x00,0x00},//O

/*余   C5164 */
// **** Enabled Break Point -- do not edit ****
{0x80,0x80,0x40,0x20,0x50,0x48,0x44,0xC3,0x44,0x48,0x50,0x20,0x40,0xC0,0x40,0x00,
0x00,0x40,0x22,0x12,0x1A,0x42,0x82,0x7F,0x02,0x02,0x0A,0x13,0x32,0x60,0x00,0x00},//P
/*--  文字:  错  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x40,0x30,0x2C,0xE7,0x24,0x24,0x40,0x48,0x7F,0x48,0x48,0x7F,0x48,0x48,0x40,0x00,
0x01,0x01,0x01,0xFF,0x41,0x21,0x00,0xFF,0x49,0x49,0x49,0x49,0x49,0xFF,0x00,0x00},//Q
/*--  文字:  误  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x40,0x41,0xCE,0x04,0x00,0x40,0x5F,0x51,0x51,0xD1,0x51,0x51,0x5F,0x40,0x00,0x00,
0x00,0x00,0x3F,0x10,0x88,0x42,0x22,0x12,0x0A,0x07,0x0A,0x12,0x22,0xE2,0x42,0x00},//R
/*请   C3975 */
{0x20,0x22,0xEC,0x00,0x20,0x22,0xAA,0xAA,0xAA,0xBF,0xAA,0xAA,0xEB,0xA2,0x20,0x00,
0x00,0x00,0x7F,0x20,0x10,0x00,0xFF,0x0A,0x0A,0x0A,0x4A,0x8A,0x7F,0x00,0x00,0x00},//S
/*--  文字:  源  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x10,0x21,0x06,0xE0,0x00,0xFE,0x02,0xF2,0x5A,0x56,0x52,0x52,0x52,0xF2,0x02,0x00,
0x04,0xFC,0x03,0x40,0x30,0x0F,0x20,0x11,0x4D,0x81,0x7F,0x01,0x05,0x09,0x30,0x00},//T
/*:   C0326 */
{0x00,0x00,0x00,0x00,0x80,0xC0,0xC0,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x31,0x7B,0x7B,0x31,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},//U
/*空格*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},//V
/*--  文字:  0  --*/
/*--  黑体12;  此字体下对应的点阵为:宽x高=10x16   --*/
{0x00,0xE0,0xF0,0x18,0x08,0x08,0x18,0xF0,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x0F,0x1F,0x30,0x20,0x20,0x30,0x1F,0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00},//W


/*--  文字:  1  --*/
/*--  黑体12;  此字体下对应的点阵为:宽x高=10x16   --*/
{0x00,0x20,0x30,0xF8,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x3F,0x3F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},//X


/*--  文字:  2  --*/
/*--  黑体12;  此字体下对应的点阵为:宽x高=10x16   --*/
{0x00,0x60,0x70,0x18,0x08,0x18,0xF0,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x30,0x38,0x2C,0x26,0x23,0x21,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},//Y

/*--  文字:  3  --*/
/*--  黑体12;  此字体下对应的点阵为:宽x高=10x16   --*/
{0x00,0x30,0x38,0x08,0x08,0x08,0xF8,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x18,0x38,0x20,0x21,0x21,0x3F,0x1E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},//Z

/*--  文字:  4  --*/
/*--  黑体12;  此字体下对应的点阵为:宽x高=10x16   --*/
{0x00,0x00,0x00,0xC0,0xE0,0x30,0xF8,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x06,0x07,0x05,0x04,0x04,0x3F,0x3F,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00},//[

/*--  文字:  5  --*/
/*--  黑体12;  此字体下对应的点阵为:宽x高=10x16   --*/
{0,248,8,200,72,200,8,200,8,200,
8,200,72,200,8,248,0,31,16,23,
19,21,16,23,20,23,16,23,16,23,
16,31},//\
/*--  文字:  5  --*/
/*--  黑体12;  此字体下对应的点阵为:宽x高=10x16   --*/
{248,8,8,200,8,200,8,200,72,72,
8,200,8,8,8,248,31,16,16,23,
20,23,16,21,21,23,16,23,21,23,
16,31}
,//]

/*--  文字:  6  --*/
/*--  黑体12;  此字体下对应的点阵为:宽x高=10x16   --*/
{248,248,56,184,184,248,56,184,184,248,
184,56,184,248,248,0,31,31,26,26,
24,31,24,26,26,31,31,24,31,31,
31,0},//^

/*--  文字:  7  --*/
/*--  黑体12;  此字体下对应的点阵为:宽x高=10x16   --*/
{0,224,80,72,120,136,72,72,8,8,
8,8,8,8,248,0,0,31,16,16,
17,17,17,17,17,19,23,23,22,16,
31,0},//_


/*--  文字:  8  --*/
/*--  黑体12;  此字体下对应的点阵为:宽x高=10x16   --*/
{248,56,184,120,184,56,248,56,184,184,56,248,184,184,56,248,31,24,31,30,
31,24,31,24,30,30,30,31,26,26,24,31},//`

/*--  文字:  9  --*/
/*--  黑体12;  此字体下对应的点阵为:宽x高=10x16   --*/
{0,248,24,248,56,248,120,248,248,248,248,248,248,248,248,248,0,31,16,31,
16,31,16,31,16,31,17,31,19,31,23,31},//a
/*--  文字:  用  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
 {0,128,128,64,176,208,128,0,128,224,160,128,0,0,0,0,0,0,1,8,40,61,15,7,15,29,56,
 16,0,0,0,0},//b

{0,224,32,248,8,232,232,232,232,232,232,232,232,8,248,0,0,7,4,31,16,23,23,23,23,
23,23,23,23,16,31,0}};//c
char string0[]={"ac`_^]\n"};//用电计费系统
char string1[]={"ABEFWXY\n"};//待机状态
void port_init(void)
{
 PORTA = 0x00;
 DDRA  = 0x00;
 PORTB = 0x00;
 DDRB  = 0x00;
 PORTC = 0x00; //m103 output only
 DDRC  = 0x00;
 PORTD = 0x00;
 DDRD  = 0x00;
 DDRA  = 0x80;
 PORTA = 0x80;
}

//call this routine to initialise all peripherals
void init_devices(void)
{
 //stop errant interrupts until set up
 CLI(); //disable all interrupts
 port_init();
 lcdinit();
 MCUCR = 0x00;
 GICR  = 0x00;
 TIMSK = 0x00; //timer interrupt sources
 SEI(); //re-enable interrupts
 //all peripherals are now initialised
}

//
void main(void)
{
 init_devices();
 displaystring(0,13,string0);
 displaystring(2,13,string1);
 while(1){;}

}

⌨️ 快捷键说明

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