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

📄 新建 文本文档.txt

📁 基于STM上的122x32液晶显示程序显示图形及汉字
💻 TXT
📖 第 1 页 / 共 2 页
字号:

#include <intrinsics.h>
#include "stm32f10x_lib.h"


unsigned short LCD_Data_BUS_Out;

typedef unsigned int          Int32U;   // Unsigned 32 bit quantity
typedef unsigned int        * pInt32U;
//typedef enum {FALSE = 0, TRUE = !FALSE} bool;


#define LOOP_DLY_100US  30
uc8 HZ[]=
{
/*--  文字:  电  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   0-*/
0x00,0x00,0xF8,0x48,0x48,0x48,0x48,0xFF,0x48,0x48,0x48,0x48,0xF8,0x00,0x00,0x00,
0x00,0x00,0x0F,0x04,0x04,0x04,0x04,0x3F,0x44,0x44,0x44,0x44,0x4F,0x40,0x70,0x00,

/*--  文字:  压  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   1-*/
0x00,0x00,0xFE,0x02,0x42,0x42,0x42,0x42,0xFA,0x42,0x42,0x42,0x62,0x42,0x02,0x00,
0x20,0x18,0x27,0x20,0x20,0x20,0x20,0x20,0x3F,0x20,0x21,0x2E,0x24,0x20,0x20,0x00,

/*--  文字:  温  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   2-*/
0x10,0x21,0x86,0x70,0x00,0x7E,0x4A,0x4A,0x4A,0x4A,0x4A,0x7E,0x00,0x00,0x00,0x00,
0x02,0xFE,0x01,0x40,0x7F,0x41,0x41,0x7F,0x41,0x41,0x7F,0x41,0x41,0x7F,0x40,0x00,


/*--  文字:  度  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   3-*/
0x00,0x00,0xFC,0x04,0x24,0x24,0xFC,0xA5,0xA6,0xA4,0xFC,0x24,0x24,0x24,0x04,0x00,
0x80,0x60,0x1F,0x80,0x80,0x42,0x46,0x2A,0x12,0x12,0x2A,0x26,0x42,0xC0,0x40,0x00,
};

