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

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

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 联手中信银行 物品互赠平台宣布“不卖只送”「建议收藏」

    联手中信银行 物品互赠平台宣布“不卖只送”「建议收藏」联手中信银行 物品互赠平台宣布“不卖只送”

  • Python中安装requests库总是报错的解决方法

    今晚学爬虫,要安装requests库。文章上说,直接在终端窗口执行如下命令就行。pipinstallrequests然而我还是失败了。在电脑前坐了一个小时,找过很多解决方法的博客,都无济于事。终于看到了有位大佬写的博客,试了下代码。一下就成功了!现分享如下:pipinstallrequests-ihttp://pypi.douban.com/simple–trust…

  • npn饱和截止放大怎么判断_二极管饱和状态

    npn饱和截止放大怎么判断_二极管饱和状态幼儿园水平理解三极管截止、放大和饱和状态!书上看不懂,听课听不懂的过来!绕不开的三极管结构以NPN为例,晶体三极管的结构,这是很多人不想看的,但是确实是非常重要的!不看结构是理解不了工作原理的!(这样记忆:N是negative,负,代表多子为电子;P是positive,正,代表多子为空穴)注意观察三极管的结构,有助于理解工作时的状态。两张图结合起来看,略作解释:1.图中空心为空穴带正…

  • 手写代码实现卷积操作(Python)

    手写代码实现卷积操作(Python)在卷积神经网络中,才用卷积技术实现对图片的降噪和特征提取。一般我们构建卷积神经网络都是使用成熟的框架,今天我就来自己实现一下卷积,并使用不同的卷积核来看看效果。卷积操作的原理可以由下图表示:一个3*3的卷积核,以滑动窗口的形式在图片上滑动,每滑动一次,就计算窗口中的数据的加权之和,权值就是卷积核的数据。通过这个过程将图片进行转化。准备图片数据:使用P…

  • pycharm配置tensorflow环境_python3.6对应的tensorflow版本

    pycharm配置tensorflow环境_python3.6对应的tensorflow版本说明:如果只是为了入门学习TensorFlow框架,个人觉得,没必要上来就整GPU版本(主要是那个太复杂,安装真让人劝退),所以本文记录的是直接在pycharm里安装tensorflow,并运行demo。安装3.5或3.6版本的python,3.7及以上的版本貌似还不支持TensorFlow,博主用的是3.6.8版本,特别注意python还要求得是64位的,否则后面安装TensorFlow会…

发表回复

您的电子邮箱地址不会被公开。

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