




免费预览已结束,剩余26页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
目录目录 摘要 abstract 第一章 绪 论1 1.1 课题研究的背景与意义1 1.2 国内外研究概况和发展趋势1 1.2.1 温度传感器研究概况和发展趋势1 1.2.2 温度控制系统研究概况和发展趋势1 1.3 研究内容2 第二章 硬件电路设计3 2.1 芯片介绍3 2.2 硬件电路总体设计7 2.3 温度信号输入电路设计8 2.4 电源模块设计8 2.5 键盘/显示电路设计10 2.5 控制量输出电路设计12 第三章 软件系统设计14 3.1 单片机主程序14 3.2 键盘处理子程序14 3.3 显示子程序15 3.4 ds18b20 相关程序.16 3.4.1 ds18b20 初始化程序.16 3.4.2 ds1820 读写程序.16 总结与展望19 致谢20 参考文献21 附录 i 部分程序代码.22 附录 系统原理电路图29 1 第一章第一章 绪绪 论论 1.11.1 课题研究的背景与意义课题研究的背景与意义 目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹, 同时,随着“信息时代”的到来,传感器技术得到了显著的进步,其应用领域越来越广泛, 对其要求越来越高,需求越来越迫切。因此,了解并掌握单片机及各类传感器的基本结构、 工作原理及特性是非常重要的。 在人类的生活环境中,温度扮演着极其重要的角色。无论你生活在哪里,无时无刻不 在与温度打着交道。在冶金、钢铁、石化、水泥、玻璃、医药等等行业,可以说几乎80 的工业部门都不得不考虑着温度的因素。温度对于工业如此重要,由此推进了温度检测与 控制系统的发展。基于温度检测的普遍要求,本文以 80c51 单片机为核心,研究和设计了 数字化的水温控制系统。 1.21.2 国内外研究概况和发展趋势国内外研究概况和发展趋势 1.2.11.2.1 温度传感器研究概况和发展趋势温度传感器研究概况和发展趋势 现代信息技术的三大基础是信息采集(即传感器技术)、信息传输(通信技术)和信息处 理(计算机技术)。传感器属于信息技术的前沿尖端产品,尤其是温度传感器被广泛用于工 农业生产、科学研究和生活等领域,数量高居各种传感器之首。 我国传感器行业虽起步较早,但直到年“七五”开始才正式将传感器技术列 入国家重点攻关项目,展开以机械敏、力敏、气敏、温敏、生物敏为主的大敏研究。经 过十几年的发展,现已形成了一定规模的产业格局,其特点有:厂商多,上规模的企业少; (2)地区发展不平衡;(3)品种多,档次不高;(4)生产研发以大学和研究所为依托,专业公 司少。 1.2.21.2.2 温度控制系统研究概况和发展趋势温度控制系统研究概况和发展趋势 pid 控制 pid 控制即比例、积分、微分控制。pid 算法根据比例、积分、微分系数计算出合适的 输出控制参数,利用修改控制变量误差的方法实现闭环控制,使控制过程连续,是很普通 的调节方法。其缺点是现场参数整定麻烦,外界干扰会使控制漂离最佳状态。 神经网络控制 人工神经网络以其高度的非线性映射,自组织,自学习和联想记忆等功能,可对复杂 的非线性系统建模。在温控系统中,将温度的影响因素如天气、气温、外加电压、被加热 2 物体性质以及被加热物体温度等作为网络的输入,将其输出作为 pid 控制器的参数,以实 验数据作为样本,在微机上反复迭代,随实验与研究的进行与深入,自我完善与修正,直 至系统收敛,得到网络权值,达到自整定 pid 控制器参数的目的。 模糊控制 模糊控制是基于模糊逻辑的用于描述一个过程的控制算法,它适用于控制不易取得精 确数学模型和数学模型不确定或经常变化的对象。模糊温控的实现过程: 将温控对象的 偏差和偏差变化率以及输出量划分为不同的模糊值,建立规则。 根据控制查询表,形成 模糊算法。 对温度误差采样的精确量模糊化,经过数学处理输入计算机中,计算机根据 模糊规则推理做出模糊决策,求出相应的控制量,并转换成精确量去驱动执行机构,达到 调节温度的目的。 模糊控制与 pid 结合(fussy-pid) pid 本质是线性控制,而模糊控制具有智能性,属于非线性领域,因此,将模糊控制 与 pid 结合将具备两者的优点。即用过程的运行状态(温度偏差及温度变化率)确定 pid 控制器参数,用 pid 控制率确定控制作用.主要的问题是合理地获得 pid 参数的模糊校正规 则。其实质是一种以模糊规则调节“pid 参数”的自适应控制,即在一般 pid 控制系统基 础上,加上一个模糊控制规则环节。 模糊控制与神经网络结合 温控系统由于被控过程常常具有严重的非线性和时变性以及种类繁多的干扰,使得基 于精确数学模型的传统控制方案很难获得满意的动静态控制效果。但是,模糊控制所基于 的专家经验不易获得,一成不变的控制规则也很难适应被控制系统的非线性、时变性等问 题,严重影响控制效果。因此,人们将模糊控制与神经网络相结合使模糊控制向着自适应 方向发展,使模糊控制规则隶属函数模糊量化在控制过程自动地调整和完善。 1.31.3 研究内容研究内容 本文讨论了洗浴场水温自动控制系统,该系统对控制精度的要求不是很高,但要求系 统简单实用,所以我们设计了以单片机 80c51 为控制器,以双向可控硅为执行机构的控制 方案。主要内容包括: 1. 采用以 intel 公司 mcs-51 系列的 chmos 产品 80c51 为核心的单片机系统,实现对 水温的检测控制。 2. 采用新型数字温度传感器,进行温度数据的采集和转换。 3. 系统可以手动或上电复位。复位时先自检,接着显示上次设定的上限温度值。正 3 常工作时显示温度值。状态灯显示当前系统工作状态。 第二章第二章 硬件电路设计硬件电路设计 本章先对系统使用到的主要芯片和传感器做简单介绍,接着对系统总体设计做了简略 阐述,最后仔细介绍了温度信号输入电路、电源模块、键盘/显示电路、控制量输出电路及 报警/状态显示电路。 2.12.1 芯片介绍芯片介绍 80c51 单片机 80c51 系列单片机是由 intel 公司推出的 8 位主流单片机系列,是在中低档系列 mcs- 51 的 hmos 的基础上发展而成的,该系列具有 chmos 结构,是我国目前应用最广泛的一种 单片机系列。 1外部引脚及功能 80c51 单片机共有 40 个信号引脚。它有两 种封装形式:一种是双列直插式,另一种是方 形封装(44 个引脚,其中有 4 个空脚 nc)。双列 直插式的芯片排列如图 2.1 所示。 80c51 单片机的 40 个引脚分别是:电源引 脚 2 根,外接晶体振荡器引脚 2 根,控制引脚 4 根以及输入/输出引脚 32 根。 主电源引脚(2 根) (20):接地线。 ss v (40):电源线,接+5v 电源。 cc v 外接晶体引脚(2 根) xtal1(19):接外部晶体的一个引脚 图 2.1 80c51 的引脚排列 或引入外部时钟。当采用内部振荡器时,它接外部石英晶振的一个引脚。当采用外部 振荡器时,此引脚作为时钟输入端(驱动端)。 xtal2(18):外接石英晶振的另一个引脚或引入外部时钟。当采用内部振荡器时, 它接外部晶振的一个引脚。当采用外部振荡器时,此引脚悬浮。 控制引脚(4 根) 4 (9):复位信号引脚。 pp vrst / ale/prog(30):地址锁存允许信号。 (29):外部程序存储器的读选通信号。psen (31):访问程序存储器选择控制信号。 dd vea/ 输入/输出引脚(32 根) p0.0p0.7(3932):p0 口的 8 位双向 i/o 口线。 p1.0p1.7(18):p1 口的 8 位准双向 i/o 口线。 p2.0p2.7(2128):p2 口的 8 位准双向 i/o 口线。 p3.0p3.7(1017):p3 口的 8 位准双向 i/o 口线。 p3 口是一个带有内部上拉电阻的 8 位准双向 i/o 口。在 80c51 中,p3 口还有第二功能, 而且 80c51 的 p3 口恰恰是经常使用在第二功能状态。其第二功能见表 2.1。 表 2.1 p3 口的第二功能 引脚第二功能功能说明 p3.0rxd 串行数据接收器 p3.1txd 串行数据发送器 p3.2 0int 外部中断 0 申请信号线 p3.3 1int 外部中断 1 申请信号线 p3.4t0 定时器/计数器 0 计数输入端 p3.5t1 定时器/计数器 1 计数输入端 p3.6wr 外部 ram 写选通信号 p3.7rd 外部 ram 读选通信号 2. 80c51 的存储器配置 80c51 的片内集成有一定容量的程序存储器和数据存储器(128b)。当然,还可以根据 需要对存储器进行外部扩展。 3. 80c51 的中断系统 中断源:80c51 是一个多中断源的单片机,共有三类五个中断源,分别是外部中断 5 两个(,)、定时中断两个和串行中断一个。 0 int 1 int 中断控制的寄存器 定时器控制寄存器 tcon 寄存器地址 88h,位地址 8fh88h。具体格式如下: 位地址8f8e8d8c8b8a8988 位名称tf1tr1tf0tr0ie1it1ie0it0 串行口控制寄存器 scon 寄存器地址 98h,位地址 9fh98h,具体格式如下: 位地址9f9e9d9c9b9a9998 位名称sm0sm1sm2rentb8rb8tiri 中断允许控制寄存器 ie 寄存器地址 a8h,位地址 afha8h,具体格式如下: 位地址afaeadacabaaa9a8 位名称ea-eset1ex1et0ex0 中断优先级控制寄存器 ip ip 寄存器地址 b8h,位地址 bfhb8h,具体格式如下: 位地址bfbebdbcbbbab9b8 位名称-pspt1px1pt0px0 温度传感器 ds1820 美国 dallas 公司生产的单线数字温度传感器 ds1820,可把温度信号直接转换成串行数 字信号供微机处理。给 ds1820 供电的方法是从 vdd 引脚接入一个外部电源,这样做的好 处是 i/o 线上不需要加强上拉,而且总线控制器不用在温度转换期间总保持高电平。这样 在转换期间可以允许在单线总线上进行其他数据 往来。注意当加上外部电源时,gnd 引脚不能悬 空。从 ds1820 读出信息或写入 ds1820 的信息, 仅需要一根接线(单线接口) 。 ds1820 的特性 单线接口:仅需一根口线与 mcu 连接。 测温范围为-55125,精度为 0.5。 a/d 变换时间为 200ms,九位温度读数。 6 用户自设定温度报警上下限,其值是非易失性的。 图 2.2 ds1820 引脚图 ds1820 引脚及功能 ds1820 的引脚如图 2.2 所示。 gnd:地。 dq:数据输入输出脚(单线接口,可作寄生供电) 。 vdd:电源电压。 ds1820 的内部结构 ds1820 的内部结构如图 2.3 所示。 图 2.3 ds1820 内部结构 ds1820 的测温原理:测温原理框图如图 2.4 所示。内部计数器对一个受温度影响 的振荡器的脉冲计数,低温时振荡器的脉冲可以通过门电路,而当到达某一设置高温时振 荡器的脉冲无法通过门电路。计数器设置为-55时的值,如果计数器到达 0 之前,门电路 未关闭,则温度寄存器的值将增加,这表示当前温度高于-55。同时,计数器被复位到一 个值,这个值由斜坡式累加器电路确定,斜坡式累加器电路用来补偿感温振荡器的抛物线 特性,然后计数器又开始计数直到零。如果门电路仍然未关闭,则重复以上过程。 ds1820 内部提供 0.5(标准值)的精度,它把温度值存储于 2 个字节中,分别叫做 msb 和 lsb。其中 msb 是符号位,当温度值小于 0时,则 msb 为 11111111;当温度值大于 0时,则 msb 为 00000000。lsb 是所测得的温度值,测温范围为-55125,测试精度 0.5。温度值和存储器 msb、lsb 的对应关系如表 2.2 所示。 温度表示值为 9bit,高位为符号位,其结构如下: 7 图 2.4 测温原理框图 表 2.2 温度值和存储器 msb、lsb 的对应关系 温度() 十进制 msb lsb 数据输出(二进制) 十六进制 数据输出 +12500000000 1111101000fa +2500000000 001100100032 +1/200000000 000000010001 000000000 000000000000 -1/211111111 11111111ffff -2511111111 11001110ffce -5511111111 10010010ff92 表 2.3 ds1820 的主要命令 rom 命令ram 命令 名称作用名称作用 读 rom(33h)读 ds1820 的序列号温度转换命令(44h)启动温度转换 匹配 rom(55h)用于多 ds1820 的定位读数据命令(beh)读取温度数据 跳过 rom(cch)针对在线 ds1820 使用写数据命令(4eh)写数据/命令 2.22.2 系统总体设计系统总体设计 8 本系统的任务是对温度进行实时监测与控制,系统测量范围为 0100,精度为 0.5。首先,由温度传感器 ds1820 对温度进行采样和转换,将测量结果送给单片机;单 片机将输入的温度值与内部指定单元的给定温度值 t 进行比较,根据比较结果,通过一个 执行机构可控硅对加热源(电阻炉、电热水壶和灯泡等)的开关状态进行控制。由于水的 惯性大,加之在这里对温度的控制精度要求不高,我在控温过程中采用了简单的开关控制。 系统原理方框图如图 2.5 所示。 图 2.5 系统原理方框图 根据任务要求,确定了器件和系统电路。该系统以高性能/价格比的 80c51 为核心,采 用新型单片数字温度传感器 ds1820 来测量温度,由双向可控硅驱动电路 moc3041 和双向可 控硅 tlc336a 组成输出控制通道。此外还有键盘/显示电路、报警输出电路等。整个系统结 构紧凑,性能可靠;不仅适用于水温控制,也可适用于工业环境温度的监测与控制。 2.32.3 温度信号输入电路设计温度信号输入电路设计 该部分主要完成对温度信号的采集和转换工作,由 ds1820 及其与单片机的接口部分组 成。由于采用了该芯片,温度测量电路变得非常简单。ds1820 的引脚及内部结构在上文已 经做了介绍,图 2.6 为其与单片机的接口电路。通过 dq 线与单片机的一根 i/o 线相连,就 能实现单片机对 ds1820 控制模式、温度值读取等操作。需要特别说明的是:ds1820 是在 严格的时序控制下进行正常操作的,换句话说,就是用比较复杂的软件来换取简单的硬件 接口。 9 图 2.6 ds1820 与单片机接口电路 2.42.4 电源模块设计电源模块设计 +5v直流稳压电源的工作电路采用集成三端稳压器7805 构成,电路图如图2.7所示。 集成三端稳压器因其稳压精度高、工作稳定可靠、外围电路简单、容易设计和制作、体积 小、重量轻、成本低、维修简单等优点,所以在各种电源电路中得到了普遍的应用。ic采用 集成三端稳压器7805,c5、c6分别为输入端和输出端滤波电容,rl 为负载电阻。 图2.7 +5v直流稳压电路原理图 工作原理:变压器tf将交流电网220v的电压变为所需要的交流电压,然后通过 1 v 2 v 全波整流将交流电压变成脉动的直流电压。由于此脉动的直流电压还含有较大的纹波, 2 v 必须通过滤波电容c5加以滤除,从而得到平滑的直流电压vi。但这样的电压还随电网电压波 动(一般有10左右的波动)、负载和温度的变化而变化。因而在全波整流、滤波之后,还 需接入集成三端稳压器进行稳压,使输出的直流电压能稳定在=+5v。 0 v +5v直流稳压电路参数设计 在设计中需要计算的参数有:变压器副边绕组的交流电压有效值,整流元件的参数, 2 v 电容c5、c6的数值以及集成三端稳压器的选用。 电容c5,可用下式进行计算: 10 min 0 11 0 25 ms i vi dt c 式中: 代表的最小值,10ms 为交流电网电压周期的一半。取=7.3v。因为 mini v i v mini v 在使用三端稳压器时,为了保证稳压性能,输入端和输出端间电位差至少应在2v 以上,当然 也不能太大,以减少器件功耗和避免器件损坏,一般对输出电压不大于18v的稳压器,输入电 压应小于35v。按输出电流应有10 %的余量,可取=1.1=1.1a。 0max i 0 i 通过计算,得:c53014f。因此取c5=3300f 10 电压 ,可用下式进行计算: 2 v 2 11.1 9.3 100 1 0.9 2 v c () 通过计算,得: =9.9v。为了留有一定裕量,取=10.5v。 2 v 2 v 反向耐压 桥式整流电路中,每个整流二极管在交流电网电压最高时承受的最大反向峰值电压为 。为了安全,整流管的反向耐压应当比上述vvvrm 3 . 16%101 5 . 1022 max2 )( 值大50以上,因此选择整流管时,其反向耐压应按下式考虑: vvrm25501 3 . 16)( 正向电流 桥式整流电路中,每个整流二极管的正向电流平均值是输出电流的一半,其最大值是 。由于在接通电源瞬间有相当大的冲击电流(即充电电流)通aii avd 55 . 0 2 1 max0max )( 过整流管,因此,整流管的参数(正向电流平均值)应比上述值大0.52倍。若按比上 f i f i 述值大0.8倍考虑,则。aii avdf 155 . 0 8 . 1)(8 . 1 max 根据上述计算,可选用1a/ 25v 或1a/ 50v 的桥堆。 变压器副边绕组电流 变压器副边绕组电流有效值比输出电流大,一般情况下,前者是后者的1.13 ac i 0max i 倍。这里我们取。因此,变压器副边绕组导线的粗细应按额 0max 1.81.8 1.12 ac iia 定电流(交流有效值)为2a选用。 三端稳压器的选用 根据要求,选择78系列集成三端稳压器可满足要求。另外,集成三端稳压器在输出电流 较大时,应配上散热器。散热器以叉指型散热器为佳。 电容c6 电容c6的作用:减小稳压电源输出端由输入电源引入的低频干扰,其数值在100f左右。 2.52.5 键盘键盘/ /显示电路设计显示电路设计 键盘电路 11 很多实际的应用系统均采用较少几个按键组成的非编码键盘,也称其为开关式键盘,或线 性键盘,本系统单片机与键盘连接如图2.8所示。每一个键对应p1口的一根口线,各键是相互独 立的。当某个键按下时,该键所对应得口线的电位就由高变为低电平,cpu访问并查询所有按键 接口线,即可识别是哪一个键按下,该键盘常应用于按键数较少的场合。施密特触发器具有回 差电压特性,能将边沿变化缓慢的电压波形整形为边沿陡峭的矩形脉冲,因此采用施密特电路 消除键盘抖动。但当所用键数较多时,采用此方法占用i/o口线太多,引线也较多。 图 2.8 单片机与键盘连接电路 其中,k1:温度设定/确定设定;k2:显示设定温度/上限值设定转为下限值设定; k3:上升 1;k4:下降 1。 显示电路 1. led 七段数码管 将发光二极管做成段状并按数码形式组合构成 led 段状数码管。在单片机应用系统中 最常采用的是七段 led,七段数码管分为共阳型和共阴型两种。 七段 led 数码管的显示可采用硬件译码直接译码显示,也可以用软件译码,用 i/o 线 直接控制显示。控制显示各数码加在数码管上的二进制数据称为段码,显示各数码共阴和 共阳七段 led 数码管所对应的段码见表 2.3。 表 2.3 七段 led 数码管的段码 显示数码共阴型段码共阳型段码显示数码共阴型段码共阳型段码 03fhcoha77h88h 106hf9hb7ch83h 12 25bha4hc39hc6h 34fhbohd5eha1h 466h99he79h86h 56dh92hf71h8eh 67dh82h “灭” 00hffh 707hf8h 87fh80h 96fh90h 2. 显示方式 由于静态显示占用较多 i/o 口资源,我们采用动态显示方式。动态显示是将所有数码 管的段码线对应并联在一起,由一个 8 位的输出口控制。显示不同数码时,由位线控制各 位轮流显示。位线控制某位选通时,该位应显示数码的段码同时加在段码线上,即每一时 刻仅有一位数码管是被点亮的,当轮流显示的速度较快时,由于人眼的视觉暂留现象,看 起来就像所有位同时显示一样。显示电路的连接如图 2.9 所示。 图 2.9 系统显示电路 2.52.5 控制量输出电路设计控制量输出电路设计 以前在设计输出控制通道是往往选用继电器,但由于其噪声大和机械性能方面的原因, 现在已经很少见了。随之而来的是无触点开关双向可控硅的使用,但在设计工作中,需 要采用同步过零触发电路进行同步触发,由于这部分电路包括比较器、单稳态电路和光电 13 隔离器等器件,芯片多,结构较复杂,在实际应用中容易出故障。因此,在设计当中,我 们在原有电路的基础上,采纳了 motorola 公司推出的单片集成可控硅驱动器件 moc3041 作为对输出的驱动和控制,从而顺利地解决了这一问题。 moc3041 芯片是一种集成的带有光耦合的双向可控硅驱动电路。它内部集成了发光 二极管、双向可控硅和过零触发电路等器件。它的内部结构和外部引脚如图 2.10 所示,由 输入和输出两部分组成,输入部分是一个砷化镓发光二极管,在 515ma 正向电流的作用 下发出足够强度的红外光触发输出部分,输出部分包括一个硅光敏双向可控硅和过零触发 器。在红外的作用下,双向可控硅可双向导通,与过零触发器一起输出同步触发脉冲,去 控制执行机构外部的双向可控硅。由 moc3041 组成的过零触发双向可控硅电路简单可 靠,电路如图 2.11 所示。 图 2.10 moc3041 内部结构和外部引脚 图 2.11 moc3041 和双向可控硅构成的输出通道图 其中:r8限流电阻,控制 led 的触发电流;r9门极电阻,提高控制极的抗干扰 的能力;r10控制回路限流电阻,保护 moc3041 中的双向可控硅;r11,c4构成吸收 回路,承受反向电压。该部分的工作过程是:当单片机的 p3.1 口输出为低电平时, moc3041 内部导通,g 端出现同步触发脉冲,控制可控硅导通,打开加热器;当 p3.1 为 高电平时,moc3041 内部截止,可控硅断开,关闭加热器。 2.62.6 报警及状态指示电路设计报警及状态指示电路设计 本设计当中,使用发光二极管配合软件程序编程实现温度报警和系统状态指示,其电 路如图 2.12 所示。 14 图 2.12 报警及系统状态指示电路 其中:l1保温状态指示;l2加热状态指示;l3电源状态指示;l4高温报警指 示;l5:低温报警指示。 该部分的工作过程是:单片机读取传感器检测温度 t 与温度设定值进行比较,通过相 应程序实现对应 p 端口置位“1”或清零,使对应发光二极管点亮显示报警及系统状态。 15 第三章第三章 软件系统设计软件系统设计 3.13.1 单片机主程序单片机主程序 本装置的软件包括主程序、键盘处理子程序、显示子程序以及有关 ds1820 的程序(初 始化子程序、键盘处理子程序、写程序和读程序)等。 主程序完成的功能是:启动 ds1820 测量温度,将测量值()与给定值(:温度报 x t l t 警下限值,:温度报警上限值)比较,若,则进入加热阶段,置 p3.1 为低电 h t xl tt 平。在该过程中继续对水温进行监测,当时,置 p3.1 为高电平,断开可控硅, xh tt 关闭加热器,等待下一次的启动命令。工作流程如图 3.1 所示。ram 及口地址分配见表 3.1。 表 3.1 ram 及口地址分配 地址功能 20h,21h,22h,23h标志寄存器 24h温度寄存器 27h,28h、暂存器 h t l t 29h显示位选寄存器 2ah,2bh,2ch温度设定暂存器 2dh,2eh、缓存器 h t l t 30h34h显示缓冲器 p1.0p1.3键盘输入 p2.6,p2.7led 地址选择 p3.0与 dq 相连 p3.1输出控制 p1.4p1.7,p2.5发光二极管指示 图 3.1 主程序流程图 3.23.2 键盘处理子程序键盘处理子程序 对于开关式键盘,因按键较少,其处理程序相对简单。本设计采用扫描的方法,首先 16 判别是否有健按下,再调用相应键位处理程序。 键盘说明: 按 k1 键后为设定温度操作,按 k3 键为上升,k4 键为下降。温度设定完成后再 次按 k1 确定设定。 在没有设定温度时,按 k2 键为显示所设定的温度;在设定时,按 k2 键表示设 定下限值(默认为设定上限值)。 键盘处理程序的流程图如图 3.2 所示。 图 3.2 键盘处理程序流程图 3.33.3 显示子程序显示子程序 本设计显示采用动态扫描显示方式,每一位 led 的选通时间为 12ms,降低了功率消 耗。这个时间不能太短,因为发光二极管从导通到发光有一定的延时,导通时间太短,发 光太弱人眼无法看清;这个时间也不能太长,否则占用 cpu 时间太长。 显示子程序的流程图如图 3.3 所示。 17 图 3.3 显示子程序流程图 3.43.4 ds18b20ds18b20 相关程序相关程序 3.4.13.4.1 ds18b20ds18b20 初始化程序初始化程序 ds1820 初始化流程图如图 3.4 所示。 3.4.23.4.2 ds1820ds1820 读写程序读写程序 写 ds1820 模块流程图如图 3.5 所示。读转换温度模块流程图如图 3.6 所示。读取温度 模块流程图如图 3.7 所示。 18 图 3.5 写 ds1820 模块流程图 图 3.4 ds1820 初始化流程图 19 图 3.6 读转换温度模块流程图 图 3.7 读取温度模块流程图 20 总结与展望总结与展望 在本次毕业设计中,我在曾老师的帮助下,系统地学习了单片机、传感器技术以及应 用程序编制等方面的知识。本次设计可以说是软硬结合,又以硬件为主。但由于实际工作 的需要以及个人的爱好,我还涉足了一些软件编制的工作。 当今科技发展迅速,单片机应用系统开发有着光明的前景。由于单片机经济实用、开 发简便等特点依然在工业控制、家电等领域占据了广泛的市场。所以我选择这样的毕业设 计课题,并且能通过此次设计来提高自己软件编制和硬件电路设计的能力。在我完成这次 毕业设计的过程中,当看到自己将专业知识用于解决实际的问题时,那份成就感和喜悦感 是难以形容的。但是,在实际的编程以及调试程序过程中,我发现自己所应该学的太多太 多。光靠自己在书本上所学过的这点知识是远远不够的,真正地认识到了工作就是学习的 道理。 回首毕业设计这段日子,虽然过的很紧张,但我却感到很充实。由于我以前对单片机 的实际应用和程序编制理解不深,所以毕业设计的任务十分紧迫。通过对本系统的设计, 我学习到了硬件开发和软件开发的基本流程并有了一定的驾御此开发过程的能力。编程的 过程中,虽然不乏辛苦,但更多的是程序编写完成后的喜悦。 总之,这次毕业设计对我来说是一次比较全面的、富有创造性和探索性的锻炼,完成 了我选题时的心愿。同时,曾老师无私的敬业精神以及同学们的热情帮助也令我深有感触, 对于我今后的学习、工作和生活都将是受益无穷的! 21 致谢致谢 我的毕业设计是在曾明如教授的悉心指导下完成的。曾老师学识渊博,治学严谨,在 工作中兢兢业业,辅导学生时循循善诱、极其认真耐心,让我深刻地体会到真正的为人师 表的风范。在毕业设计中我不仅锻炼了自己的动手能力,更重要的是学习了应该怎样做事 做人。我所取得的进步和曾老师的谆谆教导和悉心指导是分不开的,在这里我真诚地感谢 曾老师! 同时我要感谢我的母校,感谢在四年的大学生活中给予我关心的帮助的所有老师和同 学,感谢他们这四年的付出,让我学会求知,学会学习。 最后,我要感谢我的父母,在十多年的求学生涯中,他们给了我始终如一的关心,对 我生活上的悉心照顾,使我有坚定的信心克服困难,完成学业。 再一次对曾老师表达我的深深的谢意! 22 参考文献参考文献 1何利民.单片机应用文集m.北京:航空航天大学出版社,1998 2 邬宽明著.mcs-51 系列微处理器系统原理、功能集成与应用m.北京:航空航天 大学出版社,2000.1. 3 李晓荃.单片机原理与应用m.北京:电子工业出版社,2002.11 4 刘瑞新著.单片机原理及应用教程m.北京:机械工业出版社,2003.7 5 胡有才著.单片机原理及其接口技术m.北京:清华大学出版社,1996 6 姜忠良,陈秀云.温度的测量与控制m.北京:清华大学出版社,2005.9 7 鲍可进.pid 参数自整定的温度控制j.江苏理工大学学报,1995(6) 8 张国清,陈淑坤.简单实用的温控电器j.仪器与未来,1991(7)22 9 吴为民,王仁丽.温度控制系统的发展概况j.工业炉,2002(24)1-10 10 史博华.基于单片机的水浴温度控制系统的设计j.电子世界,2004(10) 11 钱月花.用 protel 99se 辅助分析与设计+5v 直流稳压电源j.沙洲职业工学院学报, 2003(6) 12 陈庆官,薛武.高精度数字式单线温度传感器j.传感器技术,1998(17) 13 6-pin dip zero-cross optoisolutors triac driver output.motorola semiconductor technical data,1998 14 dallas semiconductor data books.dallas semiconductor corporation,1995 15 thomas kailath,adaptive controlj.ieee,2004(2) 16 p. valigi, m.l. fravolini,improved temperature control of a batch reactor with actuation constraintsj. control engineering practice,2005(26) 23 附录附录 i i 部分程序代码部分程序代码 org 0000h sjmp main org 0025h main: mov sp,#60h ;主程序开始,初始化 mov 20h,#00h ;标志位清零 mov 21h,#08h ;设定的初始位为第一位 mov 29h,#0feh ;显示的位选信号 lcall zijian ;自检 lcall readthtl ;读上限温度 th,下限温度 tl lcall turnth ;转换 th lcall display ;显示 th setb it0 ;下降沿触发 setb ex0 ;允许外中断 0 中断 setb ea ;开外中断 0 loop: lcall delay ;延时以保证转换结束 lcall get_temp ;读转换温度值 lcall turn ;数制转换 lcall display ;送显示 clr c ;比较转换值与设定值 mov a,24h cjne a,2eh,loop1 ;不等跳 loop1 sjmp hotting ;与下限值相等跳 hotting loop1: jc hotting ;温度小于下限值跳 hotting mov a,24h ;温度大于下限值,与上限值比较 clr c cjne a,2dh,loop2 ;不等跳 loop2 sjmp stophot ;相等跳 stophot loop2: jnc stophot ;温度大于上限值跳 stophot sjmp keep ;温度小于上限值且大于下限值跳 keep hotting:setb p3.1 ;小,加热 setb p1.6 ;置加热状态灯 setb p2.5 ;置低温状态灯 clr p1.7 ;关保温状态灯 clr p1.4 ;关高温状态灯 keep: sjmp loop ;保持原态 stophot:setb p1.7 ;亮保温状态灯 setb p1.4 ;亮高温状态灯 clr p2.5 ;关低温状态灯 clr p3.1 ;关闭加热器 clr p1.6 ;关闭加热状态灯 sjmp loop ;主程序结束 24 zijian: mov 30h,#08h ;自检显示器(888.8 度) mov 31h,#08h mov 32h,#13h mov 33h,#08h mov 34h,#13h setb p1.5 ;电源状态灯亮 setb p1.6 ;加热状态灯亮 setb p1.7 ;保温状态灯亮 setb p2.5 ;低温状态灯亮 setb p1.4 ;高温状态灯亮 mov r3,#0ffh ;自检延时倍数 wait0: acall display ;调显示,自检显示器 djnz r3,wait0 clr p1.6 ;加热状态灯灭 clr p1.7 ;保温状态灯灭 clr p2.5 ;低温状态灯灭 clr p1.4 ;高温状态灯灭 ret turnth:mov 2dh,27h ;th放入缓冲区 mov 24h,27h ;转换 th,入口为 24h acall turn mov 2ah,30h ;送 th值到设定温度子程序的入口 mov 2bh,31h mov 2ch,32h mov a,2ch clr c subb a,#0bh mov 2ch,a mov 33h,#00h mov 34h,#15h ret turntl:mov 2eh,28h ;tl放入缓冲区 mov 24h,28h ;转换 tl,入口为 24h acall turn mov 2ah,30h ;送 th值到设定温度子程序的入口 mov 2bh,31h mov 2ch,32h mov a,2ch clr c subb a,#0bh mov 2ch,a mov 33h,#00h 25 mov 34h,#15h ret display:mov r0,#30h ;入口参数为 30h,31h,32h,33h dis: mov dptr,#tab ;查表 mov a,r0 movc a,a+dptr mov dptr, #7fffh movx dptr, a ;送段码 inc r0 mov dptr,#0bfffh mov a,29h ;位选 movx dptr,a here: djnz r4,here setb c rlc a mov 29h,a jb acc.5,dis ;4 位显示完毕? mov 29h,#0feh ret tab: db 3fh,06h,5bh,4fh,66h,7dh,07h,7fh,6fh,00h,0bfh db 86h,0dbh,0cfh,0e6h,0edh,0fdh,87h,0ffh,0efh,79h get_temp:clr ea ;读取温度模块 acall ini ;初始化 mov a,#0cch ;跳过 rom 命令(针对在线 ds1820) acall write ;写数据模块,送入跳过 rom 命令 mov a,#44h ;送入温度转换命令 acall write acall i ni ;温度转换完成,再次初始化 ds1820 mov a,#0cch acall write ;送入跳过 rom 命令 mov a,#0beh ;送入读温度暂存器命令 acall write ;写命令 acall read ;调读数据模块 mov 24h,a setb ea ;开中断 ret setthtl:clr ea acall ini ;初始化 mov a,#0cch ;跳过 rom acall write mov a,#4eh ;写数据命令 26 acall write mov a,2dh acall write mov a,2eh acall write acall ini ;初始化 mov a,#0cch ;跳过 rom acall write mov a,#48h acall write acall readthtl mov a,27h cjne a,2dh,setthtl mov a,28h cjne a,2eh,setthtl setb ea ret readthtl:clr ea ;出口为 27h,28h acall ini ;27h 为高字节 mov a,#0cch ;28h 为低字节 acall write mov a,#0b8h ;把非易性存储器中的值召回暂存器 acall write acall ini mov a,#0cch ;送入跳过 rom 命令 acall write mov a,#0beh ;送入读温度暂存器命令 acall write ;写命令 acall read acall read acall read mov 27h,a ;温度值高位字节送 27h acall read mov 28h,a ;温度值低位字节送 28h setb ea ret ini: clr ea ;ds1820 的初始化 clr p3.0 ;ds1820 总线为复位低电平 mov r2,#100 i1: clr p3.0 djnz r2,i1 ;总线复位电平保持 200s setb p3.0 ;释放 ds1820 总线 27 mov r2,#15 i2: djnz r2,i2 ;释放 ds1820 总线保持 30s clr c ;清存在信号 orl c,p3.0 jc ini ;存在吗?不存在则重新来 mov r6,#40 i3: orl c,p3.0 ;ds1820 总线变高否? jc i4 djnz r6,i3 sjmp ini i4: mov r2,#120 i5: djnz r2,i5 ret write: clr ea ;写 ds1820 模块 mov r3,#8 ;写入 ds1820 的字节数 wr1: setb p3.0 mov r4,#4 rrc a ;把一个字节 da
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- VB语言难点突破与试题及答案
- 网络管理员考试的资源整合试题及答案
- 网络管理员实施方案试题及答案总结
- 行政法在区域治理中的应用探讨试题及答案
- 2025年软件设计师考试开发工具选择指导试题及答案
- 2025年软考成功重点及试题及答案
- 掌握程序调试与优化技巧试题及答案
- 中标合作协议书几份
- 面试表现提升的自我训练计划
- 信息处理技术员考试开卷题目及答案
- 住院部临床科室医疗质量考核表
- 关爱生命-健康成长家安全教育家长会课件
- 公司经营管理手册目录
- 基础会计练习题及答案
- 限高杆施工图 2
- 5万吨钢筋加工配送中心项目
- 初中数学北师大九年级下册 直角三角形的边角关系谢荣华 教学设计《锐角三角函数》
- 老年患者营养支持途径及配方选择课件
- 二环庚二烯(2,5-降冰片二烯)的理化性质及危险特性表
- 【审计工作底稿模板】FK长期借款
- arcgis网络分析.
评论
0/150
提交评论