lcd开机流程图_LCD1602程序代码及显示流程图.doc[通俗易懂]

lcd开机流程图_LCD1602程序代码及显示流程图.doc[通俗易懂]LCD1602程序代码及显示流程图LCD1602程序代码及显示流程图lcd1602显示程序代码前些天弄了最小系统板后就想着学习1602的显示程序,可惜坛子里的或网上的,都没有简单的1602显示程序,无柰在网上下载了一段经过反复修改测试,终于有了下面一段代码://———————————-…

大家好,又见面了,我是你们的朋友全栈君。

LCD1602程序代码及显示流程图

LCD1602程序代码及显示流程图

lcd1602显示程序代码

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

// – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

// – – 初始化接口

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

sbit LCD_RS=P2 ; // – – p2.0 = RS

sbit LCD_RW=P2; // – – p2.1 = RW

sbit LCD_E=P2; // – – 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行,5×7

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;// – –

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/160134.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 怎么在mac上录屏_录屏工具

    怎么在mac上录屏_录屏工具您可以为整个屏幕或屏幕上的选定部分录制视频。1、使用“截屏”工具栏要查看“截屏”工具栏,请同时按下以下三个按键:Shift、Command和5。您将看到用于录制整个屏幕、录制屏幕的选定部分或拍摄屏幕静态图像的屏幕控制项:录制整个屏幕点按屏幕控制项中的。指针会变为相机。 点按任意屏幕以开始录制屏幕,或点按屏幕控制项中的“录制”。 要停止录制,请点按菜单栏中的。或者,按下Command-Control-Esc(Escape)。 使用缩略图进行修剪、共享、存储或其他操作…

    2022年9月24日
    2
  • camera接口—MIPI CSI-2接口、DVP接口和FPD-Link III LVDS、GMSL等接口对比

    camera接口—MIPI CSI-2接口、DVP接口和FPD-Link III LVDS、GMSL等接口对比 接口类型 信号线 极限速率 最大速率 抗干扰能力 适用摄像头像素   PCBlaypuit MIPICSI-2 串口 CLKP/N、DATAP/N 最大支持4-lane 一般2-lane可以搞定   Gbps 低压差分信号,产生的干扰小,抗干扰能力也强 支持800W以上 …

    2022年4月29日
    141
  • springboot修改内置tomcat版本号_springboot整合消息队列

    springboot修改内置tomcat版本号_springboot整合消息队列1、解析SpringBoot父级依赖?123456<parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>1.5.6.RELEASE</ver…

    2022年8月30日
    3
  • &与&&的区别

    &与&&的区别

    2021年10月2日
    35
  • 红色故障码大全_图论的最短路问题

    红色故障码大全_图论的最短路问题原题链接战争中保持各个城市间的连通性非常重要。本题要求你编写一个报警程序,当失去一个城市导致国家被分裂为多个无法连通的区域时,就发出红色警报。注意:若该国本来就不完全连通,是分裂的k个区域,而失去一个城市并不改变其他城市之间的连通性,则不要发出警报。输入格式:输入在第一行给出两个整数N(0 < N ≤ 500)和M(≤ 5000),分别为城市个数(于是默认城市从0到N-1编号)和连接两城市的通路条数。随后M行,每行给出一条通路所连接的两个城市的编号,其间以1个空格分隔。在城市信息之后给出被攻占的

    2022年8月8日
    1
  • futureTask使用[通俗易懂]

    futureTask使用[通俗易懂]List<FutureTask>taskList=newArrayList<>();if(leaderList!=null&&!leaderList.isEmpty()){leaderList.forEach(userId->{…

    2022年6月15日
    52

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号