财讯中国

LCD1602程序代码及显示流程图

来源:网络 2022-01-21 16:29:59

lcd1602显示程序代码

前些天弄了最小系统板后就想着学习1602的显示程序,可惜坛子里的或网上的,都没有简单的1602显示程序,无柰在网上下载了一段经过反复修改测试,终于有了下面一段代码:

// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

// - - 初始化接口

# define LCD_DB P0 // - - P0 = DB0~DB7

sbit LCD_RS=P2^0; // - - p2.0 = RS

sbit LCD_RW=P2^1; // - - p2.1 = RW

sbit LCD_E=P2^2; // - - p2.2 = E

// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

// - - 定义函数

# define uchar unsigned char

# define uint unsigned int

// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

// - - 定义子程序函数

void LCD_init(void); // - - 初始化LCD1602函数

void LCD_write_command(uchar command); // - - 向LCD1602写指令函数

void LCD_write_data(uchar dat); // - - 向LCD1602写数据函数

void LCD_set_xy(uchar x,uchar y); // - - 设置LCD1602显示位置 X(0-16),y(1-2)

void LCD_disp_char(uchar x,uchar y,uchar dat); // - - 在LCD1602上显示一个字符

void LCD_disp_string(uchar X,uchar Y,uchar *s); // - - 在LCD1602上显示一个字符串

//void LCD_check_busy(void);//检查忙函数。我没用到此函数,因为通过率极低。

void LCD_delay_10us(uint n); // - - 10微秒的延时子程序

void LCD_delay_50us(uint n); // - - 50微秒的延时子程序

// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

// - - 初始化LCD1602

void LCD_init(void)

{

LCD_delay_10us(20);

LCD_write_command(0x38); // - - 设置8位格式,2行,5x7

LCD_delay_10us(5);

LCD_write_command(0x0c); // - - 整体显示,关光标,不闪烁

LCD_delay_10us(5);

LCD_write_command(0x06); // - - 设定输入方式,增量不移位

LCD_delay_10us(5);

LCD_write_command(0x01); // - - 清除屏幕显示

LCD_delay_50us(40);

}

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

// - - 向LCD1602写指令

void LCD_write_command(uchar dat)

{

LCD_delay_10us(5);

LCD_RS=0; // - - 指令

LCD_RW=0; // - - 写入

LCD_DB=dat;

LCD_delay_10us(5);

LCD_E=1; // - - 允许

LCD_delay_10us(5);

LCD_E=0;

}

// - - 向LCD1602写数据

void LCD_write_data(uchar dat)

{

LCD_delay_10us(5);

LCD_RS=1;// - - 数据

LCD_RW=0;// - - 写入

LCD_DB=dat;

LCD_delay_10us(5);

LCD_E=1;// - - 允许

LCD_delay_10us(5);

LCD_E=0;

}

// - - 设置显示位置

void LCD_set_xy(uchar x,uchar y)

{

uchar address;

if(y==1)

{

address=0x80+x; // - - 第一行位置

} else {

address=0xc0+x; // - - 第二行位置

}

LCD_delay_10us(5);

LCD_write_command(address);

}

// - - 显示一个字符函数

void LCD_disp_char(uchar x,uchar y,uchar dat) // - - LCD_disp_char(0,1,0x38); // - - 显示8

{

LCD_set_xy(x,y);

LCD_delay_10us(5);

LCD_write_data(dat);

}

// - - 显示一个字符串函数

void LCD_disp_string(uchar x,uchar y,uchar *s)

{

LCD_set_xy(x,y);

LCD_delay_10us(5);

while(*s!=‘\0’)

{

LCD_write_data(*s);

s++;

}

}

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