uc8 HC[]=
{0x00,0x00,0x00,0xE0,0x18,0x04,0x02,0x00,0x00,0x00,0x00,0x03,0x0C,0x10,0x20,0x00,//(,0
0x00,0x02,0x04,0x18,0xE0,0x00,0x00,0x00,0x00,0x20,0x10,0x0C,0x03,0x00,0x00,0x00,//),1
0x40,0x40,0x80,0xF0,0x80,0x40,0x40,0x00,0x02,0x02,0x01,0x0F,0x01,0x02,0x02,0x00,//*,2
0x80,0x80,0x80,0xF0,0x80,0x80,0x80,0x00,0x00,0x00,0x00,0x07,0x00,0x00,0x00,0x00,//+,3
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x58,0x38,0x00,0x00,0x00,0x00,0x00,//,.4
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,//-,5
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x00,0x00,0x00,0x00,0x00,//.,6
0x00,0x00,0x00,0x80,0x60,0x1C,0x02,0x00,0x00,0x30,0x0C,0x03,0x00,0x00,0x00,0x00,//,7
0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x00,0x07,0x08,0x10,0x10,0x08,0x07,0x00,//0,8
0x00,0x10,0x10,0xF8,0x00,0x00,0x00,0x00,0x00,0x10,0x10,0x1F,0x10,0x10,0x00,0x00,//1,9
0x00,0x30,0x08,0x08,0x08,0x88,0x70,0x00,0x00,0x18,0x14,0x12,0x11,0x10,0x18,0x00,//2,10
0x00,0x30,0x08,0x88,0x88,0x48,0x30,0x00,0x00,0x0C,0x10,0x10,0x10,0x11,0x0E,0x00,//3,11
0x00,0x80,0x40,0x20,0xF8,0x00,0x00,0x00,0x00,0x03,0x02,0x12,0x1F,0x12,0x12,0x00,//4,12
0x00,0xF8,0x88,0x48,0x48,0x48,0x88,0x00,0x00,0x0C,0x10,0x10,0x10,0x10,0x0F,0x00,//5,13
0x00,0xE0,0x10,0x88,0x88,0x98,0x00,0x00,0x00,0x0F,0x11,0x10,0x10,0x10,0x0F,0x00,//6,14
0x00,0x38,0x08,0x08,0xC8,0x38,0x08,0x00,0x00,0x00,0x00,0x1F,0x00,0x00,0x00,0x00,//7,15
0x00,0x70,0x88,0x88,0x88,0x88,0x70,0x00,0x00,0x0E,0x11,0x10,0x10,0x11,0x0E,0x00,//8,16
0x00,0xF0,0x08,0x08,0x08,0x90,0xE0,0x00,0x00,0x00,0x19,0x11,0x11,0x08,0x07,0x00,//9,17
0x00,0x00,0x00,0xC0,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x00,0x00,0x00,//:,18
0x00,0x00,0x00,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x30,0x00,0x00,0x00,0x00,//;,19
0x00,0x80,0x40,0x20,0x10,0x08,0x04,0x00,0x00,0x00,0x01,0x02,0x04,0x08,0x10,0x00,//<,20
0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x00,0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x00,//=,21
0x00,0x04,0x08,0x10,0x20,0x40,0x80,0x00,0x00,0x10,0x08,0x04,0x02,0x01,0x00,0x00,//>,22
0x00,0x38,0x04,0x04,0x04,0x84,0x78,0x00,0x00,0x00,0x00,0x18,0x1B,0x00,0x00,0x00,//?,23
0xE0,0x10,0xC8,0x28,0xE8,0x10,0xE0,0x00,0x07,0x08,0x17,0x14,0x13,0x14,0x0B,0x00,//@,24
0x00,0x00,0xE0,0x18,0xE0,0x00,0x00,0x00,0x10,0x1E,0x13,0x02,0x13,0x1E,0x10,0x00,//A,25
0x08,0xF8,0x88,0x88,0x88,0x48,0x30,0x00,0x10,0x1F,0x10,0x10,0x10,0x11,0x0E,0x00,//B,26
0xE0,0x10,0x08,0x08,0x08,0x08,0x38,0x00,0x07,0x08,0x10,0x10,0x10,0x08,0x04,0x00,//C,27
0x08,0xF8,0x08,0x08,0x08,0x10,0xE0,0x00,0x10,0x1F,0x10,0x10,0x10,0x08,0x07,0x00,//D,28
0x08,0xF8,0x88,0x88,0xE8,0x08,0x10,0x00,0x10,0x1F,0x10,0x10,0x13,0x10,0x08,0x00,//E,29
0x08,0xF8,0x88,0x88,0xE8,0x08,0x10,0x00,0x10,0x1F,0x10,0x00,0x03,0x00,0x00,0x00,//F,30
0xE0,0x10,0x08,0x08,0x08,0x38,0x00,0x00,0x07,0x08,0x10,0x10,0x12,0x0E,0x02,0x00,//G,31
0x08,0xF8,0x88,0x80,0x88,0xF8,0x08,0x00,0x10,0x1F,0x10,0x00,0x10,0x1F,0x10,0x00,//H,32
0x00,0x08,0x08,0xF8,0x08,0x08,0x00,0x00,0x00,0x10,0x10,0x1F,0x10,0x10,0x00,0x00,//I,33
0x00,0x00,0x08,0x08,0xF8,0x08,0x08,0x00,0x60,0x40,0x40,0x40,0x3F,0x00,0x00,0x00,//J,34
0x08,0xF8,0x88,0xC0,0x28,0x18,0x08,0x00,0x10,0x1F,0x10,0x01,0x16,0x18,0x10,0x00,//K,35
0x08,0xF8,0x08,0x00,0x00,0x00,0x00,0x00,0x10,0x1F,0x10,0x10,0x10,0x10,0x18,0x00,//L,36
0x08,0xF8,0x78,0x80,0x78,0xF8,0x08,0x00,0x10,0x1F,0x00,0x1F,0x00,0x1F,0x10,0x00,//M,37
0x08,0xF8,0x38,0xC0,0x08,0xF8,0x08,0x00,0x10,0x1F,0x10,0x01,0x0E,0x1F,0x00,0x00,//N,38
0xE0,0x10,0x08,0x08,0x08,0x10,0xE0,0x00,0x07,0x08,0x10,0x10,0x10,0x08,0x07,0x00,//O,39
0x08,0xF8,0x88,0x88,0x88,0x88,0x70,0x00,0x10,0x1F,0x10,0x00,0x00,0x00,0x00,0x00,//P,40
0xE0,0x10,0x08,0x08,0x08,0x10,0xE0,0x00,0x07,0x08,0x14,0x14,0x18,0x28,0x27,0x00,//Q,41
0x08,0xF8,0x88,0x88,0x88,0x70,0x00,0x00,0x10,0x1F,0x10,0x01,0x06,0x18,0x10,0x00,//R,42
0x00,0x70,0x88,0x88,0x08,0x08,0x38,0x00,0x00,0x1C,0x10,0x10,0x11,0x11,0x0E,0x00,//S,43
0x18,0x08,0x08,0xF8,0x08,0x08,0x18,0x00,0x00,0x00,0x10,0x1F,0x10,0x00,0x00,0x00,//T,44
0x08,0xF8,0x08,0x00,0x08,0xF8,0x08,0x00,0x00,0x0F,0x10,0x10,0x10,0x0F,0x00,0x00,//U,45
0x08,0x78,0x88,0x00,0x88,0x78,0x08,0x00,0x00,0x00,0x07,0x18,0x07,0x00,0x00,0x00,//V,46
0x08,0xF8,0x00,0xF8,0x00,0xF8,0x08,0x00,0x00,0x01,0x1F,0x00,0x1F,0x01,0x00,0x00,//W,47
0x08,0x18,0x68,0x80,0x68,0x18,0x08,0x00,0x10,0x18,0x16,0x01,0x16,0x18,0x10,0x00,//X,48
0x08,0x38,0xC8,0x00,0xC8,0x38,0x08,0x00,0x00,0x00,0x10,0x1F,0x10,0x00,0x00,0x00,//Y,49
0x00,0x10,0x08,0x08,0xC8,0x38,0x08,0x00,0x00,0x10,0x1C,0x13,0x10,0x10,0x18,0x00,//Z,50
0x00,0x00,0x00,0xFE,0x02,0x02,0x02,0x00,0x00,0x00,0x00,0x3F,0x20,0x20,0x20,0x00,//[,51
0x00,0x0C,0x30,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x06,0x38,0x40,0x00,//\,52
0x00,0x02,0x02,0x02,0xFE,0x00,0x00,0x00,0x00,0x20,0x20,0x20,0x3F,0x00,0x00,0x00,//],53
0x00,0x00,0x04,0x02,0x02,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,//^,54
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x00,//_,55
0x10,0x16,0x0E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,//',56
0x00,0x80,0x40,0x40,0x40,0x80,0x00,0x00,0x00,0x0C,0x12,0x11,0x11,0x1F,0x10,0x00,//a,57
0x08,0xF8,0x80,0x40,0x40,0x40,0x80,0x00,0x00,0x1F,0x10,0x10,0x10,0x10,0x0F,0x00,//b,58
0x00,0x00,0x80,0x40,0x40,0x40,0x80,0x00,0x00,0x07,0x08,0x10,0x10,0x10,0x08,0x00,//c,59
0x00,0x80,0x40,0x40,0x40,0x48,0xF8,0x00,0x00,0x0F,0x10,0x10,0x10,0x08,0x1F,0x10,//d,60
0x00,0x80,0x40,0x40,0x40,0x40,0x80,0x00,0x00,0x0F,0x11,0x11,0x11,0x11,0x09,0x00,//e,61
0x00,0x40,0x40,0xF0,0x48,0x48,0x18,0x00,0x00,0x10,0x10,0x1F,0x10,0x10,0x00,0x00,//f,62
0x00,0x80,0x40,0x40,0x40,0xC0,0x40,0x00,0x00,0x35,0x4A,0x4A,0x4A,0x49,0x30,0x00,//g,63
0x08,0xF8,0x80,0x40,0x40,0x40,0x80,0x00,0x10,0x1F,0x10,0x00,0x00,0x10,0x1F,0x10,//h,64
0x00,0x40,0x58,0xD8,0x00,0x00,0x00,0x00,0x00,0x10,0x10,0x1F,0x10,0x10,0x00,0x00,//i,65
0x00,0x00,0x00,0x40,0x58,0xD8,0x00,0x00,0x00,0x60,0x40,0x40,0x40,0x3F,0x00,0x00,//j,66
0x08,0xF8,0x00,0x00,0xC0,0x40,0x40,0x00,0x10,0x1F,0x12,0x01,0x16,0x18,0x10,0x00,//k,67
0x00,0x08,0x08,0xF8,0x00,0x00,0x00,0x00,0x00,0x10,0x10,0x1F,0x10,0x10,0x00,0x00,//l,68
0x40,0xC0,0x40,0xC0,0x40,0x80,0x00,0x00,0x10,0x1F,0x00,0x1F,0x00,0x1F,0x10,0x00,//m,69
0x40,0xC0,0x80,0x40,0x40,0x40,0x80,0x00,0x10,0x1F,0x10,0x00,0x00,0x10,0x1F,0x10,//n,70
0x00,0x00,0x80,0x40,0x40,0x80,0x00,0x00,0x00,0x07,0x08,0x10,0x10,0x08,0x07,0x00,//o,71
0x40,0xC0,0x80,0x40,0x40,0x40,0x80,0x00,0x40,0x7F,0x50,0x10,0x10,0x10,0x0F,0x00,//p,72
0x00,0x80,0x40,0x40,0x40,0x40,0xC0,0x00,0x00,0x0F,0x10,0x10,0x10,0x48,0x7F,0x40,//q,73
0x40,0x40,0xC0,0x80,0x40,0x40,0xC0,0x00,0x10,0x10,0x1F,0x10,0x10,0x00,0x00,0x00,//r,74
0x00,0x80,0x40,0x40,0x40,0xC0,0x00,0x00,0x00,0x19,0x12,0x12,0x12,0x0C,0x00,0x00,//s,75
0x00,0x40,0x40,0xF0,0x40,0x40,0x00,0x00,0x00,0x00,0x00,0x0F,0x10,0x10,0x00,0x00,//t,76
0x40,0xC0,0x00,0x00,0x00,0x40,0xC0,0x00,0x00,0x0F,0x10,0x10,0x10,0x08,0x1F,0x10,//u,77
0x40,0xC0,0x40,0x00,0x00,0x40,0xC0,0x40,0x00,0x00,0x07,0x18,0x04,0x03,0x00,0x00,//v,78
0x40,0xC0,0x00,0xC0,0x00,0xC0,0x40,0x00,0x00,0x03,0x1C,0x03,0x1C,0x03,0x00,0x00,//w,79
0x00,0x40,0xC0,0x00,0x40,0xC0,0x40,0x00,0x00,0x10,0x18,0x17,0x07,0x18,0x10,0x00,//x,80
0x40,0xC0,0x40,0x00,0x00,0x40,0xC0,0x40,0x40,0x40,0x47,0x38,0x0C,0x03,0x00,0x00,//y,81
0x00,0xC0,0x40,0x40,0x40,0xC0,0x40,0x00,0x00,0x10,0x18,0x16,0x11,0x10,0x18,0x00,//z,82
0x00,0x00,0x00,0x80,0x7E,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x20,0x00,0x00,//{,83
0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x00,0x00,0x00,//|,84
0x00,0x00,0x02,0x7E,0x80,0x00,0x00,0x00,0x00,0x00,0x20,0x3F,0x00,0x00,0x00,0x00,//},85


};








