空调控制器课程设计(编辑修改稿)内容摘要:

感器将非电物理量转换成电信号才能完成温度测量和控制的任务。 测量电路 通常传感器的输出可能是电阻值、电容值或者电流值,这些信号不适宜进行直接测量,往往需要转换成电压信号,传递给后面的 A/D 转换器,所以很多时候需要搭建简单 的测量电路,使得传感器输出的参数变化转换为电压的变化。 A/D 转换器 无论是计算机,还是各种 MCU、或者 DSP 等处理器只能处理数字信号,即使经过处理的信号仍然只是模拟物理量,还不能直接和这些处理器通信,而 A/D 转换器就是实现从模拟量到数字量转换的关键器件。 模数转换技术是实现各种模拟信号通向数字世界的桥梁。 温度测量信号的采集 LM135 系列的性能特点 在设计中我用的温度采集电路是热电偶冷端温度补偿电路,这个电路是由 LM335 构成的 K 型热电偶冷端温度补偿电路。 下面介绍 LM335 的性能特点如下: ( 1) 它属于电压输出式精密集成温度传感器,电压温度系数为 +10mV/K,输出电压与热力学温度成正比。 ( 2) 测温精度高,测温范围宽。 LM335 测温范围为 — 40~ +100℃。 ( 3)动态阻抗低。 当工作电流为 ~ 5mA 时,其动态阻抗仅为 ~  ( 4)具有类似于稳压管的特性,使用时须经过限流电阻接正电源,亦可由集成恒流源给它提供恒定的工作电流。 ( 5)价格低,易校准。 利用一只 10K 电位器即可校准 +25℃ 时的输出电压值。 热电偶的工作原理 热电偶的工作原理可以这样解释 ,当两种不同的 导体或半导体 A 或 B 组成一个回路,其两端相互连接时,只要两端(一端温度为 T,称为工作端或者是热端;另一端温度为 0T ,称为自由端,也称参考端或者冷端)的温度不同,则回路中就会有电流产生,回路中存在的电动势称为热电动势。 热电偶就是利用这一效应来工作的。 热电偶冷端温度补偿电路 由 LM335 构成的 K 型热电偶 冷端温度补偿电路如图 42 所示。 利用 LM335 来测量空调控制器设计 7 热电偶的冷端温度 0T , 1R 为限流电阻, 1RP 是校准温度的电位器。 LM335 的输出电压经过2R 和 6R 分压之后,得到所需的补偿电压 BU ,其电压温度系数为式 ( 41)。 6264221 0 / 1 0 / 4 1 /1 0 2 4 2 2RK m V K m V K V KR R K      ( 41) 3412105U 4 AL M 30 8AD8L M 33 5D7L M 32 9BR P 2 KR 1010KR969 8 KR710 2 KR629 4 KR510KC 1310 0 PV C CV C CR0 KR P 110KR 10422R 1110KA D C 0K 型热电偶 图 42 K 型热电偶冷端温度补偿电路 因 BU 接运算放大器 LM308A 的反相输入端,故可视为 41 /K V K。 K 型热电偶产生的温差热电势 e 则接到 LM308A 的同相输入端。 经 LM308A 放大之后就实现了热电偶的冷端温度补偿。 考虑到 LM335 的输出电压与热力学温度成正比,要想输出与摄氏温度成正比的电压信号 OU ,还应扣除 LM335 在 0℃时的输出电压 1OU。 现利用 LM329B 型 基准电压源和精密多圈电位器 2RP ,得到 1OU ,也加至 LM308A 的反相输入端,因此实际补偿电压就变成了 1B B OU U U。 最终可使输出电压 (10 /OU mV ℃) t。 键盘 输入电路 键盘输入电路如图 43 所示。 S B 10S B 21S B 32S B 43S B 54S B 65S B 76S B 87S B 98S B 109S A 1S A 2S A 3P A 0P A 1P A 2P A 3P A 4P A 5P B 1 P B 2 P B 3 P B 4 图 43 键盘 输入电路 键盘输入用到了 8255, PB 和 PC 口是 8255 两个八位输出口 , 8255 控制 端口 的 地址分别 为 8000H, 8001H, 8002H 和 8003H, 它们由地位地址 A0, A1 加以区别, A0, A1从地位地址锁存器 74LS373 引出,外设芯片 8255 的接口配置与外部存储器的接口配置方式相同,同样占据数据总线和地址总线。 数码显示电路 数码显示 电路如图 44 所示。 1G11A 122Y 431A 242Y 351A 362Y 271A 482Y 19GND102A 1111Y 4122A 2131Y 3142A 3151Y 2162A 4171Y 1182G19V C C20U574 L S 24 4a b c d e f gdpL E D 5LEDP C 0P C 1P C 2P C 3P C 4P C 5P C 6P C 712345678161514131211109R P 1R E S P A C K 4a b c d e f gdpL E D 1LEDa b c d e f gdpL E D 2LEDa b c d e f gdpL E D 3LEDa b c d e f gdpL E D 4LEDa b c d e f gdpL E D 6LED1R12R23R34R45R56R67R7GND8V C C9Q710Q611Q512Q413Q314Q215Q116U L N 20 03U7U L N 20 03P B 0P B 1P B 2P B 3P B 4P B 5V C CV C C 图 44 数码 显示 电路 数码管采用共阴极方式, PA 口是 8 位输入口,用于读入扫描键盘的位置。 8255 的片选地址 CS 是由高八位地址 (A8~ A15)通过 74LS138 译码产生的。 从 PA0~ PA3 查询扫描行的输入状态,从 PA4~ PA7 查询功能键的输入状态,判断是否有数字键或功能键按下。 8255 芯片 简介 8255 是 Intel 公司生产的可编程并行 I/O 接口芯片,有 3 个 8 位并行 I/O 口。 具有 3 个通道 3 种工作方式的可编程并行接口芯片( 40 引脚)。 其各口功能可由软件选择,使用灵活,通用 性强。 8255 可作为单片机与多种外设连接时的中间接口电路。 8255 作为主机与外设的连接芯片,必须提供与主机相连的 3 个总线接口,即数据线、地址线、控制线接口。 同时必须具有与外设连接的接口 A、 B、 C 口。 由于8255 可编程 ,所以必须具有逻辑控制部分,因而 8255 内部结构分为 3 个部分:与 CPU连接部分、与外设连接部分、控制部分。 8255 的引脚功能如下: RESET: 复位输入线,当该输入端处于高电平时,所有内部寄存器(包括控制寄存器)均被清除,所有 I/O 口均被置成输入方式。 空调控制器设计 9 CS: 芯片选择信号线,当这个输入引脚为 低电平时 , 即 CS =0 时 , 表示芯片被选中,允许 8255 与 CPU 进行通讯 , CS =1 时 , 8255 无法与 CPU 做数据传输。 RD: 读信号线,当这个输入引脚为低电平时 , 即 RD =0 且 CS =0 时 , 允许 8255通过数据总线向 CPU 发送数据或状态信息,即 CPU 从 8255 读取信息或数据。 WR: 写入信号,当这个输入引脚为低电平时 , 即 WR =0 且 CS =0 时 , 允许 CPU将数据或控制字写入 8255。 5 系统软件 软件流程图 图 51 空调控制器的软件流程图 开始 系统初始化 开 A/D 转换器中断 初始化 A/D 转换器 温度采集 数码管显示 有键按下。 温度超出范围。 调用空调控制模块 是否异常。 调用报警 返回 Y N Y N Y 空调控制器设计 11 各部分程序设计 主程序 MAIN: MOV WDTCN,0DEH MOV WDTCN,0ADH MOV XBR2,40H LCALL PORT LCALL DIGITAL LCALL INT8255 MOV EIE2,10H MOV P3IF,00H MOV AMX0CF,00H MOV AMX0SL,00H MOV REF0CN,03H MOV ADC0CF,58H MOV ADC0CN,0C0H SETB EA ORL ADC0CN,10H LOP: LCALL LCD AJMP LOP 在主函数之前先设置 A/D 转换器的 中断入口, 然后再编写主程序,在主函数最起初先禁止看门狗程序,然后使能交叉开关。 然后依次调用 I/O 口初始化程序,要显示的数的断码初始化程序,以及 8255 初始化程 序。 然后是设置各端口为漏极开路,即低电平有效。 接下来是 A/D 转换器的初始化, 选择 时钟周期为 1MHz,系统时钟是 12MHz,增益大小选择 为 1,所以 ADC0CF 设为 58H,启动方式为写 BUSY=1,数据位右对齐,所以 ADC0CN设为 C0H。 由于 A/D 转换器是采集外界温度的,采集结束之后还要用数码管显示出来,所以在执行完 A/D 中断结束之后,返回来要接着条用显示的程序。 因为 A/D 转换器采集外界的温度是随时更新的,因此, 在这里是循环调用的 I/O 口初始化 PORT: MOV EMI0CF,2CH MOV P74OUTt,3FH RET I/O 口是单片机的重要组成部分,所以在编写程序时要对它进行初始化。 让 EMIF 工作在地址 /数据复用方式,只用外部存储器, ALE 高 /低脉冲占 1 个 SYSCLK 周期,所以EMI0CF 设为 2CH; P7 为漏极开路方式, P P P6 为推拉方式,所以设置 P74OUT 为3FH。 8255 初始化 int8255: mov DPTR,8003H mov a,80H movx @DPTR,a ret 控制字设为 80H,即设置 PC 和 PB 口为输出, PA 口为输入。 8003H 为 8255 的控制寄存器地址。 温度采集 ADC0: mov a,adc0l mov 33H,adc0l swap a anl a,0FH mov 30H,a mov a,adc0h mov 34H,adc0h swap a anl a,0F0H orl a,30H mov 31H,a lcall SC lcall COMPARE lcall lcd anl dc0, 0dfH orl adc0, 10H mov eie2,10H reti 把温度转换成易于单片机处理的数字信号,是通过 A/D 转换器来实现的。 C8051F020有两个 A/D 转换器,分别是 ADC0 和 ADC1, ADC0 是 12 位的 A/D 转换器,而 ADC1是 8 位 的 A/D 转换器。 在此次设计中。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。