首页 » 通讯 » 12864 LCD屏丝印WOM-13064H2—B(NT7538)驱动C轨范_汉字_模式

12864 LCD屏丝印WOM-13064H2—B(NT7538)驱动C轨范_汉字_模式

神尊大人 2025-01-21 19:21:57 0

扫一扫用手机浏览

文章目录 [+]

2.5元淘得手

点亮便是宝

12864 LCD屏丝印WOM-13064H2—B(NT7538)驱动C轨范_汉字_模式 通讯

程序显示效果(需调一下比拟度)

原是并口,芯片支持串口(需小改)

//屏丝印WOM-13064H2

//NT7538 驱动例程, 12864 点阵, 6800 时序 驱动电压 VDD=3.3V

#include<reg52.h>

//#include<STC8F.h>

#define uchar unsigned char

//函数

void LCD_Init() ;

void Delay(int) ;

void LCD_RegWrite(uchar) ; //写命令寄存器

void LCD_dataWrite(uchar) ; //写显示数据寄存器

void Write_Indirect68(uchar _data); //间接驱动 68 模式写数据子程序

LCD_Data_Read(void); //读显示数据寄存器

Read_Indirect68(void); //间接驱动 68 模式读数据子程序

Read_STATUS_Indirect68(void); //间接驱动 68 模式读状态字

void Write_HANZI( uchar _x,uchar _y,uchar hz ); //写一个汉字

void Write_ZIFU( uchar _x,uchar _y,uchar zf ); //写一个字符

void Test_Read_Modify_Write(); //读功能及读修正写测试

void Dot_Write(uchar _x,uchar _y); //写单点, 读修正写模式

void LCD_Clear() ;

void LCD_XY() ; //X_Y 坐标定位,根据 col,row 的值在显示区定位

void LCD_DISPPIC( uchar pic ); //写全屏图片

void LCD_BIAN( ); //写边框

void LCD_HANZI( ); //写汉字列表

void LCD_ZIFU( ); //写字符列表

void LCD_Line_Write(uchar x0,uchar y0,uchar xt,uchar yt); //两点划直线 出发点(x0,y0), 终点(xt,yt)

//间接驱动模式功能位定义

sbit LCD_CS = P0^3 ;

sbit LCD_A0 = P0^4 ;

sbit LCD_RST = P0^1 ; //

sbit LCD_WR = P0^2 ;

sbit LCD_RD = P0^5 ;

#define DBBUS P1 //并口数据端口

#define LCMLIMIT 130 //128总列数.

#define EXCURSION 1 //列驱动偏移量, 从 SO 开始该值为 0, 从 S1 开始该值为 1,

//全局变量

uchar col,row; /列 x,行(页)y,输出数据 /

uchar lcdvop; //比拟度参数

uchar status; //状态字

uchar code tu[];//图片数组

uchar code hanzi[][32];//汉字数组

uchar code zifu[][16];//字符数组

/主函数/

void main(void)

{

//EA=1,EX1=1,IT1=0;//中断设置, 开启外部中断 1, 低电平触发

lcdvop=0x20; //vop 预设参数

LCD_Init(); //初始化

LCD_Clear(); //清屏

status=Read_STATUS_Indirect68();//读状态字

LCD_RegWrite(0xa5); //逼迫全显指令

Delay(1000); //显示延时

LCD_RegWrite(0xa4); //规复正常显示

LCD_BIAN(); //写边框

Delay(1000);

LCD_Clear();

LCD_HANZI( ); //写入汉字

LCD_ZIFU(); //写入字符

Delay(1000);

LCD_Line_Write(10,3,3,60); // 画线

LCD_Line_Write(3,61,124,61);

LCD_Line_Write(124,61,117,3);

LCD_Line_Write(118,3,10,3);

Delay(1500);

while(1)

{

}

}

//

//初始化

//

void LCD_Init()

{

DBBUS=0xff;

LCD_CS = 1 ;

LCD_A0 = 1 ;

LCD_RST = 0 ; //复位脚复位

Delay(50);

LCD_RST = 1 ;

Delay(100);

LCD_RegWrite(0xe2); //复位指令

LCD_RegWrite(0xae); //关显示

LCD_RegWrite(0x60); //起始行设置 40-7F

LCD_RegWrite(0xa2); //LCD 偏压设置,A2=1/9,A3=1/7

LCD_RegWrite(0xa1); //SEG 扫描方向设置 A0=正扫 S0->S131,A1=反扫 S131->S0

LCD_RegWrite(0xc0); //COM 扫描方向设置,C0=正扫 C0->C63,C8=反扫 C63->C0

LCD_RegWrite(0xA6); //显斧正/反显设置,A6=1 显示,A7=0 显示

LCD_RegWrite(0x26); //V0 的电压调节器的内部电阻率设置, Rb/Ra Ratio 20-27

LCD_RegWrite(0x81); //比拟度 VOP 设置指令

LCD_RegWrite(lcdvop); //比拟度参数 00-3F

LCD_RegWrite(0xf8); //倍压模式设置指令

LCD_RegWrite(0x00); //倍压模式选择 00=2X,3X,4X 01=5X 03=6X

LCD_RegWrite(0xa4); //全部显示掌握 ,A4=正常显示,A5=逼迫所有像素全亮

LCD_RegWrite(0x2f); //电源设置

LCD_RegWrite(0xAf); //打开显示

}

//

/ 写汉字列表 /

//

void LCD_HANZI(void)

{

Write_HANZI( 16,1,hanzi[0] ); // "电"

Write_HANZI( 32,1,hanzi[1] ); // "子"

Write_HANZI( 48,1,hanzi[2] ); // "淘"

Write_HANZI( 64,1,hanzi[3] ); // "宝"

Write_ZIFU( 80,1,zifu[11] ); //"D"

Write_ZIFU( 88,1,zifu[16] ); //"I"

Write_ZIFU( 96,1,zifu[17] ); //"Y"

Write_HANZI( 16,3,hanzi[4] ); // "液"

Write_HANZI( 32,3,hanzi[5] ); // "晶"

Write_HANZI( 48,3,hanzi[6] ); // "显"

Write_HANZI( 64,3,hanzi[7] ); // "示"

Write_HANZI( 80,3,hanzi[8] ); // "模"

Write_HANZI( 96,3,hanzi[9] ); // "块"

}

//

/ 写字符列表 /

//

void LCD_ZIFU(void)

{

Write_ZIFU( 8,5,zifu[10] ); // ""

Write_ZIFU( 16,5,zifu[10] ); // ""

Write_ZIFU( 24,5,zifu[1] ); // "1"

Write_ZIFU( 32,5,zifu[2] ); // "2"

Write_ZIFU( 40,5,zifu[8] ); // "8"

Write_ZIFU( 48,5,zifu[15] ); // "X"

Write_ZIFU( 56,5,zifu[6] ); // "6"

Write_ZIFU( 64,5,zifu[4] ); // "4"

Write_ZIFU( 72,5,zifu[11] ); //"D"

Write_ZIFU( 80,5,zifu[12] ); // "O"

Write_ZIFU( 88,5,zifu[13] ); // "T"

Write_ZIFU( 96,5,zifu[14] ); // "S"

Write_ZIFU( 104,5,zifu[10] ); // ""

Write_ZIFU( 112,5,zifu[10] ); // ""

}

标签:

相关文章

几张图看懂半导体家当_芯片_晶圆厂

一些公司容许他们的芯片设计——作为软件构建模块,称为 IP 内核——以供广泛利用有超过 150 家公司发卖芯片 IP 核例如,Ap...

通讯 2025-01-23 阅读0 评论0