温度测控系统设计说明_第1页
温度测控系统设计说明_第2页
温度测控系统设计说明_第3页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、测控工程测控工程设计基于串口通讯温度控制系统的设计院 系:钦州学院数学与计算机科学系班 级:计算机控制技术081班学 号:姓 名:指导教师:2010年7月11日目录第1节引言3(1) 串口通讯简介3(2) 51单片机简介3(3) ADC0809模数转换芯片系统简介 3(4) RS-232串口通讯系统简介4第2节项目概述5第3节设计目的 5第4节设计准备5第5节设计总框图 5第6节设计流程图 6第7节设计硬件图 7第8节 设计接线说明 7第9节上位机软件编程及其说明 8(1) 上位机软件效果图 8(2) 上位机软件全代码10第10节 下位机软件编程及其说明 16第11节 总结 201. 引言(1

2、)串口通讯简介:串口通信(Serial Communication),是指外设和计算机间,通过数据信号线、地线、控制线等,按位进行传输数据的一种通讯方式。 这种通信方式使用的数据线少, 在远距离通 信中可以节约通信成本,但其传输速度比并行传输低。随着计算机系统的应用和微机网络的发展,通信功能越来越显的重要这里所说的通信是指计算机与外界的信息交换因此,通信既包括计算机与外部设备之间,也包括计算机和计算机之间的信息交换由于串行通信是在一根传输线上一位一位的传送信息,所用的传输线少,并且可以借助现成的电话网进行信息传送,因此,特别适合于远距离传输对于那些与计算机相距不远的人-机交换设备和串行存储的外

3、部设备如 终端、打印机、逻辑分析仪、磁盘等,采用串行方式交换数据也很普遍在实时控制和管理方面,采用多台微机处理机组成分级分布控制系统中,各CPU之间的通信一般都是串行方式所以串行接口是微机应用系统常用的接口。许多外设和计算机按串行方 式进行通信,这里所说的串行方式,是指外设与接口电路之间的信息传送方式,实际上CPU与接口之间仍按并行方式工作51单片机简介:89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPERO FalshProgrammable and Erasable Read Only Memory)的低电压,高性能CMOS8位 微处理器,俗称单片机。89C2051是一种带2K字

4、节闪烁可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用 ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能 8位CPU和闪烁存储器组合在单个芯片中,ATMEL的 89C51是一种高效微控制器,89C2051是它的一种精简版本。89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。主要特征有:与MCS-51兼容;4K 字节可编程闪烁存储器;寿命:1000写/擦循环;数据保留时间:10年;全静态工作:0Hz-24MHz;三级程序存储器锁定;128*8位内部 RAM; 32可编程I/O线; 两个16

