




已阅读5页,还剩22页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单片机课程设计报告单片机课程设计报告 题目:基于温度采集的单片机和题目:基于温度采集的单片机和 visualvisual c+c+串口通信串口通信 1.1.摘要摘要 单片机的应用正在不断地走向深入,同时带动传统控制检测日新月益更新。在实时检 测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方 面知识是不够的,还应根据具体硬件结构,以及针对具体应用对象特点的软件结合,加以 完善。ds18b20 是美国 dallas 公司生产的数字温度传感器芯片,具有结构简单、体积小、 功耗小、抗干扰能力强、使用方便等优点。本文设计的一种温度控制系统,用 stc89c51 单 片机作为温控器,选用 ds18b20 数字温度传感器,可任意设置上下限报警温度,采用数码 管实时显示温度,通过串口利用单片机与上位机的通信,对环境温度采集并进行控制。 关键词:关键词:stc89c51stc89c51 单片机、串口通信、上下限报警、数码管显示温度单片机、串口通信、上下限报警、数码管显示温度、 2.2.引论引论 随着时代的进步和发展,单片机技术已经普及到我们生活、工作、科研、各个领域,已经 成为一种比较成熟的技术。温度是工业生产中主要的被控参数之一,与之相关的跟中温度 控制是工业生产过程中经常遇到的过过程控制,有些工艺过程对其温度的控制效果直接影 响着产品的质量。用单片机做成的产品外围元件很少,能实现的功能却很广,广泛应用于 工业,农业等。兼于此,特用单片机设计此电路。 温度控制在实际生产中有着广泛的应用。例如:在冶金工业、化工生产、电力工程、 造纸行业、机械制造和食品加工等诸多领域中,人们都需要对各类加热炉、热处理炉、反 应炉和锅炉中的温度进行检测和控制。因而设计一种较为理想的温度控制系统是非常有价 值的。 在国内外温度控制成了一科广泛应用于很多领域的技术。具体如空调、冰箱、茶叶烘 烤、粮仓温度控制、等等。粮食温度检测是储备库中防止粮食霉烂、保质存放的重要环节。 对于一个农业大国来讲,粮食生产、需求与储备量都很大。大量粮食在储备的过程中常因 粮食湿度过大而升温发热,导致粮食大量腐烂变质,给郭建带来巨大损失。本论文正是以 此为出发点,对单片机控制的远程温度控制作了较详尽的介绍。单片机的应用正在不断地 走向深入,同时带动传统控制检测日新月益更新。在实时检测和自动控制的单片机应用系 统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具 体硬件结构,以及针对具体应用对象特点的软件结合,加以完善。ds18b20 是美国 dallas 公司生产的数字温度传感器芯片,具有结构简单、体积小、功耗小、抗干扰能力强、使用 方便等优点。本文设计的一种温度控制系统,用 stc89c52 单片机作为温控器,选用 ds18b20 数字温度传感器,可任意设置上下限报警温度,采用数码管实时显示温度,通过串 口利用单片机与上位机的通信,对温度进行采集、数据处理和控制。 3、目录、目录 1、摘要、摘要 2、引论、引论 3、目录、目录 4、正文、正文 4.1、设计目的、设计目的 4.2、具体内容及要求、具体内容及要求 4.3、系统总体方案设计、系统总体方案设计 4.3.1、设计方案论证、设计方案论证 4.3.2、系统总体构成图、系统总体构成图 4.3.3、硬件设计、硬件设计 4.3.4、软件设计、软件设计 4.4、系统各个模块设计、系统各个模块设计 4.4.1、单片机最小系统、单片机最小系统 4.4.2、显示部分、显示部分 4.4.3、报警电路、报警电路 4.4.4、测温电路、测温电路 4.4.5、单片机与上位机串、单片机与上位机串 4.5、系统软件设计、系统软件设计 4.5.1、单片机软件设计口电路、单片机软件设计口电路 4.5.2、上位机软件设计、上位机软件设计 5、结论、结论 6、总结心得、总结心得 7、参考文献参考文献 附录附录 4、正文、正文 4.1. 设计目的设计目的 (1)了解电子系统的设计方法,巩固和提高学过的基础理论和专业知识; (2)学习 ds18b20 数字温度传感器的测温原理,提高运用所学专业知识进行独立思考和综 合分析、解决实际问题的能力; (3) 掌握串口通信协议及其编程方法,掌握正确的思维方法和利用软件和硬件解决实际问 题的基本技能; (4)增强对单片机的认识,掌握分析处理问题的方法,进行调试、计算等基本技能的训练, 达到具有一定程度的实际工作能力。 (5) 学会用 protel99se 进行电路原理图和 pcb 图的绘制。 (6) 学习用 pspice、 multisim 10.0 等仿真软件进行电路设计和仿真。 (7)通过参与实际工作,能够了解单片机行业的具体工作。 4.2. 具体内容及要求具体内容及要求 1. 内容及要求: 研究基于单片机的远程温度监控系统,可以在 pc 机端实时监控系统温度,并根据当前 的温度值对单片机系统进行控制。利用 vc 编制 pc 示例程序。 2.主要技术指标: (1) 、温度测量范围 20-35; (2) 、可以设置温度报警的上、下限; (3) 、提供 pc 机通讯接口; (4) 、pc 机软件实现对温度数据分析、统计和处理; 4.34.3、系统总体方案设计、系统总体方案设计 4.3.1 设计方案论证 方案一 由于本设计是测温电路,可以使用热敏电阻之类的器件利用其感温效应,在将随被测温 度变化的电压或电流采集过来,进行 a/d 转换后,就可以用单片机进行数据的处理,在显 示电路上,就可以将被测温度显示出来,这种设计需要用到 a/d 转换电路,其中还涉及到 电阻与温度的对应值的计算,感温电路比较麻烦。而且在对采集的信号进行放大时容易受 温度的影响出现较大的偏差。 方案二 进而考虑到用温度传感器,在单片机电路设计中,大多都是使用传感器,所以这是非常 容易想到的,所以可以采用一只温度传感器 ds18b20,此传感器,可以很容易直接读取被测 温度值,进行转换,电路简单,精度高,软硬件都以实现,而且使用单片机的接口便于系 统的再扩展,满足设计要求。 从以上两种方案,很容易看出,采用方案二,电路比较简单,费用较低,可靠性高, 软件设计也比较简单,故采用了方案二。 4.3.2、系统总体构成图如下: 4.3.3、硬件设计: 现在 pc 机提供的 com 口是采用 rs-232 接口标准的。而 rs-232 是用正负电压来表示 逻辑状态,与 ttl 以高低电平来表示逻辑状态的规定不同。因此,为了能够同计算机借口 或终端的 ttl 器件(如单片机)连接,必须在 rs-232 与 ttl 电路之间进行电平和逻辑关系 的变换,变换电路选用芯片 max232.该器件包含 2 个驱动器、2 个接收器和一个电压发生器 电路提供 tia/eia-232-f 电平转换成 5v ttl/cmos 电平。每一个发送器将 ttl/cmos 电平转 换成 tia/eia-232-f 电平。 4.3.4、软件设计 单片机软件设计 单片机程序由主程序和中断子程序组成的。主程序负责对来自上位机的命令进行解析 并执行读温度值、存储温度值、输出控制等等,中断服务程序只负责单片机和上位机之间 的数据发送与接收。 上位机程序设计 由单片机采集的实时温度,经过处理后通过 max232 传输到上位机 pc,利用在 visual c+ 6.0 的通信控件 mscomm 属性设置和事件响应的基础上,实现与单片机串行通信,在上 位机中,完成报警温度设置、实时温度数据显示、曲线绘制,实时报警等功能。 4.44.4、系统各个模块设计:、系统各个模块设计: 4.4.1 单片机最小系统 1、stc89c51 单片机管脚图如下: 2、各引脚功能: (1)xtal1(19 脚);xtal2(18 脚)-外接时钟引脚。xtal1 为片内振荡电路的输入电源 和时钟引脚.vcc(40 脚)gnd(20 脚)常压为+5v,低压为+3.3v。 (2)端。 xtal2 为片内振荡电路的输出端,80c51 的时钟有两种方式,一种是片内振荡 方式,需要在这两个引脚接石英晶体和振荡电容, 振荡电容的值一般选择为 10p30p。另一种外部时钟方式即 xtal1 接地,外部时钟信号从 xtal2 脚输入。 (3)rst(9 脚)-单片机的复位引脚。 p0 口(39 脚32 脚)双向 8 位 i/o 口,每个口可以独立控制。51 单片机 po 口内部没 有上拉电阻,为高阻状态,所以不能正常的输出高低电平,因此该组 i/o 口在使用的时候务 必要接上拉电阻,一般我们采用接入 10k 的上拉电阻。 p1 口(1 脚8 脚)-准双向 8 位 i/o 口。每个口可以独立操作控制,内带上拉电阻,这种 接口输出没有高阻状态,输入也不能锁存,固然不是真正的双向 i/o 口,之所以称它为” 准 双向”是因为该口在作为输入使用前要先向该口进行写一操作,然后单片机内部才可以正确 读出外部信号,也就是要使其先要有个准备过程,所以才称准双向口。对 52 单片机的 p1.0 引脚的第二功能为 t2 定时器的外部输入,p1.1 引脚的第二功能为 t2ex 捕捉,重装触发,即 t2 的外部控制器。 p2 口(21 脚28 脚)-准双向 8 位 i/o 口,每个口都可以独立操作控制,内带上拉电阻, 与 p1 口相似。 p3 口(10 脚17 脚)-准双向 8 位 i/o 口,每个口可以独立操作控制,内带上拉电阻, 作为第一功能使用时就当作普通 i/o 口,与 p1 口相似。作为第二功能使用时,各引脚的定义 如表:值得强调的是,p3 口的每一个引脚均可以独立定义为第一功能的输入/输出或第二功能 p3 口引脚第二功能定义 标号引脚第二功能说明 p3.010rxd 串行输入口 p3.111txd 串行输出口 p3.212/into 外部中断 0 p3.313/int1 外部中断 1 p3.414t0 定时器/计数器 0 外部输入口 p3.515t1 定时器/计数器 1 外部输入口 p3.616/we 外部数据存储器 写脉冲 p3.717/rd 外部数据存储器 读脉冲 3、单片机最小系统 其中: a、复位电路 单片机上电时,当振荡器正在运行时,只要持续给出 rst 引脚连个机器周期的高电平, 便可完成系统复位。外部复位电路是为内部复位电路提供两个机器周期以上的电平而设计 的。系统采用上电自动复位,上电瞬间电容器上的电压不能突变,rst 上的电压是 vcc 上的 电压与电容器上的电压之差,因而 rst 上的电压与 vcc 上的电压相同。随着充电的进行, 电容器上的电压不断上升,rst 上的 电压就随着下降,rst 脚上只要保持 10ms 以上高电平, 系统就会有效复位。电容 c 可取 1033uf,电阻 r 可取 1.210k。在本系统设计中,c 取 10uf,r 取 10k。 b、振荡电路 xtal1 脚和 xtal2 脚分别构成片内振荡器的反相放大器的输入和输出端,外接石英晶振 或陶瓷晶振以及补偿电容 c1、c2 选 47uf 构成并联谐振电路。当外接石英晶振时,电容 c1、c2 选 30pf10pf;当外接陶瓷振荡器时,电容 c1、c2 选 47uf10uf。系统中,外接 电 c1、c2 的大小会影响振荡器频率的稳定度、起振时间及温度稳定性。在设计电路板时, 晶振和电容应靠近单片机芯片,以便减少寄生电容,保证振荡器稳定可靠工作。 在本硬件系统设计中,为保证串行通行波特率的误差,选择了 11.0592mhz 的标准石英 晶振,电容 c1、c2 为 30pf。 c、ea接高电平,选用片内程序存储器。 4.4.2、显示部分: 本系统采用三极管驱动四位一体共阳数码管显示温度,数码管有两种显示方式,即静态显 示和动态显示。 静态显示的特点是每个数码管的段选必须接一个 8 位数据线来保持显示的字形码。当 送入一次字形码后,显示字形可一直保持,直到送入新字形码为止。这种方法的优点是占 用 cpu 时间少,显示便于监测和控制。缺点是硬件电路比较复杂,成本较高; 动态显示的特点是将所有位数码管的段选线并联在一起,由位选线控制是哪一位数 码管有效。选亮数码管采用动态扫描显示。所谓动态扫描显示即轮流向各位数码管送出字 形码和相应的位选,利用发光管的余辉和人眼视觉暂留作用,使人的感觉好像各位数码管 同时都在显示。动态显示的亮度比静态显示要差一些,所以在选择限流电阻时应略小于静 态显示电路中的。 本设计数码管采用动态显示。如下图: 4.4.3、报警电路 本设计中采用三极管驱动蜂鸣器报警,其中,分别模拟制热器和制冷器。 当温度高于上限温度时,蜂鸣器报警,灯亮,模拟启动制冷器; 当温度低于下限温度时,蜂鸣器报警,灯亮,模拟启动制热器。 当按复位键时,数据清除。 其中,与蜂鸣器相连的轻触开关断开时,蜂鸣器停止报警,实现手动解除报警。 如图: rst 9 xtal2 18 xtal1 19 gnd 20 p2.0(a8) 21 p2.1(a9) 22 p2.2(a10) 23 p2.3(a11) 24 p2.4(a12) 25 p2.5(a13) 26 p2.6(a14) 27 p2.7(a15) 28 psen 29 ale(prog) 30 ea(vpp) 31 p0.7(ad7) 32 p0.6(ad6) 33 p0.5(ad5) 34 p0.4(ad4) 35 p0.3(ad3) 36 p0.2(ad2) 37 p0.1(ad1) 38 p0.0(ad0) 39 vcc 40 p1.0 1 p1.1 2 p1.2 3 p1.3 4 p1.4 5 p1.5 6 p1.6 7 p1.7 8 p3.0(rxd) 10 p3.1(txd) 11 p3.2(int0) 12 p3.3(int1) 13 p3.4(t0) 14 p3.5(t1) 15 p3.6(wr) 16 p3.7(ro) 17 u1 89c51 gnd 1 dq 2 vdd 3 u2 ds18b20 r1 res2 c electro1 jt 1 2 3 4 5 6 7 8 9 11 10 j d connector 9 100pf c1 cap g 19 dir 1 a1 2 b1 18 a2 3 b2 17 a3 4 b3 16 a4 5 b4 15 a5 6 b5 14 a6 7 b6 13 a7 8 b7 12 a8 9 b8 11 u5 74ls245 12 u3a 7407 100pf c2 cap gnd s sw-pb gnd gnd vcc vcc vcc r2 10k gnd p23 p22 a b c d e f g a b c d e f g dp dp com2 a bf c g d e dp com1 a bf c g d e dp a bf c g d e dp com3 com4 a bf c g d e dp u6 sr410561k p00 p01 p02 p03 p04 p05 p06 p07 p00 p01 p02 p03 p04 p05 p06 p07 34 u3b 7407 56 u3c 7407 98 u3d 7407 r3 res2 r4 res2 r5 res2 r6 res2 vcc p30 p31 p32 p33 p30 p31 p32 p33 gnd q 8550 vcc r7 res2 p23p22 c1+ 1 v+ 2 c1- 3 c2+ 4 c2- 5 v- 6 t2out 7 r2in 8 r2out 9 t2in 10 t1in 11 r1out 12 r1in 13 t1out 14 gnd 15 vcc 16 u4 m ax232 gnd p34 p35 p34 p35 gnd 100pf c3 vcc 100pf c4 cap 100pf c5 100pf c6 100pf c7 vcc r8 res2 p36 p36 b1 bell d1 led_rec bt? battery gnd vcc .4、测温电路 本设计采用温度传感器测量温度。 ds18b20 简介 其两种封装如图: 温度传感器的种类众多,在应用与高精度、高可靠性的场合时 dallas(达拉斯)公司生产 的 ds18b20 温度传感器当仁不让。超小的体积,超低的硬件开消,抗干扰能力强,精度高, 附加功能强,使得 ds18b20 更受欢迎。对于我们普通的电子爱好者来说,ds18b20 的优势更 是我们学习单片机技术和开发温度相关的小产品的不二选择。了解其工作原理和应用可以 拓宽我们对单片机开发的思路。 ds18b20 的主要特征: 1. 全数字温度转换及输出。 2. 先进的单总线数据通信。 3. 最高 12 位分辨率,精度可达土 0.5 摄氏度。 4. 12 位分辨率时的最大工作周期为 750 毫秒。 5. 可选择寄生工作方式。 6. 检测温度范围为55c +125c (67f +257f) 7. 内置 eeprom,限温报警功能。 8. 64 位光刻 rom,内置产品序列号,方便多机挂接。 9. 多样封装形式,适应不同硬件系统。 ds18b20 芯片封装结构: ds18b20 引脚功能: gnd 电压地 dq 单数据总线 vdd 电源电压 nc 空引脚 ds18b20 工作原理及应用: ds18b20 的温度检测与数字数据输出全集成于一个芯片之上,从而抗干扰力更强。其一个工 作周期可分为两个部分,即温度检测和数据处理。在讲解其工作流程之前我们有必要了解 18b20 的内部存储器资源。18b20 共有三种形态的存储器资源,它们分别是: rom 只读存储器,用于存放 ds18b20id 编码,其前 8 位是单线系列编码(ds18b20 的编码是 19h) ,后面 48 位是芯片唯一的序列号,最后 8 位是以上 56 的位的 crc 码(冗余校验) 。数 据在出产时设置不由用户更改。ds18b20 共 64 位 rom。 ram 数据暂存器,用于内部计算和数据存取,数据在掉电后丢失,ds18b20 共 9 个字节 ram,每个字节为 8 位。第 1、2 个字节是温度转换后的数据值信息,第 3、4 个字节是用户 eeprom(常用于温度报警值储存)的镜像。在上电复位时其值将被刷新。第 5 个字节则是 用户第 3 个 eeprom 的镜像。第 6、7、8 个字节为计数寄存器,是为了让用户得到更高的温 度分辨率而设计的,同样也是内部温度转换、计算的暂存单元。第 9 个字节为前 8 个字节 的 crc 码。eeprom 非易失性记忆体,用于存放长期需要保存的数据,上下限温度报警值和 校验数据,ds18b20 共 3 位 eeprom,并在 ram 都存在镜像,以方便用户操作。 电路图如下: .5、单片机与上位机串口电路 在现代业控制中,串口通信的应用越来越广泛。单片机和pc机之间的串口通信在进行 数据交换时经常被使用。在串行通信时,要求通信双方都采用一个标准接口,rs232c接 口是单片机利pc机进行通信最常用的一种接口。单片机与pc机进行串口通信最简单的二线 制法,即接收数据针脚(rxd)与发送数据针脚(txd)相连,彼此交叉,信号地(gnd)对应相接。 但是,串口还不能直接和单片机相连,可以选用max232和max485进行电平转换。max232用 于rs232c标准;max485用于rs485标准。rs232c标准规定在码元畸变小于4的情况下, 传输电缆长度最大约为l5米,最高传输速率为20kbits。rs485标准最人传输距离约为 1219米,最大传输速率约为l0mbits。 max232 芯片简介 max232 芯片是美信公司专门为电脑的 rs-232 标准串口设计的单电源电平转换芯片,使 用+5v 单电源供电。 引脚介绍: 第一部分是电荷泵电路。由 1、2、3、4、5、6 脚和 4 只电容构成。功能是产生+12v 和-12v 两个电源,提供给 rs-232 串口电平的需要。 第二部分是数据转换通道。由 7、8、9、10、11、12、13、14 脚构成两个数据通道。 其中 13 脚(r1in) 、12 脚(r1out) 、11 脚(t1in) 、14 脚(t1out)为第一数据通道。 8 脚(r2in) 、9 脚(r2out) 、10 脚(t2in) 、7 脚(t2out)为第二数据通道。 ttl/cmos 数据从 t1in、t2in 输入转换成 rs-232 数据从 t1out、t2out 送到电脑 db9 插 头;db9 插头的 rs-232 数据从 r1in、r2in 输入转换成 ttl/cmos 数据后从 r1out、r2out 输 出。 第三部分是供电。15脚gnd、16脚vcc(+5v) 。 由于串口用的是 ttl 电平,和 rs232 电平不同,因此,单片机和 pc 通信时需要进行电 平转换,常用的 ic 是 max232,连接图如下图所示,其中 max232 供电脚为5v。采用了三线 制连接串口,也就是说和计算机的 9 针串口只连接其中的 3 根线:第 5 脚的 gnd、第 2 脚的 rxd、第 3 脚的 txd。这是最简单的连接方法,但是对我们来说已经足够使用了。 rs232引脚图 串口电路连接图如下: 收、发端的数据信号是相对于信号地,如从dte设备发出的数据在使用db25连接器时是 2脚相对7脚(信号地)的电平,db25各引脚定义参见图2-9。典型的rs-232信号在正负电平 之间摆动,在发送数据时,发送端驱动器输出正电平在+5+15v,负电平在-5-15v电平。 当无数据传输时,线上为ttl,从开始传送数据到结束,线上电平从ttl电平到rs-232电平 再返回ttl电平。接收器典型的工作电平在+3+12v与-3-12v。由于发送电平与接收电平 的差仅为2v至3v左右,所以其共模抑制能力差,再加上双绞线上的分布电容,其传送距离 最大为约15米,最高速率为20kb/s。rs-232是为点对点(即只用一对收、发设备)通讯而 设计的,其驱动器负载为37k。所以rs-232适合本地设备之间的通信。上位机和下位机 的接线方法如图 上位机和下位机的接线方法 mcs-51 内部含有一个可编程全双工串行通信接口,具有 uart 的全部功能。该接口电路 不仅能同时进行数据的发送和接收,也可作为一个同步移位寄存器使用。 在进行异步通信时,数据的发送和接收分别在各自的时钟(tclk 和 rclk)控制下进行 的,但都必须与字符位数的波特率保持一致。mcs-51 串行口的发送和接收时钟可由两种方 式产生,一种是由主机频率 fosc 经分频后产生,另一种方式是由内部定时器 t1 或 t2 的溢 出率经 16 分频后提供。 发送和接收的过程如下: 串行口的发送过程由指令 mov sbuf,a 启动,即 cpu 由一条写发送缓冲器的指令把数 据(字符)写入串行口的发送缓冲器 sbuf(发)中,再由硬件电路自动在字符的始、末加 上起始位(低电平) 、停止位(高电平)及其它控制位(如奇偶位等) ,然后在移位脉冲 shift 的控制下,低位在前,高位在后,从 txd 端(方式 0 除外)一位位地向外发送。 串行口的接收与否受制于允许接收位 ren 的状态,当 ren 被软件置“1”后,允许接收 器接收。接收端 rxd 一位位地接收数据,直到收到一个完整的字符数据后,控制电路进行 最后一次移位,自动去掉启始位,使接收中断标志 ri 置“1” ,并向 cpu 申请中断。cpu 响 应中断,用一条指令(mov a,sbuf)把接收缓冲器 sbuf(收)的内容读入累加器。 ti 和 ri 是由硬件置位的,但需要用软件复位。 .、系统软件设计 .、单片机软件设计: (1)主程序: 主程序的主要功能是负责温度的实时显示、读出并处理 ds18b20 的测量的当前温度值,温 度测量每 1s 进行一次。这样可以在一秒之内测量一次被测温度,其程序流程如下所示: 主程序流程图 (2)读温度子程序: 先让 ds18b20 复位,然后发跳过 rom 匹配命令,再发出温度转换命令,让 ds18b20 进行温 度转换,延时等待转换完毕后,再将已转换的温度值一一地从各个 ds18b20 取出,转换成 ascall 码后再发送到 pc 机上,如此循环。程序框图如下: 读温度程序框图 (3)温度比较报警子程序 此程序是将实际温度与设置的报警上下限比较,决定是否发出报警信号。由于 t 为实 际温度的绝对值,th、tl 也是温度的绝对值,因此判断大小关系时要通过其正负符号来确 定。 温度比较报警子程序 4.5.2.上位机软件设计 pc 机程序中包括串口通信模块,绘图模块,命令按钮模块,温度显示模块等。 一、串口通信模块 在本设计中,采用 mscomm 控件进行串口的通讯,mscomm 控件串口具有完善的串口数据 的发送和接收功能。通过此控件,pc 机可以利用串行口与其它设备实现轻松连接,简单高 效地实现设备之间的通讯。此控件的事件响应有两种处理方式,事件驱动方式:由 mscomm 控件的 oncomm 事件捕获并处理通讯错误及事件;查询方式:通过检查 commevent 属性的值 来判断事件和错误。 二、绘图模块 在 vc 中,绘图可以利用 line 和 circle 方法绘制几何图形11,还可以利用 botton 控件绘制各种图表。而本设计就采用 botton 控件进形绘制温度变化曲线图。botton 控件在 绘制直方图(条形图) 、折线图、饼图、标记图、填充区域图等各种常用的数据分析图形方 面有很大的优势,我们只要将需按图形表示的数据装入数组中,然后将数组数据赋值给 botton 控件,再进行一些简单的图形标题、背景、图例、注脚方面的定义,就可以得到所 期望的数据分析图形。 由于 botton 控件不是 vc 内建的基本控件,因此在使用前必须用工程菜单中的“部件” , 添加 botton 控件。添加 botton 控件的选项是“microsoft chart control 6.0(oledb)” 。 三、命令按钮11模块 大多数应用程序中都有命令按钮 commandbutton 控件,用户可以单击按钮执行某项操 作。在本设计统中要让下位机执行相应操作,就是通过命令按钮给下位机下发命令实现该 功能。命令按钮是 vb 应用程序中经常使用的对象,程序运行中要执行一条或一组命令,通 常通过用鼠标单击命令按钮来实现,当然具体产生何种动作要通过执行相应的事件过程中 的程序代码来决定。 四、温度显示模块 在本设计中显示由文本框和标签控件完成。 完成后的 vc 界面如下: 5.5.结论结论 本温控系统通过 stc89c51 单片机采集从 ds18b20 温度传感器所测得的温度数据,并 通过串口实时传送到上位机。单片机系统完成对温度信号的采集、设定上下限报警等功能, 并通过串口通信与 pc 机进行通信,在 pc 机上进行显示及一些操作,从而使系统更加直观, 使用更加方便。本设计主要解决了以下几个问题: 1.系统的硬件采用以单片机为核心的硬件电路,所用元器件也很少,体积小,重量轻, 抗干扰能力强,对环境要求不高,价格低廉。 2.实现单片机与 pc 机的通信功能,实现远距离的进行监控. 当然本设讲也存在着一些不足: (1)电路设计技术还不够成熟 (2)本设计通信采用 rs232,如果采用 rs485 通信距离将会大大增加 这个系统本身或通过扩展可应用于智能家居、工业控制、智能农业、环境监测等各个 领域的温度采集以及数据分析控制。相信,随着单片机与pc应用的不断推广和不断成熟, 基于单片机与pc机的温度控制系统将会得到广泛的应用。 (3)本设计在绘图的时候,定位范围不是很好,图线会伸出绘图区间。 6 6、总结心得、总结心得 7 7、参考文献参考文献 单片机应用系统设计技术基于c51的proteus仿真(第2版) 张齐 电子工业出版 社 c+程序设计(第四版) 谭浩强 清华大学出版社 c/c+串口通信典型应用实例编程实践 曹卫斌 电子工业出版社 visual c+数据采集与串口通信测控应用实战 田敏 人民邮电出版社 c语言常见问题集 steve summit(原著) 翻译:朱群英 孙云 单片机c语言程序设计实训100例基于80c51+proteus仿真 彭伟 北京航空航天大 学出版社 附录附录 1、总体电路图: 电脑端程序: dim n as integer dim t as integer 定义全局变量 private sub command2_click() 单击按钮执行数据采集或停止采集 if command2.caption = “采集数据“ then command2.caption = “停止采集“ timer1.enabled = true mscomm1.output = “a“ else command2.caption = “采集数据“ timer1.enabled = false mscomm1.output = “b“ mscomm1.output = “b“ end if end sub private sub command4_click() 单击按钮清空数据 text1.text = “ text4.text = “ end sub private sub command5_click() 单击按钮开关通信端口 if command5.caption = “开启通信“ then command5.caption = “关闭通信“ com.enabled = false command2.enabled = true command1.enabled = true text2.enabled = true select case com.listindex 指定端口号(com) case 0 mscomm1.commport = 1 case 1 mscomm1.commport = 2 case 2 mscomm1.commport = 3 case 3 mscomm1.commport = 4 end select mscomm1.settings = “9600,n,8,1“ 9600 波特,无校验,8 位数据位,1 位停止位 mscomm1.inputmode = cominputmodetext 接收文本数据 mscomm1.inputlen = 0 读出接收缓冲区的所有内容 mscomm1.inbuffersize = 1024 mscomm1.outbuffersize = 1024 mscomm1.rthreshold = 1 每接收到 1 个字符,发生 1 次事件 mscomm1.portopen = true 打开串口 else timer1.enabled = false mscomm1.output = “b“ mscomm1.output = “b“ command5.caption = “开启通信“ com.enabled = true mscomm1.portopen = false command2.caption = “采集数据“ command2.enabled = false command1.enabled = false text2.enabled = false end if end sub private sub command7_click() 单击按钮保存温度数据 commondialog1.action = 2 open commondialog1.filename for append as #1 write #1, now write #1, text4.text close #1 end sub private sub form_load() com.additem “com1“ com.additem “com2“ com.additem “com3“ com.additem “com4“ end sub private sub mscomm1_oncomm() 串口接收到数据时读出数据 select case mscomm1.commevent case comevreceive text1.text = text1.text & mscomm1.input case else end select end sub private sub text1_change() 对读出的数据进行处理 if (len(text1.text) mod 4 = 0) and (len(text1.text) 0) then text3
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 广东省莞市东华中学2025年英语八下期中综合测试试题含答案
- 保洁安全试题及答案
- 办公室应聘题库及答案
- 中式快餐连锁企业2025年标准化扩张与市场渠道拓展报告
- 2025年新能源微电网稳定性控制与优化运行设备运行维护设备运行维护成本控制报告
- 氢能源汽车产业关键零部件国产化进程2025年技术创新与产业发展趋势分析
- 安全监理试题及答案
- 医疗家具知识培训课件
- 2025年新型农业经营主体发展现状与培育策略深度分析报告001
- 建筑施工模板安全技术规范
- 矿产资源国际合作-洞察及研究
- 【课件】无脊椎动物+第2课时课件-2024-2025学年人教版生物七年级上册
- 2025年凉山州昭觉县选聘社区工作者题库带答案分析
- 2025国开《调剂学(本)》形考任务1234答案
- 2025年员工持股平台合伙协议
- 2024-2025学年下学期初中道德与法治七年级期末复习试卷(含答案)
- 2025年政府采购管理实务考试卷及答案
- 2025连云港师范高等专科学校辅导员考试试题及答案
- 2025年中国ORC低温余热发电系统行业市场现状及未来发展前景预测报告
- 非典型溶血尿毒综合征多学科实践共识解读(2025版)
- 早期阿尔茨海默病疾病修饰治疗专家共识(2025年版)解读
评论
0/150
提交评论