/*************************************************************************
 * Function Name: Dly100us
 * Parameters: Int32U Dly
 *
 * Return: none
 *
 * Description: Delay Dly * 100us
 *
 *************************************************************************/
void Dly100us(void *arg)
{
  Int32U Dly = (Int32U)arg;
  while(Dly--)
  {
    for(volatile int i = LOOP_DLY_100US; i; i--);
  }
}


//左页
//发送数据
void	OUTMD(u16 Data)
{
        GPIO_SetBits(GPIOC,LCD_RS);	//RS=1;	//写数据
	//delay(5);
        //Dly100us((void*)200);
	GPIO_SetBits(GPIOC,LCD_E1);//E1=1;
	//delay(10);
        
	LCD_Data_BUS_Out=GPIO_ReadOutputData(GPIOC);
        LCD_Data_BUS_Out = (LCD_Data_BUS_Out&0xff00)|(Data&0x00ff);///DATA=i;
        GPIO_Write(GPIOC,LCD_Data_BUS_Out);
        Dly100us((void*)3);
	//delay(5);
	GPIO_ResetBits(GPIOC,LCD_E1);//E1=0;
	
}
//左页
//发送命令
void	OUTMI(u16 Command)
{
	GPIO_ResetBits(GPIOC,LCD_RS);//RS=0;	//写指令
	//delay(5);
        //Dly100us((void*)2);
	GPIO_SetBits(GPIOC,LCD_E1);//E1=1;
	//delay(10);
        //Dly100us((void*)200);
	LCD_Data_BUS_Out=GPIO_ReadOutputData(GPIOC);
        LCD_Data_BUS_Out = (LCD_Data_BUS_Out&0xff00)|(Command&0x00ff);///DATA=i;
        GPIO_Write(GPIOC,LCD_Data_BUS_Out);//DATA=i;
	Dly100us((void*)3);
        //delay(5);
	GPIO_ResetBits(GPIOC,LCD_E1);//E1=0;
	
}
//右页
//发送数据
void	OUTSD(u16 Data)
{
	GPIO_SetBits(GPIOC,LCD_RS);	//RS=1;	//写数据
	//delay(5);
        //Dly100us((void*)2);
	GPIO_SetBits(GPIOC,LCD_E2);//E2=1;
	//delay(10);
        //Dly100us((void*)200);
	LCD_Data_BUS_Out=GPIO_ReadOutputData(GPIOC);
        LCD_Data_BUS_Out = (LCD_Data_BUS_Out&0xff00)|(Data&0x00ff);///DATA=i;
        GPIO_Write(GPIOC,LCD_Data_BUS_Out);
	Dly100us((void*)3);
        //delay(5);
	GPIO_ResetBits(GPIOC,LCD_E2);//E2=0;

}
//右页
//发送命令
void	OUTSI(u16 Command)
{
	GPIO_ResetBits(GPIOC,LCD_RS);//RS=0;	//写指令
	//delay(5);
        //Dly100us((void*)2);
	GPIO_SetBits(GPIOC,LCD_E2);//E2=1;
	//delay(10);
        //Dly100us((void*)200);
	LCD_Data_BUS_Out=GPIO_ReadOutputData(GPIOC);
        LCD_Data_BUS_Out = (LCD_Data_BUS_Out&0xff00)|(Command&0x00ff);///DATA=i;
        GPIO_Write(GPIOC,LCD_Data_BUS_Out);//DATA=i;
	Dly100us((void*)3);
        //delay(5);
	GPIO_ResetBits(GPIOC,LCD_E2);//E2=0;
	
}