5、位定时器/计数器;5个中断源; 可编程串行通道;低功耗的闲置和掉电模式;片内振荡器和时钟电路(3) ADC0809模数转换芯片系统简介:ADC0809模数转换器,ADC0809是 8通道8位CMOS逐次逼近式 A/D转换芯片,片内有模 拟量通道选择开关及相应的通道锁存、译码电路,A/D转换后的数据由三态锁存器输出,由于片内没有时钟需外接时钟信号。下图为该芯片的引脚图。各引脚功能如下:IN0IN7 :八路模拟信号输入端。ADD-A ADD-B ADD-C三位地址码输入端。八路模拟信号转换选择由这三个端口控制。CLOCK外部时钟输入端(小于 1MHZ。LINJrw .-4IN-2TKT 123-5

6、TD0D7:数字量输出端。nd9 cTKT A26斗IN-6 跑START EOC riiILH-U AD1A ADM ADD-CAtE D?24OE A/D转换结果输出允许控制端。当OE为高电平623J F -22时,允许A/D转换结果从D0D7端输出。910.jni arvuomuwALE:地址锁存允许信号输入端。八路模拟通道地址11JL/JTW1$1dJU*!1 irwi7T由A B、C输入,在ALE信号有效时将该八路地址锁存。13refit16blDli. gaowen Then判断时候是高温报警ListBox1.ltems.Add(高温报警:当前温度& y & C高于最高高温报警温度

7、 & gaowen &C,停止加热!)MeSerialPort1.Write( z)MeLabel3.Text =设备未加热!MeLabel3.BackColor = Color.GreenEnd IfIf y diwen Then判断时候是低温报警ListBox1.ltems.Add(低温报警:当前温度& y & C低于最低低温报警温度& diwen &C,开启加热!)MeSerialPort1.Write( a)MeLabel3.Text =正在加热中!!MeLabel3.BackColor = Color.RedEnd If使用用 GDI+ Graphics 类在picturebox 内

8、描点画线 Using G As Graphics = PictureBoxl.CreateGraphics为 picturebox 仓U建GraphicsG.Clear(Color.Black)清除整个绘图面并以指定背景色填充。G.DrawLines(Pens.Red, Pts)绘制一条连接由坐标对指定的两个点的线条。End UsingEnd SubPrivate Sub Button4_Click( ByVai sender As System.Object, ByVale As System.EventArgs) HandlesButton4.ClickTry 发送数据MeSerialPo

9、rt1.Write( z) 向串口发送z用于单片机读取并利用MeLabel3.Text =设备未加热!MeLabel3.BackColor = Color.GreenCatch ex As Exception,MsgBoxStyle.Exclamation, 错误)MsgBox(无法发送信息!End TryEnd SubPrivate Sub Button7_Click(ByVal sender As System.Object,ByVal e As System.EventArgs)HandlesButton7.Clickgaowen = Val(InputBox(设置报警的最高温”,60)

10、设置高温报警温度Label7.Text = gaowen & CEnd SubPrivate Sub Button8_Click(ByVal sender As System.Object,ByVal e As System.EventArgs)HandlesButton8.Clickdiwen = Val(InputBox(设置报警的最低温”,20)设置低温报警温度Label8.Text = diwen & CEnd SubPrivate Sub Button9_Click(ByVal sender As System.Object,ByVal e As System.EventArgs)H

11、andlesButton9.Click停止监控Using G As Graphics = PictureBoxl.CreateGraphicsG.Clear(Color.Black)清除整个绘画区背景Timerl.Enabled =False关闭时钟Label9.Text =停止开启监控状态End UsingEnd SubPrivate Sub ListBox1_DoubleClick( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBoxl.DoubleClickListBox1.ltems.C

12、lear()双击报警区域可清除里面显示内容End SubEnd Class上位机软件说明:上位机软件为原创作品软件设计到的技术有:SerialPortl控件串口通讯技术、Thread多线程技术、串口接收的委托技术、picturebox里面GDI+画线技术。不过程序较为复杂由于时 间紧迫制作时期研究了很多不同技术导致里面排版不够清晰、调试次数不够多,不过好在勉强的完成了,在这里我要感谢梁家海老师的大 概软件框架和思想以及网友X. TK的抓药机器人中的串口通讯技术 DY like前辈的GDI+画线技术的教导。10. 下位机软件编程及其说明LowTemp equ -50 ; A/D 0HighTem

13、p equ 150; A/D 255ADPortequ 0FEF3HLEDBufequ 30HTEMPEQU 40HCURTEMP EQU 60Hwendu EQU 61H aaa EQU 62HWD BIT P2.1DIN BIT P3.4CLK BIT P3.5ORG 0000Hmov tmod, #22h /设置定时器1工作方式mov scon, #50h / 设置串口方式anl peon, #7fh mov tl1,#0FAh setb tr1mov th1, #0FAh /根据波特率和晶振算setb et1 setb eaIjmp StartORG 0030HLEDMAP:DB3FH

14、,6,5BH,4FH,66H,6DH ;0,1, 2, 3, 4, 5DB7DH,7,7FH,6FH,77H,7CH ;6,7, 8, 9, A, BDB58H,5EH,7BH,71H,0,40H ;C,D E, F,-DB63H,39H;#a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a aDisplayLED:MOV R0,#LEDBUFMOV R1,#TEMPMOV R2,#5DP10:MOV DPTR,#LEDMAPMOV A,R0MOVC A,A+DPTRMOV R1,AINC ROIN

15、C R1DJNZ R2,DP10MOV R0,#TEMPMOV R1,#5DP12:MOV R2,#8MOV A,R0DP13:RLC AMOV DIN,CCLR CLKSETB CLKDJNZ R2,DP13INC R0DJNZ R1,DP12RETDisplayResult: mov a, CurTemp jnb acc.7, GEOmov LEDBuf, #11h;dec acpl aLJMP Goo nGE0:mov LEDBuf, #10h ;Goo n:mov b, #10div abmov LEDBuf+1, amov a,bmov LEDBuf+2, amov LEDBUF+3

16、,#12HMOV LEDBUF+4,#13HRETReadAD:mov dptr, #ADPortclr amovx dptr, a ; start A/DJNB P3.3,$MOVX A,DPTR ;读入结果ret;$ReadTemp:ACALL ReadAD mov b, #(HighTemp-LowTemp) ;(HighTemp-LowTemp) mul abmov a, b; /256add a, #LowTempmov CurTemp, aretSend:mov sbuf,CurTemp /把采集的温度送到串口缓存jbc ti, $ / 发送完毕 清零TIclr tiretGet:

17、JNB RI,PANMOV aaa,SBUF / 串口信息传至寄存器 ACJNE aaa,61H,SS1 /判断寄存器 A中是否等于a加热的ASCII码CJNE aaa,7AH,SS2 / 判断寄存器A中是否等于z 停止加热的ASCII码MOV aaa,#00HPAN: NOPRETSS1:SETB WD / 加热使 P2.1 口至 1MOV aaa,#00HRETSS2:MOV aaa,#00HMOV A,R6RETDELAY:MOV R4,#0FFHAA1: MOV R5,#0FFHAA: NOPNOPDJNZ R5,AADJNZ R4,AA1RETSta rt: ACALL ReadTe

18、mpACALL Se ndACALL GetACALL DisplayResultACALL DisplayLEDACALL DELAYLjmp STARTend汇编程序来自试验箱报告的实验十九 80c51与PC机串口通讯实验外加上刘志先 老师添加的串口发送子程序,加上本人添加的串口接收数据利用数据加热子暂 停子程序构成,此程序能够收集温度传感器电压装换成数据,并且LED数码管显 示当前温度,并能串口传值到PC机,由PC机发送是否加热控制命令。11. 总结课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题, 锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程随着科学技术发展的日新

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论