1602的使用方法及3个代码Word下载.docx

上传人:b****5 文档编号:18761946 上传时间:2023-01-01 格式:DOCX 页数:14 大小:1.02MB
下载 相关 举报
1602的使用方法及3个代码Word下载.docx_第1页
第1页 / 共14页
1602的使用方法及3个代码Word下载.docx_第2页
第2页 / 共14页
1602的使用方法及3个代码Word下载.docx_第3页
第3页 / 共14页
1602的使用方法及3个代码Word下载.docx_第4页
第4页 / 共14页
1602的使用方法及3个代码Word下载.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

1602的使用方法及3个代码Word下载.docx

《1602的使用方法及3个代码Word下载.docx》由会员分享,可在线阅读,更多相关《1602的使用方法及3个代码Word下载.docx(14页珍藏版)》请在冰豆网上搜索。

1602的使用方法及3个代码Word下载.docx

(1)通过RS确定是写数据还是写命令,写命令包括使液晶的光标显示/不显示、光标闪烁/不闪烁、需/不需要移屏、在液晶的什么位置显示,等等。

写数据是指要显示什么内容。

(2)读/写控制设置为写模式,即低电平。

(3)将数据或命令送达数据线上。

(4)将E一个高脉冲将数据送入液晶控制器,完成写操作。

1602显示数字程序(显示1,2,3,4,5)

/*程序功能:

在1602液晶上显示12345*/

#include<

reg52.h>

typedefunsignedcharuchar;

typedefunsignedintuint;

sbitbeep=P1^5;

//定义蜂鸣器端口

sbitLCD_RS=P2^6;

sbitLCD_RW=P2^5;

sbitLCD_EP=P2^7;

ucharcodetable[]={"

12345"

};

voiddelay(uintxms)

{//延时函数

uinti,j;

for(i=xms;

i>

0;

i--)

for(j=110;

j>

j--);

}

voidlcd_wcmd(ucharcmd)

{//写入指令数据到LCD

LCD_RS=0;

LCD_RW=0;

LCD_EP=0;

P0=cmd;

delay(10);

LCD_EP=1;

voidlcd_wdata(uchardat)

{//写入字符显示数据到LCD

LCD_RS=1;

P0=dat;

voidlcd_init()//LCD初始化设定初始化函数

{

lcd_wcmd(0x38);

//16*2显示,5*7点阵,8位数据

delay

(1);

lcd_wcmd(0x0c);

//设置开显示,不显示光标

lcd_wcmd(0x06);

//写一个字符后地址指针加1

lcd_wcmd(0x01);

//显示清0,数据指针清0

voidmain()

{

uchari;

beep=0;

//蜂鸣器默认处于开启状态,所以关闭它

lcd_init();

//LCD初始化

lcd_wcmd(0x80);

//设置显示位置为第一行的第1个字符

while(table[i]!

='

\0'

{//显示字符"

lcd_wdata(table[i]);

i++;

delay(200);

//控制两字之间显示速度

}

while

(1);

字样滚动显示程序

在1602液晶上滚动显示字样*/

//定义蜂鸣器端口

//数据/命令选择端(H/L)

//读写选择端(1/0)

//使能信号

ucharcodetable1[]={"

Hellotoworld"

ucharcodetable2[]={"

Hellotolife"

/*******************************************************************/

/*

/*写指令数据到LCD

/*RS=L,RW=L,E=高脉冲,D0-D7=指令码。

//while(lcd_bz());

/*写显示数据到LCD

/*RS=H,RW=L,E=高脉冲,D0-D7=数据。

while

(1)

{

lcd_wcmd(0x01);

//清屏

i=0;

lcd_wcmd(0x80+0x10);

//第1行第17列(屏幕之外,不显示)

while(table1[i]!

)//写入Hellotoworld

{

lcd_wdata(table1[i]);

i++;

}

lcd_wcmd(0x80+0x50);

while(table2[i]!

)//写入Hellotolife

lcd_wdata(table2[i]);

for(i=0;

i<

30;

i++)//向左移动30格

{

lcd_wcmd(0x18);

//全屏字符同时左移一格,写在屏幕外的字符慢慢显示出来

delay(800);

//控制移动时间

综合实验三:

按键控制1602显示

/*此程序功能:

按下4个按键可在1602液晶上显示不同字样*/

//52系列单片机头文件

sbitkey1=P3^2;

//定义按键端口

sbitkey2=P3^3;

sbitkey3=P3^4;

sbitkey4=P3^5;

YouPressKey1"

YouPressKey2"

ucharcodetable3[]={"

YouPressKey3"

ucharcodetable4[]={"

YouPressKey4"

uchari;

voidkeyscan()//按键扫描,根据扫描到的不同按键在1602上显示不同字样

if(key1==0)

delay(10);

//利用软件延时坚决按键过程中的抖动问题

//清屏

if(key1==0)

{

while(!

key1);

//等待按键释放

i=0;

lcd_wcmd(0x80);

//第1行第1列

while(table1[i]!

)//按键1对应的字样

{

lcd_wdata(table1[i]);

i++;

}

if(key2==0)

//延时消抖

if(key2==0)

key2);

lcd_wcmd(0x80+0x40);

//第2行第1列

while(table2[i]!

lcd_wdata(table2[i]);

}

if(key3==0)

if(key3==0)

key3);

while(table3[i]!

lcd_wdata(table3[i]);

if(key4==0)

if(key4==0)

key4);

while(table4[i]!

lcd_wdata(table4[i]);

//LCD初始化

//蜂鸣器默认是开启的,所以先关闭蜂鸣器

while

(1)

keyscan();

//调用键盘扫描函数

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 畜牧兽医

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1