//初始化
void	lcdini(void)
{
        GPIO_ResetBits(GPIOC,LCD_RST);
        Dly100us((void*)5000);
        GPIO_SetBits(GPIOC,LCD_RST);
        
	GPIO_ResetBits(GPIOC,LCD_RW);//LCD_RW=0;
	OUTMI(0XE2);
	OUTSI(0XE2);//复位
	
	OUTMI(0XA4);
	OUTSI(0XA4);//动态驱动
        
        OUTMI(0XAF);
	OUTSI(0XAF);//
        
	OUTMI(0XA9);
	OUTSI(0XA9);//1/32占空比
	
	OUTMI(0XC0);
	OUTSI(0XC0);
	
	OUTMI(0XA0);
	OUTSI(0XA0);
       
	
}
/*
函数说明:同时设置主从显示页为0-3页。(内函数,私有,用户不直接调用)
------------------------------------------------------------------------
*/
void SetPage(u8 page0,u8 page1)
{
  OUTMI(0xB8|page1);OUTSI(0xB8|page0);
}

/*
--------------------------------------------------------------------------------
函数说明:同时设置主从列地址为0-121。(内函数,私有,用户不直接调用)
--------------------------------------------------------------------------------
*/
void SetAddress(u8 address0,u8 address1)
{
  OUTMI(address1);OUTSI(address0);
}

⌨️ 快捷键说明

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