Arduino与LabVIEW串口控制LED亮灭
2014-03-079182
AI 快速预览详细
本文介绍了如何在Proteus仿真环境中实现Arduino UNO与LabVIEW的串口通讯,通过RS-232串口控制LED灯的开关。首先,详细讲解了ATmega328P单片机参数设置和串口参数配置,强调波特率必须相同才能完成通讯。接着,提供了Arduino源代码,展示了如何接收、测试和执行串口命令。最后,总结了该方法对数据采集和传输的应用价值。
|
本文将介绍使用proteus仿真环境,实现Arduino UNO与LabVIEW的串口通讯,LabVIEW通过RS-232串口控制Arduino UNO的LED灯,打开和关闭LED灯。 1、Arduino UNO部分 在protues仿真仿真环境中,使用ATmega328P单片机实现基于Protues的Arduino UNO的开发板,如下图1所示。 图1 基于Protues的Arduino UNO的开发板 此处,还需要对ATmega328P的参数进行设置,初始的设置如图2所示。需要更改的地方已在图中用红色框标注出来了。更改之后的设置如图3所示,其中HEX文件与你自己所存放的地方一致即可。图2 ATmega328P单片机更改前的设置 图3 ATmega328P单片机更改后的设置 另外,要实现与LabVIEW的串口通讯还需要对串口的参数进行设置,串口更改前的设置如图4所示。需要更改的地方已在图中用红色框标注出来了。更改之后的设置如图5所示,其中波特率与上位机的波特率相同即可。注意:波特率一定要相同,否则不能完成通讯。 图4 串口更改前的设初始置 图5 串口更改后的设置 Arduino的源代码如下所示:
复制代码 2、LabVIEW部分 LabVIEW上位机部分担任主机,Arduino UNO作为下位机接收上位机发送的命令,并执行命令。LabVIEW只需要完成命令的发送,此处仅使用了LabVIEW的串口数据发送功能。LabVIEW的串口设置见。 3、结束语 利用虚拟串口技术,实现了Protues仿真环境下的Arduino UNO与LabVIEW串口通讯,并自定义了通讯协议,以保证通讯的可靠性,对LabVIEW与Arduino的串口通讯应用于数据采集、数据传输有一定的借鉴价值。 http://player.youku.com/player.php/sid/XNTU0Nzk4Nzk2/v.swf |




