ImageVerifierCode 换一换
格式:DOC , 页数:6 ,大小:300KB ,
资源ID:6426193      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-6426193.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于LABVIEW串口通讯的LED控制.doc)为本站会员(tkhy51908)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

基于LABVIEW串口通讯的LED控制.doc

1、基于串口通讯的 LED 控制前言:LABVIEW 的宣言”Software is instrument!” 如果我们使用 LABVIEW 只停留在软件设计上,那就不能完全符合这个宣言的含义!其实 NI 为 LABVIEW 提供了一个强大的标准接口驱动应用NI-VISA。(http:/ LABVIEW 的基础上再安装这个驱动,那你就可以设计一些连接硬件的实用型 VI了!1.功能说明:前面板上有 8 个圆形指示灯与 8 个 LED 按键一一对应同时与单片机模块上的 8 个 LED灯也是一一对应的关系。A.VISA 资源名称通过下拉箭头选择 LABVIEW 需要连接的接口,本设计选择 COM1 即串

2、口 1。B.当按下其中一个 LED 按键,对应的圆形指示灯亮三秒自动熄灭,同时单片机模块上对应的 LED 灯也是亮三秒自动熄灭。C.当按下“流水灯”确定按钮,单片机上的 8 个 LED 灯按流水灯形式亮一次。D.当按下“全灯闪烁 ”确定按钮,单片机上 8 个 LED 灯一齐闪烁三次。E.当按下停止按钮,程序退出。2.硬件连接本设计通过“PL2303 的 USB 转串口线”把“STC89C52RC 单片机小系统模块” (附带 8个 LED 灯)的串口与笔记本电脑的“USB 口”相连!3.软件设计A.C51 程序部分设计使用 KEIL 软件编写下位机程序,即写入到单片机的程序。程序代码如下:#in

3、clude typedef unsigned char uchar;typedef unsigned int uint;/*IO 端口定义*sbit LED1=P20;sbit LED2=P21;sbit LED3=P22;sbit LED4=P23;sbit LED5=P24;sbit LED6=P25;sbit LED7=P26;sbit LED8=P27;uchar RX_Byte=0;/*串口初始化*void StartUART( void ) /波特率 4800SCON = 0x50;TMOD = 0x20;TH1 = 0xFA;TL1 = 0xFA;PCON = 0x00;TR1

4、= 1;/*通过串口将数据发送给 PC 端*void TX_S_Byte(uchar TX_Byte)SBUF = TX_Byte; while( TI = 0 ); /查询法TI = 0; /*通过串口接收 PC 端的数据*void RX_S_Byte(void)while( RI = 0 ); /查询法RX_Byte = SBUF ;RI = 0; /*ms 延时函数*void Delay(uint x)uint i,j;for(i=0;ix;i+)for(j=0;j110;j+);/*跑马灯函数*void loop_led(void)uchar i,j;for(i=0;i1;i+)P2=

5、0xfe;Delay(500);for(j=0;j7;j+)P2=1;P2|=0x01;Delay(500);/*全灯闪烁*void shan(void)uchar i;for(i=0;i3;i+)P2=0;Delay(500);P2=0xff;Delay(500);/*主函数*void main(void) uchar TX_data=0x0f;/定义发送数据StartUART();/串口初始化P2=0xff;/8 个 LED 灯初始化,全灭Delay(100);/延时 100mswhile(1)/主循环RX_S_Byte();/接收串口数据switch(RX_Byte)/匹配数据,执行对应

6、分支操作case 0x01: LED1=0;Delay(3000);LED1=1;break;/LED1 灯亮 3S 熄灭case 0x02: LED2=0;Delay(3000);LED2=1;break; /LED2 灯亮 3S 熄灭case 0x03: LED3=0;Delay(3000);LED3=1;break; /LED3 灯亮 3S 熄灭case 0x04: LED4=0;Delay(3000);LED4=1;break; /LED4 灯亮 3S 熄灭case 0x05: LED5=0;Delay(3000);LED5=1;break; /LED5 灯亮 3S 熄灭case 0x

7、06: LED6=0;Delay(3000);LED6=1;break; /LED6 灯亮 3S 熄灭case 0x07: LED7=0;Delay(3000);LED7=1;break; /LED7 灯亮 3S 熄灭case 0x08: LED8=0;Delay(3000);LED8=1;break; /LED8 灯亮 3S 熄灭case 0x09: loop_led();P2=0xff;break;/8 个 LED 灯执行流水灯一次后全灭case 0x0a: shan();break;/8 个 LED 灯闪烁 3 次default: break;/乱码跳出B.LABVIEW 程序部分设计1

8、.在前面板添加以下几个控件:8 个圆形指示灯、10 个确定按钮( 8 个为 LED 按钮,2个为功能启动按钮) 、VISA 资源名称(新式 I/OVISA 资源名称) 、停止按钮2.切换到程序框图窗口,先在上面添加以下两个函数:串口配置函数 和串口关闭函数 。其中串口配置函数中有几个配置端,分别需要配置串口的波特率、数据位数、奇偶校验位数、停止位数。注:需在函数连线端子右键菜单创建常量,此方法比自己创建常量方便且可靠性更强。然后按下图连接,那么,你的 VI 串口配置就完成了。注:“串口关闭函数”作用是退出主循环后关闭串口!3.添加一个 While 循环结构,作为主循环。把停止按钮连接到循环停止

9、端,为真则退出循环。4.在循环结构内添加一个条件结构,在内添加一些函数(如下图) ,作为事件 1 即前面板上按下对应一个 LED 的按键,前面板和单片机模块上的 LED 灯亮 3S 自动熄灭。其中涉及到一个“串口写入”函数(仪器 IO串口VISA 配置串口串口写入) 。5.其它 9 个事件与事件 1 并列(无先后顺序,故不用事件结构,但用着也无妨)且类同,不再具体赘述,整个程序框图连接见下图。注:1.本设计涉及到的串口部分函数都在“仪器 IO串口VISA 配置串口”子版块中可以找到。2.使用串口等其它标注接口做 VI 时,必须先安装 NI-VISA 驱动,链接上面已给出。3.单片机模块必须使用 11.0592 的晶振(为产生标准波特率,防止通讯出错) 。

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报