LabVIEW控制Arduino驱动1602液晶显示屏(基础篇—10)

简介: 本篇博文将利用LIAT中的LCD显示函数库,驱动1602液晶显示屏。

本篇博文将利用LIAT中的LCD显示函数库,驱动1602液晶显示屏。


1、静态显示


1.1、实验目的

利用LIAT中的LCD显示函数库,通过LabVIEW软件获取电脑上的时钟并传输给Arduino Uno控制板,将时间数据显示在LCD1602液晶显示屏上,实现一个液晶时钟。


1.2、实验环境

将1602液晶显示屏的电源线VDD和VSS分别接至Arduino Uno控制板上的5V和GND引脚上,背光电源线A通过限流电阻接至+5V,K直接接至地端,对比度调节V0通过器实现分压,读写控制信号RW直接接至地端,RS、Enable信号线接至Arduino Uno控制板数字引脚D12和D11上,液晶数据接口D4、D5、D6和D7分别接至Arduino Uno控制板数字引脚D5、D4、D3、D2,如下图所示:


3a5bccbbc8bc46dfa8dbfc3a54f61d44.png


1.3、程序设计

本例修改自LabVIEW Interface for Arduino函数库中的示例,位于函数选板“函数”→"Arduino""Example"→"LCD Hello World 4-bit Example",修改后的LabVIEW前面板如下图所示:


a263f07605fa451d9e503b9608635f98.png


程序框图如下图所示:


b42adc3d7c594d729c4bc7f51553f1b7.png


LabVIEW程序首先通过设置的串口号与Arduino Uno控制板建立连接,然后调用液晶函数库中的LCD Configure 4-bit和LCD lnit以配置液晶的管脚连接并将液晶初始化为16×2,接着进入While循环中通过"获取日期/时间字符串"节点获得当前的时间日期并调用LCD Set Cursor Position和LCD Print实现在第一行显示日期和在第二行显示时间,再通过调用LCD Display Power实现液晶的闪烁。最后,断开与Arduino Uno控制板的连接。


“获取日期/时间字符串"节点位于“函数”→“编程"→“定时"→“获取日期/时间字符串”。


1.4、实验演示

点击运行按钮,LabVIEW程序开始执行,可以看到1602液晶屏幕上第一行显示当前的日期,第二行显示当前的时间,包括时分秒。同时,液晶以1秒为周期进行周期性闪烁。


资源下载请参见:LabVIEW控制Arduino驱动1602液晶显示屏-单片机文档类资源-CSDN下载

https://download.csdn.net/download/m0_38106923/85461836


2、动态显示


2.1、实验目的

利用LIAT中的LCD显示函数库,通过LabVIEW软件控制Arduino Uno控制板,将特定的字符串数据显示在LCD1602液晶显示屏上,并实现左右滚动的效果。


2.2、实验环境

本节实验的硬件连接与2.1液晶时钟的硬件连接相同,请参见液晶时钟的硬件连接。


2.3、程序设计

LabVIEW前面板如下图所示:


b72fef0cc10d4770a4a8b9b7e63cc44b.png


程序框图如下图所示:


b8600654e20547f3aa6290ae95abc86c.png


LabVIEW程序首先通过设置的串口号与Arduino Uno控制板建立连接,然后调用液晶函数库中的LCD Configure 4-bit和LCD Ilnit以配置液晶的管脚连接并将液晶初始化为16×2,接着调用LCD Set Cursor Position和LCD Print实现在第一行显示"Arduino"和在第二行显示"LabVIEW",进入While循环,通过调用LCD Scroll Display实现向左和向右的滚动显示。最后,断开与Arduino Uno控制板的连接。


2.4、实验演示

点击运行按钮,LabVIEW程序开始执行,可以看到1602液晶屏幕上第一行显示字符串"Arduino",第二行显示字符串"LabVIEW",同时两个字符串都以1秒间隔向右边移动,当字符串移到最右边时便会调整移动方向而向左边移动,不断循环。


资源下载请参见:LabVIEW控制Arduino驱动1602液晶显示屏-单片机文档类资源-CSDN下载

https://download.csdn.net/download/m0_38106923/85461836


相关文章
|
Python
列表推导式和循环语句有什么区别
【9月更文挑战第5天】列表推导式和循环语句有什么区别
247 14
|
数据安全/隐私保护 Python
Python中的MD5加密“解密”
Python中的MD5加密“解密”
520 0
|
前端开发
【UI】 elementui的dialog弹窗打开时CSS的BUG | 滚动条消失bug
【UI】 elementui的dialog弹窗打开时CSS的BUG | 滚动条消失bug
705 0
|
域名解析 安全 Java
SpringBoot启动的时候初始化的线程池默认配置tomcat
SpringBoot启动的时候初始化的线程池默认配置tomcat
857 1
|
测试技术
面试题8: 如何确定测试需求的关键场景和细节?
面试题8: 如何确定测试需求的关键场景和细节?
247 2
|
存储 并行计算 计算机视觉
Fast-BEV的CUDA落地 | 5.9ms即可实现环视BEV 3D检测落地!代码开源
Fast-BEV的CUDA落地 | 5.9ms即可实现环视BEV 3D检测落地!代码开源
1253 0
|
数据采集 监控 数据可视化
包装印刷行业云MES解决方案
印刷行业企业在生产过程中一旦出现错误,往往会被各个制造环节进行重复放大,最终产生制造缺陷,这一直是印刷行业持续面临的问题。而通过MES系统,将可变通的地方固定化,避免过多的人工生产干预,可以有效的避免或减少错误产生。
309 0
|
算法 搜索推荐 C++
<<算法很美>>——(三)十大排序算法(下)
<<算法很美>>——(三)十大排序算法(下)
<<算法很美>>——(三)十大排序算法(下)
|
安全 5G 网络性能优化
【5G NR】无线承载SRB和DRB
无线承载RB(Radio Bearer)是基站为UE分配不同层协议实体及配置的总称,包括PDCP协议实体、RLC协议实体、MAC协议实体和PHY分配的一系列资源等。RB是无线接口连接eNodeB和UE的通道(包括PHY、MAC、RLC和PDCP),任何在无线接口上传输的数据都要经过RB。 无线承载有两种,一种是信令承载称为SRB,一种是数据承载称为DRB,两者各有分工,分层保证了无线传输的有效性。
3477 0

热门文章

最新文章