PC软件控制的IO模块

上传人:大米 文档编号:489225530 上传时间:2023-01-01 格式:DOC 页数:14 大小:98.50KB
返回 下载 相关 举报
PC软件控制的IO模块_第1页
第1页 / 共14页
PC软件控制的IO模块_第2页
第2页 / 共14页
PC软件控制的IO模块_第3页
第3页 / 共14页
PC软件控制的IO模块_第4页
第4页 / 共14页
PC软件控制的IO模块_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《PC软件控制的IO模块》由会员分享,可在线阅读,更多相关《PC软件控制的IO模块(14页珍藏版)》请在金锄头文库上搜索。

1、实验总成绩: 装 订 线报告份数: 西安邮电大学 通信与信息工程学院 课程设计报告专业班级: 电科10 学生姓名: # 学号(班内序号): 03102(01号) 年 4 月 23 日一.设计内容与规定实现一种可以通过P软件控制的IO模块。I模块的控制部件采用继电器,可以由微解决器(MCU)控制继电器的打开、吸合。IO模块通过RS232串口和PC机连接,P机上运营上位机控制软件,提供控制IO模块继电器和显示IO模块继电器闭合状态的操作界面。上位机和IO模块间的通信合同可以自己定义,但规定必须有一定的保护校验等保证通信可靠性的措施。系统连接构造如图1所示。具体规定:1、 IO模块规定实现4路继电器

2、控制。完毕IO模块的原理图设计、电路搭建、测试。2、 设计IO模块和PC机软件间的通信合同。3、 设计上位机软件界面,并用+Buile实现软件界面和RS22串口通信控制。 提交课程设计报告。 图 系统连接图二.设计过程与原理1原理图设计运用Protus软件设计仿真电路,以T851单片机为MCU,在最小系统的基本上通过IO口与继电器电路相连。电路原理图如如图2所示。2. 单片机代码运用Keil编写控制单片机的C51代码。3. 运用ote仿真运用虚拟端口软件添加两个虚拟端口CO1,C2,将il编写的代码导入到原理图中的AT89C中,将RS23串口中端口改为M2,打开原理图仿真。运营串口调试助手将端

3、口设为COM1,即可发送数据仿真。4. 运用C+Buier设计上位机运用Miosoft ComContro 6.0 串口控件实现与单片机的通信。软件界面如图3所示。上位机重要功能如下:1. 可以选择端口,波特率,校验位,数据位,停止位以及打开关闭串口。2. 可以输入数据发送给单片机,控制四个继电器打开关闭ED灯。3. 可以通过按钮控制四个LD的打开与关闭。图2 电路原理图图3 程序界面图三实习心得 这是一次纯软件的仿真实验,为期两周并不算长,并且还要学习不少新知识,总体来说算的上是一次满充实的的实验。通过本次实验,我充足体会到软件仿真的便利。本次实验第一周重要是查资料、学习软件知识,如学会用P

4、oteus建元件库、画电路原理图,如何用Keil uViion写单片机程序,用C+Bul编写上位机等。通过网上搜索,查找了有关串口通信的原理知识和上位机的有关内容。本次实验第二周重要是上位机的编写与仿真,C+ ildr具有迅速的可视化开发环境:只要简朴地把控件拖到窗体上,定义一下它的属性,设立一下它的外观,就可以迅速地建立应用程序界面;C+ ur内置了00多种完全封装了Wdws公用特性且具有完全可扩展性(涉及全面支持AcivX控件)的可重用控件;+ Builr具有一种专业+开发环境所能提供的所有功能:迅速、高效、灵活的编译器优化,逐渐连接,PU透视,命令行工具等。它实现了可视化的编程环境和功能

5、强大的编程语言(C+)的完美结合。掌握C+Buldr对我们后来的学习有非常大的协助。il代码:#ncde #cd stdioh#defin uch unsgnedcr#din itusie ibitL= 10;it KY P16;bit P0 = 00;it 01=P;sitP0 =P02;sit P03 P;voidmain()hrkey= ; SONx50; TMOD | 0x0; TH1 = 0xF; R 1; T 1; P00 = ;P01 = 1;02 = 1;P03 = 1; whil(1) LD =0;ey _gekey();swth(e)case0:P = ;brek;case

6、 1:P01 = ;break;case :P0 ;brak;cae3:03=0;brek;as a:P0 = ;reak;as:P1= 1;rea;ase c:P02 = ;bea;case :P3= 1;beak;C+uilder代码:/-#icue cl.h#prgmahdrstopinclud Unit1.h#iclde #nludemth.h/-pagma ackage(ma_int)#palnMComLb_OCX#rgmareoure .Tom *Fom;/-_atclTFo:TForm(TCoonnt* nr) : TForm(Or)iSe_Ut(void) tring Uars

7、ettngs; if(Form1-MSCommPorOpen)Form1-MSComm1-PortOenFlse; artsettingsUart_Bo+,; artsttigs+=Uart_Cek.ubSring(1,)+,; Uartsetins+=ar_Daa+,; Uartsttigs+=Urttp; ty Fom1-MSComm-SettingsUatsettigs; atch(xcption&) Application-MessageBox(设立不对的!请检查.,系统错误,MB_K); Fr1-Sm-ComPor=UrtPort; tr orm-SCmm1-PortOpeTrue;

8、 catc(Exptn&excetn) Uat_Open=fal; Aplictio-Mesageox(该串口不存在或串口被占用!请检查.,系统错误,_K); Fom1-U_Sttusrus-ColorlBlc; Frm1-_OENCpto打开串口; return; orm1MSComm1-PortOpenFle; Sleep(1); For-MSom1-PortOpen = True; if(!UrtOpen)Fom-SComm1-orOpeFle;/-voi _atcal Form::FormCrete(Obet *Sende) MSCom-InputLn = ; MSommInBuffe

9、rSize=208; MSCom1IufferCont=; MSom-OutufferSi 512; SommOutBufferCount =0; MSCom1-Comort ; /On rro GT comer SComm1-InpuMode = comnptModBnar; MCo1RTrehol= ; MSCom1-Sheshold 0; MSom-InBffrCont = 0; MSCmm1OutBufront ; Se_Uar();/-vi fstcalTForm1:U_OPNik(Object*Sender) if(!UrOpen) Uart_Ope=true; SatBrush-ColclRd; U_OEN-Cption=关闭串口; if(!MSCm1PrtOpe)Seta(); es rt_Open=fls; SttusrushColorlBlack; U_OPEN-aptin=打开串口; f(MSCm1Popen) MSCmm1-PortOe=alse; /-

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号