一.1602液晶屏基础
1.LCD1602简介
- 1602液晶也叫1602字符型液晶,它是一种专门用来显示字母、数字、符号的点阵型液晶模块。它是由若干个5x7或者5x11的点阵字符位组成,每个点阵字符位都可以用显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用,正因为如此,所以它不能很好的显示图片。本次使用型号为SMC1602A LCM的液晶屏。
2.LCD1602接口信号说明
3.控制接口说明
4.指令说明
初始化过程
- 第一步:写指令38H,显示模式设置;
- 第二步:写指令08H,显示关闭;
- 第三步;写指令01H,显示清屏;
- 第四步:写指令06H,显示光标移动设置;
- 第五步:写指令0CH,显示光标开及光标设置
二.实验例程
1.电路原理图
2.实验说明
- 本实验通过在1602液晶屏上显示两行字母学习LCD液晶屏的使用方法,接线为JP11接JP12,并插上LCD1602液晶屏,实验中为不影响实验需要把红外遥控模块拆下。
3.程序源代码
/************************************** > File Name: LCD1602实验 > Author: pengshp > Mail: [email protected] > Date: 2015年 7 月 21 日***************************************/#include<reg51.h>#define uchar unsigned char#define uint unsigned intsbit RD_RS=P2^6;sbit LCDE_E=P2^7;sbit WR_RW=P2^5;uchar code table1[]="STC-51 MCU";uchar code table2[]=" pengshp ";uchar i,j;uchar num;void Delay(uint x){ for(i=x;i>0;i--) { for(j=120;j>0;j--) { } }}/*写命令函数*/void write_com(uchar com){ RD_RS=0; WR_RW=0; LCDE_E=0; P0=com; LCDE_E=1; Delay(5); LCDE_E=0;}/*写数据函数*/void write_data(uchar dat){ RD_RS=1; WR_RW=0; LCDE_E=0; P0=dat; LCDE_E=1; Delay(5); LCDE_E=0;}/*初始化函数*/void intt(){ write_com(0x38);//显示模式 write_com(0x08);//显示关闭 write_com(0x01);//显示清屏 write_com(0x06);//显示光标移动 write_com(0x0F);//显示开及光标设置}void main(){ intt(); for(num=0;num<10;num++) { write_data(table1[num]); Delay(300); } write_com(0x80+0x40);//第二行显示 for(num=0;num<9;num++) { write_data(table2[num]); Delay(10); } while(1);}
版权声明:本文为博主原创文章,未经博主允许不得转载。