/*******检查忙函数*************

void LCD_check_busy() //实践证明,在我的LCD1602上,检查忙指令通过率极低,以

{ //至于不能正常使用LCD。因此我没有再用检查忙函数。而使

do //用了延时的方法,延时还是非常好用的。我试了一下,用

{ LCD_E=0; //for循环作延时,普通指令只要1次循就可完成。清屏指令

LCD_RS=0; //要用200次循环便能完成。

LCD_RW=1;

LCD_DB=0xff;

LCD_E=1;

}while(LCD_DB^7==1);

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

void LCD_delay_10us(uint n) // - - 10微秒的延时子程序

{

uint i,j;

for(i=n;i》0;i--)

for(j=2;j》0;j--);

}

void LCD_delay_50us(uint n) // - - 50微秒的延时子程序

{

uint i,j;

for(i=n;i》0;i--)

for(j=22;j》0;j--);

}

LCD1602显示程序流程图及句解

让LCD1602显示字符前要输入字符所在的地址,这也是每显示一个字符地址要加一的原因,在下面的一段代码里你会明白怎么设置地址,怎么让地址自动加一,怎么清屏,怎么显示字符,希望你能看懂哦

sbit LCD_E=P2^0; //lcd1602控制置位

sbit LCD_RW=P2^1; //lcd1602控制置位

sbit LCD_RS=P2^2; //lcd1602控制置位

void LCD_command(unsigned char com)

{

LCD_E=0;

LCD_RW=0;

LCD_RS=0;

P1=com;

delay_us(100);

LCD_E=1;

delay_us(100);

LCD_E=0;

}

void LCD_date(unsigned char dat)

{

LCD_E=0;

LCD_RW=0;

LCD_RS=1;

P1=dat;

delay_us(100);

LCD_E=1;

delay_us(100);

LCD_E=0;

}

LCD_command(0x38); //设置LCD为16*2显示,5*7点阵,8位数据接口

LCD_command(0x0c); //设置LCD显示开,光标显示关

LCD_command(0x06); //写一个数据后地址加1

LCD_command(0x01); //显示清屏

LCD_command(0x80); //数据指针设置为第一行第一位

LCD_date(‘pi’);

LCD_date(‘l’);

LCD_date(‘e’);

LCD_date(‘a’);

LCD_date(‘s’);

LCD_date(‘e’);

LCD_date(‘ ’);

LCD_date(‘c’);

LCD_date(‘h’);

LCD_date(‘e’);

LCD_date(‘c’);

LCD_date(‘k’);

LCD_date(‘ ’);

LCD_date(‘t’);

LCD_date(‘h’);

LCD_date(‘e’);

LCD_command(0x80+0x40); //LCD地址指针指向第二行第一个位置

LCD_date(‘c’);

LCD_date(‘o’);

LCD_date(‘n’);

LCD_date(‘n’);

LCD_date(‘e’);

LCD_date(‘c’);

LCD_date(‘t’);

LCD_date(‘i’);

LCD_date(‘o’);

LCD_date(‘n’);

LCD_date(‘!’);

LCD_date(‘!’);

关键词: LCD1602 LCD1602显示程序

相关新闻

LCD1602程序代码及显示流程图
2022-01-21 16:29:59
"怕上火,贴王老吉" 王老吉红魔联名散热背夹曝光
2022-01-21 15:09:48
只抽不卖哦 Xbox推“萌虎迎新版”Xbox Series S主机套装
2022-01-21 15:09:37
吉利要做手机了!拟收购魅族手机 目前交易正在进行中
2022-01-21 15:09:28
三星2022 QLED和“自由家”Lifestyle电视获全球顶级机构认证
2022-01-21 15:09:19
下月发布?王腾爆料小米12 Ultra
2022-01-21 15:09:08
《恭喜恭喜》限时免费体验 国行版《舞力全开》上线5首中文歌曲
2022-01-21 15:08:56
首款新一代骁龙8屏下手机亮相微博 前置6000万像素镜头
2022-01-21 15:08:43
魅族新品上市 热门联名产品49元起
2022-01-21 15:08:29
Redmi K50系列四款机型配置曝光 中配搭载天玑8000/骁龙870
2022-01-21 15:08:15
3.5s内加速到50km/h 雅马哈发布EMF纯电动踏板车
2022-01-21 15:08:02
激光打印机工作原理—原来是酱紫的啊!!
2022-01-21 15:00:35
软交换技术及其应用
2022-01-21 15:00:27
电压跟随器电路- -电路中也有跟屁虫?!
2022-01-21 15:00:20
VSAT卫星通信系统详解
2022-01-21 15:00:13
继电器符号
2022-01-21 15:00:06
光电编码器工作原理
2022-01-21 14:59:59
更名「东原致新」之后,它将玩出哪些「新」花样?
2022-01-21 13:43:14
骁龙8游戏手机将至!黑鲨5系列手机官宣 即将硬核登场
2022-01-21 13:38:27
Redmi Note 11将登陆欧洲:换芯骁龙680
2022-01-21 13:38:17
距发布仅隔6周 watchOS 8.4 RC更新开始推送
2022-01-21 13:38:06
4个免费的物联网构建平台
2022-01-21 13:30:32
什么是三相全波整流电路,三相全波整流电路的工作原理是什么,三相全波整流电路电路图
2022-01-21 13:30:25
555定时器引脚图及功能表
2022-01-21 13:30:18
宽带直流放大器
2022-01-21 13:30:10
FF将通过并购在纳斯达克上市
2022-01-21 13:30:03
15.3 RC发布!苹果:快升级iOS 15 原因很重要
2022-01-21 12:21:35
Intel将推出傲腾P5810X:可惜没有PCIe 5.0
2022-01-21 12:21:28
韩国计划到2026年成为全球第五大元宇宙市场
2022-01-21 12:21:19
阿斯麦去年四季度营收49.86亿欧元 全年超过180亿欧元
2022-01-21 12:21:11
Apple Music成为全球第二大音乐流媒体服务
2022-01-21 12:21:03
更爽的后期 抖音推出PC版客户端
2022-01-21 12:13:29
iPad Pro劲敌!三星Galaxy Tab S8 Ultra售价偷跑
2022-01-21 12:13:21
微软收购动视暴雪后索尼首次发声:玩归玩闹归闹 别拿独占开玩笑
2022-01-21 12:13:13
DIY不用自己动手了?韩国科技公司推出机器人手臂产品
2022-01-21 12:13:05
Redmi K50系列配置爆料:天玑9000安排
2022-01-21 12:12:56
玩家脑洞大开 微软收购动视暴雪梗图大赏
2022-01-21 12:12:48
Meta将进军中国元宇宙市场 已经在招大中华区经理
2022-01-21 12:12:39
TikTok用户对旨在帮助集中注意力的游戏玩家口香糖评价不一
2022-01-21 12:12:38
亚马逊意外泄露三星新平板全貌 堪称iPad Pro劲敌
2022-01-21 12:12:31
Pinpin简史:苹果的第一台游戏主机
2022-01-21 12:12:30
【手慢无】1499元买30英寸2K分辨率200HZ高刷显示器
2022-01-21 12:12:23
埃隆·马斯克回应抨击特斯拉全自动驾驶软件的广告
2022-01-21 12:12:22
1分钟输入400字 讯飞输入法宣推游戏语音键盘
2022-01-21 12:12:14
摩根士丹利:苹果圣诞季营收将再创新高 超出华尔街预期
2022-01-21 12:12:14
三菱电机与创企Cartken合作 进入机器人送货领域
2022-01-21 12:12:06
陕西帮客小伙被封管控区 当志愿者跨半城给老人买药
2022-01-21 12:12:05
Google Workplace现在网页版Google Chat中提供更强大的编辑体验
2022-01-21 12:11:59
奎爷降临!华硕显卡实测《战神4》PC版
2022-01-21 12:11:56
发改委:逐步取消各地新能源车购买限制
2022-01-21 12:11:51
抖音一哥罗永浩 带货50亿 上演“甄嬛传”
2022-01-21 12:11:47
iOS 15.3 RC发布 苹果给出了一个尽快升级iOS 15的理由
2022-01-21 12:11:43
1999元起!曝Redmi K50系列有骁龙870版
2022-01-21 12:11:38
AMD Zen4/Zen 4C处理器现身Linux:最大128核 性能增超25%
2022-01-21 12:11:35
将于2月9日发布 爆料称三星Tab S8系列平板在路上
2022-01-21 12:11:30
川航回应航班挂出7700紧急代码:途中出现疑似发动机故障信息
2022-01-21 12:11:27
畅享高画质游戏 蓝宝石RX 6500 XT 白金试用
2022-01-21 12:11:20
最强SSD即将升级 Intel傲腾P5810X首次曝光
2022-01-21 12:11:19
首批通过净水机新水效标准产品发布
2022-01-21 12:11:11
Metalenz PolarEyes偏振相机技术正加速投入市场
2022-01-21 12:11:10
苹果2022贺岁短片《卷土重来》 iPhone 13 Pro将农村变火星
2022-01-21 12:11:02
RTX 3050比GTX 1650强无限倍!英伟达营销宣传让人无语
2022-01-21 12:11:02
足型机器人的又一新技能:ANYmal正在学习爬山
2022-01-21 12:10:54
【手慢无】酷睿i5-12490F原价放货 1599元
2022-01-21 12:10:53
“元宇宙”混沌未开,四大怪现象提前“搅局”
2022-01-21 12:10:46
酣战三A大作 迪兰6500XT X战将开箱
2022-01-21 12:10:44
修不好的“电动爹”:奔驰EQC被曝冷却液泄漏烧毁电机 68位车主发联合声明
2022-01-21 12:10:38
多核赶上5800X!酷睿i5-12400成功在B660主板超频
2022-01-21 12:10:34
1899元的RTX 3050显卡即将开卖 NVIDIA营销宣传引吐槽
2022-01-21 12:10:30
海信新风空调用实力证明地位 再次领跑行业赛道
2022-01-21 12:10:25
拍出浓浓年味 华为nova9系列新春福利最高优惠100元
2022-01-21 12:10:22
美的服务携手京东电器蓝盾计划 打造安全健康入户服务
2022-01-21 12:10:16
微软为Excel for Web带来“条件格式设置”新体验
2022-01-21 12:10:13
1899元的RTX 3050显卡即将开售!能原价买到算我输
2022-01-21 12:10:06
美COVID检测公司因涉嫌给人们提供虚假结果而被起诉
2022-01-21 12:10:05
美国互动健身平台Peloton暂停部分设备生产 股价暴跌23.9%
2022-01-21 12:09:56
谷歌正开发新AR头盔 预最快于2024年上市
2022-01-21 12:09:56
美国税局今夏将开始在其网站中接入第三方面部识别系统
2022-01-21 12:09:48
谷歌健康:联手欧莱雅 提供服务
2022-01-21 12:09:47
FAA预估78%的商业航班可在5G C-band覆盖的机场降落
2022-01-21 12:09:39
AMD Zen4/Zen 4C处理器现身Linux:最大128核
2022-01-21 12:09:37
S+Note两大旗舰合二为一 高管预告三星机皇S22 Ultra:下月发
2022-01-21 12:09:30
搭载骁龙 8 Gen 1处理器 黑鲨5手机即将发布
2022-01-21 12:09:26
美IIHS将把高级驾驶辅助技术纳入新评级系统中:“目前没一个符合标准”
2022-01-21 12:09:20
搭载高通骁龙 8 Gen 1 黑鲨 5系手机将硬核来袭
2022-01-21 12:09:15
ARM推出首款Morello原型测试板 基于CHERI安全架构扩展
2022-01-21 12:09:10
后背全是摄像头 小米12 Ultra设计曝光
2022-01-21 12:09:03
自96版本开始 网页应用可在Edge中使用Protocol Handlers
2022-01-21 12:08:58
参议院已批准 苹果iPhone将在美国开放侧载
2022-01-21 12:08:52
iOS 15.3/macOS 12.2已修复Safari泄露浏览历史漏洞
2022-01-21 12:08:48
居中打孔直角中框 小米或开启机海模式
2022-01-21 12:08:40
TikTok正在考虑让其创作者收取订阅费用
2022-01-21 12:08:37
爱迪德与江南天安合作推出全平台数字版权管理(DRM)解决方案
2022-01-21 12:08:29
硬币另一面:苹果AirTag正成为秘密追踪Android用户的完美工具
2022-01-21 12:08:25
AMD Zen4/Zen 4C处理器现身Linux:最大128核
2022-01-21 12:08:15
被李想炮轰上热搜的“团车造车”员工全员待岗 只发2000最低工资
2022-01-21 12:08:13
电动车、燃油车谁更容易自燃起火?统计结果与你想象的不同
2022-01-21 12:08:02
微软Xbox萌虎迎新版发布:这也太可爱了
2022-01-21 12:08:02
9种超宽带天线的设计方案
2022-01-21 12:00:22
索尼Tablet S全面拆解
2022-01-21 12:00:15

热门文章

热点专题