




已阅读5页,还剩23页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
智能仪表设计报告书 智能仪器课程设计智能仪器课程设计 报报 告告 书书 题目号 10 题目 智能数字显示仪表设计 班级 自动化 0804 学号 姓名 2012 年 12 月 11 日 目 录 摘 要 1 1 设计要求 1 2 设计原理 1 3 硬件电路设计 1 3 1 STC89C51 单片机电路设计 2 3 1 1 主控芯片 STC89C51 的接口连接 2 3 1 2 数码显示电路 3 3 1 3 LED 和按钮电路 3 3 1 4 电源电路 4 3 1 5 I2C 接口存储器 24C02 和蜂鸣器的电路连接 4 3 1 6 电平转电路 5 3 1 7 AD 转换器 TLC1549 的电路连接 5 3 1 8 DA 转换器 TLC5615 的电路连接 7 3 2 热电阻 CU50 信号调理电路 8 3 3 功率输出电路 9 3 4 4 20MA 电流输出电路 10 2 5 硬件电路 PCB 板 10 4 软件设计 12 4 1 TLC1549 数据获取程序 12 4 2 24C02 读写程序 13 4 3 报警程序 15 4 4 数据处理 15 4 4 1 数字滤波 15 4 4 2 标度变换 16 4 4 3 非线性校正 17 4 4 4 位式控制算法 18 4 5 数据扫描程序 19 4 6 按键处理程序 20 总结 23 参考文献 24 附录 单片机电路总图 25 1 智能测温仪表 摘 要 本课程设计是基于 CU50 传感器和 STC89C51 单片机的智能测温仪表 智能 测温仪表电路主要由 STC89C51 单片机 按钮 数码管 LED 显示 串行通信接 口 电源 ADC E2PROM 等电路组成 其以 51 单片机为核心控制部件 利用 CU50 阻值随温度变化的特点 将其和其他三个电阻构成非平衡电桥 因而 温 度的变化可转化成电桥输出微弱电压信号的变化 电压信号经集成运放电路放 大后送到 A D 转换器 将模拟信号变换成数字信号 单片机根据输入量和设定 量进行运算 将结果送到数码管显示 完成对温度的测量 软件方面采用 C 语 言来进行程序设计 使指令执行速度快 节省存储空间 便于扩展和更改 1 设计要求 实现智能数字显示仪表 要求 8 位数码管显示 4 位显示测量值 4 位显示 设定值 4 输入按钮 功能选择 数码管选择 数字增加 数字减少 可设 定上下限报警 蜂鸣器报警 适配 Cu50 热电阻 测温范围为 0 130 采用 位式 两位 三位 具有滞环 控制 并用晶闸管过零驱动 1000W 电加热器 电源电压为 AC220V 2 设计原理 根据系统的设计要求 本方案采用单片机系统为核心 采用热电阻 CU50 作 为温度传感器采集温度信号 经信号放大器放大后 送到 A D 转换芯片 经单 片机检测处理温度信号 通过存储器对温度数据进行存储 并通过 8 位数码管 对温度进行显示 还可以通过功率驱动电路用单片机驱动具有交流 220V 电压的 电阻性负载 如果需要输出与温度成正比的 4 40mA 电流 则需要 D A 转换芯 片将单片机处理的数字信号变成模拟信号 原理设计方框图如下 单片机ADC变送器传感器 存储器 功率驱动电路 数码显示 DAC模拟量输出电路 3 硬件电路设计 由系统要求知 该测温仪表需要如下电路模块 1 单片机电路 包括单片机最小系统 ADC 数码显示 按键 LED灯 蜂鸣器 电源等 原理设计方框图 2 2 热电阻CU50信号调理电路 3 功率输出电路 4 4 20mA电流输出电路 该测温仪表原理框图如下图所示 CU50信号调理TLC1549 按键 STC89C51 单片机系统 24C02 8位数码管显示 MOC3063隔离驱动功率控制 TLC5615电压 4 20mA转换 LED灯 蜂蜜器 3 1 STC89C51单片机电路设计 智能仪表单片机电路主要由STC89C51单片机 数码管 LED 按钮 电源 ADC DAC E2PROM 蜂鸣器 串行通信接口等电路组成 3 1 1 主控芯片 STC89C51 的接口连接 P1 0 1 P1 1 2 P1 2 3 P1 3 4 P1 4 5 P1 5 6 P1 6 7 P1 7 8 RST 9 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 RD 17 XTAL2 18 XTAL1 19 GND 20 P2 0 21 P2 1 22 P2 2 23 P2 3 24 P2 4 25 P2 5 26 P2 6 27 P2 7 28 PSEN 29 ALE PROG 30 EA Vpp 31 P0 7 32 P0 6 33 P0 5 34 P0 4 35 P0 3 36 P0 2 37 P0 1 38 P0 0 39 Vcc 40 U3STC 89C 51 GND 30pF C1 30pF C2 12 11 059M Y1 10u C3 5 5 GND P1 0 P1 1 P1 2 P1 3 P1 4 P1 5 P1 6 P1 7 P3 6 P3 7 P3 0 P3 1 P3 2 1 2 3 4 5 6 7 8 9 1K RPC1 A09 102GP P0 0 P0 1 P0 2 P0 3 P0 4 P0 5 P0 6 P0 7 5 P3 3 P3 4 P3 5 P2 7 P2 6 P2 5 P2 4 P2 3 P2 2 P2 1 P2 0 单片机采用11 059MHz的时钟 单片机的P0口作为I O使用时 需要外接上 拉电阻 在本系统中 上拉电阻的阻值为1K STC98C51 测温仪表原理框图 3 3 1 2 数码显示电路 OE 1 LE 11 D1 3 Q1 2 D2 4 Q2 5 D3 7 Q3 6 D4 8 Q4 9 D5 13 Q5 12 D6 14 Q6 15 D7 17 Q7 16 D8 18 Q8 19 VCC 20 GND 10 U1 74HC373 OE 1 LE 11 D1 3 Q1 2 D2 4 Q2 5 D3 7 Q3 6 D4 8 Q4 9 D5 13 Q5 12 D6 14 Q6 15 D7 17 Q7 16 D8 18 Q8 19 VCC 20 GND 10 U2 74HC373 5 5 S1 S2 S3 S4 S5 S6 S7 S8 GND P0 0 P0 1 P0 2 P0 3 P0 4 P0 5 P0 6 P0 7 P0 0 P0 1 P0 2 P0 3 P0 4 P0 5 P0 6 P0 7 P1 7 P1 6 a b c d e f g K4 6 f 10 K3 8 K1 12 e 1 c 4 DP 3 b 7 a 11 g 5 K2 9 d 2 DIG1DIG2DIG3DIG4 DS2 S03641A K4 6 f 10 K3 8 K1 12 e 1 c 4 DP 3 b 7 a 11 g 5 K2 9 d 2 DIG1DIG2DIG3DIG4 DS1 S03641A duanxuan 0 7 DPDP DP a a b b c c e e d d f f g g S1 S2 S3 S4 S5 S6 S7 S8 weixuan 0 7 两排各 4 个数码管显示 分别显示测量值与设定值 本系统采用总线法扫 描数码管 其采用两个 8D 锁存器 74HC373 分时锁存段码和位码 其可以节省 I O 空间 锁存器 74HC373 的功能为 OE 是输出使能控制 OE 1 时 输出高阻 OE 1 时 输出等于锁存器输出 LE 为锁存控制端 LE 1 时 锁存器输出与输 入相同 LE 0 时 锁存器锁存输入信号 本系统中 单片机的 P1 6 1 时 P0 口输出段码 74HC373 锁存段码 再 P1 7 1 时 P0 口输出位码 74HC373 锁存位码 这时一位数码管被点了 延时 一段时间后输出其他数码管数据 3 1 3 LED 和按钮电路 510 R9 510 R10 510 R11 510 R12 5 S1 S2 S3 S4 GND LED1 LED2 LED4 LED3 1 2 3 4 PLED 1 2 3 4 PAN 4 4 个 LED 灯用于显示报警 动作等 直接连接到单片机引脚 低电平有效 四个按钮的作用分别为 功能选择按钮 数码管选择按钮 数值加 1 按钮和数 值减 1 按钮 按钮直接连接单片机 低电平有效 3 1 4 电源电路 1 2 0 UY1 POWER DY1 DY4 DY3 DY2 2 3 1 SY1 1K RY1 LEDY1 A12 A5 100uF CY3 100uF CY1 100uF CY2 A5 104 CY4 10uH LY1 104 CY5 100uF CY6 0 RY2 5 GND AGND AGND IN 1 2 OUT 3 GND UY3 LM7805CT IN 1 2 OUT 3 GND UY2 LM7812CT AGND A12 104 CY7 104 CY8 电源电路的输入可以是市售 220V AC 输入 12V 直流输出的电源适配器 也可以是输出 12V 的开关电源 电源电路输出为 12V 和 5V 电压 本系统采用 固定输出稳压电源 7812 和 7805 输出 12V 和 5V 图中的整流可以使连接输入 时 不必考虑电源的极性 发光二极管用于显示电源的有无 3 1 5 I2C 接口存储器 24C02 和蜂鸣器的电路连接 E0 1 E1 2 E2 3 GND 4 SDA 5 SCL 6 WC 7 VCC 8 UC1 M24C02BN6 5 GND 10K RC2 10K RC1 LSF1 18K RF1 QF1 GND 5 P3 7 P3 6 P3 2 5 REF 1 ANALOG IN 2 REF 3 GND 4 CS 5 DOUT 6 I O CLK 7 Vcc 8 TLC1549 24C02 系列 E2PROM 芯片地址的固定部分为 1010 E2 E1 E0 引脚接高 低 电平后得到确定的 3 位编码 形成的 7 位编码即为该器件的地址码 由于这里 只寻址 1 个 24C02 三个地址输入脚都接地 所以该芯片的地址为 1010 000 x x 为读写位 24C02 用于保存设定值 其串行数据引脚 SDA 接单片机的 P3 6 时钟引脚 SCL 接单片机的 P3 7 蜂鸣器用于报警 三极管的基极接单片机的 P3 2 高电平有效 3 1 6 电平转电路 1 2 3 4 5 6 7 8 9 11 10 JM1 5 GND 104 CM3 330RM1 330RM2 GND GND 1uF CM5 1uF CM4 1uFCM1 1uFCM2 104 CM6 13 10 11 8 12 9 14 7 C1 1 C2 4 GND 15 C1 3 VCC 16 R1 T1 T2 R2 C2 5 V 6 V 2 U4 MAX232AESE P3 1 P3 0 GND 单片机的电平为 TTL 电平 由于 RS 232C 的接口电平与 TTL 兼容接口电平 标准不同 所以该接口与 TTL 兼容电平连接时需要进行电平转换 本系统采用 MAX232 芯片进行电平转换 图中 MAX232 芯片内部的电源转换器与外接电容 CM1 CM2 CM4 CM5 将 5V 电源电压转换成 8 5V 电压 电容 CM4 CM4 拥有 电源去耦 目的是滤去电源噪声 3 1 7 AD 转换器 TLC1549 的电路连接 TLC1549 是美国德州仪器公司生产的具有串行控制 连续逐次逼近型的 10 位模数转换器 该芯片具有两个差分基准电压 高阻输入和一个三态输出的三 线接口 由于 TLC1549 采用 CMOS 工艺 内部具有自动采样保持 可按比例量 程校准转换范围 抗噪声干扰功能 而且开关电容设计使在满刻度时总误差最 大仅为 1 LSB 4 8 mV 因此可广泛应用于模拟量和数字量的转换电路 1 该芯片的引脚功能说明如下 REF REF 引脚 正负参考电压引脚 ANALOG IN 模拟电压输入端 I O CLK 时钟引脚 DOUT 数据输出引脚 片选信号 CS 6 2 TLC1549 在工作温度范围内的极限参数 电源电压范围 0 5V 6 5V 125 输入电压范围 0 3V VCC 0 3V 输出电压范围 0 3 V VCC 0 3V 正基准电压 VCC 0 1V 负基准电压 0 1 V 峰值输入电流 20mA 峰值总输入电流 30mA 3 主要时序图 TLC1549具有6种串行接口时序模式 这些模式是由I O CLK周期和定义 CS 根据TLC1549的功能结构和工作时序 其工作过程可分为3个阶段 模拟量采样 模拟量转换和数字量传输 TLC1549的时序图如下 12345678910 A0A1A2A3A4A5A6A7A8A9低电平 采样周期 前次转换结果 LSBMSB 1 B9 A D转 换周期 小于21us 上电时必须为高电平 CS I O CLK DOUT 由时序图可以知 最大转换时间 全部时钟数据 存取 采样和21 conv tus 转换 2010I Otus 1 2 PA1 JADC AGND 1K RA1 104 CA1 10K RPA1 104 CA2 UA1 TL431 A5 AGND A5 P1 0 P1 1 P1 2 REF 1 ANALOG IN 2 REF 3 GND 4 CS 5 DOUT 6 I O CLK 7 Vcc 8 TLC1549 STC89C51 单片机与 TLC1549 之间的接线如上图所示 由于 STC89C51 不具 有 ADC 因此扩展了 10 位 ADC 芯片 TLC1549 其每个 ADC 输出数字代表 4mV TLC1549 与单片机的 P1 0 P1 1 P1 2 引脚连接 JADC 连接器用于输入 模拟信号 TL431 构成 TLC1549 的参考电压 电位器 RPA1 可以精确调整 TLC1549 的正参考电压 REF 参考电压 REF 为 4 096 负参考电压 REF 接地线 模拟电压输入端接热电阻 Cu50 信号调理电路的输出电压 TLC1549 的时序图 7 DIN 1 SCLK 2 CS 3 DOUT 4 AGND 5 REFIN 6 OUT 7 V 8 DD TLC5615 3 1 8 DA 转换器 TLC5615 的电路连接 TLC5615是一个串行10位DAC芯片 性能比早期电流型输出的DAC要好 只需 要通过3根串行总线就可以完成10位数据的串行输入 易于和工业标准的微处理 器或微控制器 单片机 DSP 进行接口 适用于数字失调与增益调整以及工业控 制场合 1 该芯片的引脚功能说明如下 DIN 串行数据输入端 SCLK 串行时钟输入端 芯片选择端 低电平有效 CS DOUT 用于级联时的串行数据输出端 AGND 模拟地 REFIN 参考电压输入端 OUT DAC 模拟电压输出端 VDD 正电源端 2 主要时序图 TLC5615的 SCLK与DIN之间的时序如下图所示 由手册可知图中给出的CS 各种时间参数的最小值中的最大数值为50ns 因此只要给出的时间参数大约 50ns就可以满足时序要求 MSB CS SCLK DIN DIN 1 SCLK 2 CS 3 DOUT 4 AGND 5 REFIN 6 OUT 7 V 8 DD TLC5615 10K RPD1 1 2 PD1 JDAC A5 AGND AGND P1 3 P1 4 P1 5 STC89C51 单片机与 TLC5615 之间的接线如上图所示 TLC5615 采用 5V 模 拟电压作为参考电压 通过电位器 RPD1 可以精确调整参考电压 单片机的引脚 P1 3 P1 4 和 P1 5 和 TLC5615 连接 JDAC 连接器用于输出模拟信号 DAC 输 出电压范围可达 0 25V 4 75V TLC5615 的时序图 8 3 2 热电阻 CU50 信号调理电路 在工业应用中 常使用热电阻测量中 低温度 铜电阻属于热电阻 其在测 量范围内 在 50 150 之间 电阻阻值与温度 之间的关系接近线性 它们之tt 间的关系为 温度系数大 适用于无腐蚀介质 超过 23 0 1 t RRAtBtCt 150 易被氧化 铜电阻 CU50 的阻值与温度之间的关系称分度表 分度表给出了 温度每变化 10 对应的阻值 CU50 的简化分度表如下所示 Cu50 的分度表 温度 50 40 30 20 10 0 电阻值 39 2441 4043 5645 7147 8550 00 温度 010203040506070 电阻值 50 0052 1454 2956 4358 5760 7062 8464 98 温度 8090100110120130140150 电阻值 67 1269 2671 4073 5475 6977 8379 9882 13 常用的调理电路有电桥法 电桥三线连接法 四线连接法和恒流源法 在本 系统里 调理电路采用的是电桥法 调理电路如下图所示 100 RT1 7 5K RPT2 200 RPT1 UT1 TL431 A5 AGND 104 CT1 3K RT2 3K RT3 Cu50 AGND 10K RT4 10K RT5 180K RT6 AGND 104 CT2 AGND 104 CT3 180K RT7 AGND A5 104 CT4 10K RT9 10K RT8 AGND 1 2 PT1 JADC AGND AGND 82K RT10 82K RT11 AGND 2 3 1 A 84 UT2A LM258N 5 6 7 B 84 UT2B LM258N 1 2 PTY AGND A5 本电路采用 TL431 稳压电路向 Cu50 电桥供电 由于电桥只有连接 Cu50 电阻 的桥臂电阻发生变化 50 77 83 因此属于有原理误差电桥电路 为了减少 Cu50 电阻变化引起桥臂电流变化产生的误差 将电桥电阻 RT2 RT3 的阻值选择 3k 在温度为 0 时 Cu50 的阻值为 50 电桥通过 RPT1 调零后 电桥输出电压 热电阻 CU50 信号调理电路 9 为 0 假若 TL431 稳压值为 2 5V 则流过 Cu50 的电流为 CU50 I2 5V3 05k0 82mA 在温度为 130 时 Cu50 阻值为 77 83 则 Cu50 的阻值变化了 28 83 假若忽略电阻改变引起的电流变化 则电桥的输出为 U0 82mA 0 028 k0 023V 该信号采用 LM258 UT2A 实现放大 由 UT2A 组成的差动放大器的放大倍数为 18 则 UT2A 输出电压为 LM258A U0 023 V 180 4V 再由 UT2AB 组成的同向放大器放大 8 2 倍后 UT2B 输出电压为 LM258B U0 4V 8 2 3 3V 主要是 LM258 在 5V 电源时 最大输出电压为 3 6V 左右 调节 RPT2 可实现 满幅值调度 若 ADC 采用 4 096V 电压作为参考电压 则 ADC 输出的每个数字代表 对于 3 3V 的电压输入 ADC 输出的数字为 4 096V 1024 4mV 3 3V4mV 825 对于 130 的测温温度 每个 ADC 数字代表为 130825 0 16 3 3 功率输出电路 功率输出接口技术有很多种 常用的有 采用三极管或场效应管驱动继电器 采用 ULN2803 增加驱动力 光耦直接输出 驱动双向晶闸管等 本系统采用单片 机过零型晶闸管驱动电路 用单片机驱动具有交流 220V 电压的电阻性负载 这种 情况 相当于单片机控制一个交流功率开关 控制负载得电与失电 特别是开关 的接通时间在交流点过零瞬间 因此对电网冲击小 电磁波辐射小 单片机过零 型晶闸管驱动电路如下图所示 1 2 PQ1 1 2 34 5 6 单单单单 U5 MOC3063 220 RQ1 0 1uF CQ1 LEDQ1 单单单单I O单 5 360 RQ2 360 RQ3 39 RQ4 QQ1 BTA12 0 01uF CQ2 1 2 PQ3 1 2 PQ2 5单单单单 5 GND 该电路采用光隔离过零型晶闸管驱动电路 MOC3063Q 驱动双向晶闸管 BTA12 在驱动 20A 触点的接触器驱动 2000W 点加热器 单片机输出低电平时 接触点闭 合 使加热器接通 220V 电源 开始加热 单片机过零型晶闸管驱动电路 10 3 4 4 20mA 电流输出电路 1 2 PS1 104 CS1 AGND 2 3 1 A 84 US1A LM258AN A12 104 CS2 AGND AGND 10K RS1 QS1 NPN 2 32K RS2 475 RS3 AGND 200 RPS1 A12 5 6 7 B 84 US1B LM258AN 104 CS3 AGND 3 01K RS4 QS2 PNP 49 9 RS5 A12 1 2 PS3 AGND 104 CS4 AGND 1 2 PS2 AGND A12 电路接收 10 位 DAC 芯片 TLC5615 输出的模拟信号 信号范围为 0 4 6V 若 TLC5615 输出电压为 4 6V 由于 RS2 2 32k 因此流过 RS2 的电流 IRS2 2mA 该 电流流过 RS3 与电位器 RPS1 的串联电路 产生的压降 1 2V 因此流过 RS5 的电流 为 RS5 I1 2V49 924mA 由于负载电阻与 RS5 在同一支路 忽略三极管基极产生的电流 则该电路的 电路输出范围为 0 24mA 2 5 硬件电路 PCB 板 1 热电阻 CU50 信号调理电路 PCB 板 4 20mA 电流输出电路 11 2 STC89C51 单片机电路 PCB 板 3 功率输出电路 PCB 板 12 4 4 20mA 电流输出电路 PCB 板 4 软件设计 软件是单片机运行的程序 程序通过单片机与单片机的引脚指挥各个硬件 电路部分 进而控制各种各样的对象 实现对象控制的自动化与智能化 软件 处理的任务主要有 AD 转换 数据处理 数据显示 键盘输入 保存数据 报警 等 4 1 TLC1549 数据获取程序 define uint unsigned int 宏定义 define uchar unsigned char sbit AD CLK P1 0 定义 ADC 的时钟引脚 sbit AD DOUT P1 1 定义 ADC 的数据引脚 sbit AD CS P1 2 定义 ADC 的片选引脚 uint readadc void 读取 ADC 数据的函数 uint temp 0 uchar i AD CS 1 nop AD CS 0 开始读出 10 位数据 for i 0 i 10 i AD CLK 0 temp temp 1 AD DOUT AD CLK 1 nop 两次转换间隔大于 21us AD CS 1 return temp 返回 ADC 结果 13 14 4 2 24C02 读写程序 define uint unsigned int 宏定义 define uchar unsigned char define WDA 0 xa0 定义器件在 IIC 总线中的地址 读写为为 0 define RDA 0 xa1 定义器件在 IIC 总线中的地址 读写为为 1 sbit SDA P3 6 定义 24c02 的 SDA 信号 sbit SCL P3 7 定义 24c02 的 SCL 信号 void start 启用总线 当 SCL 为高电平时 使 SDA 产生一个负跳变 SDA 1 SDA 为高电平 SCL 1 SCL 为高电平 SDA 0 SDA 下降沿启动总线 SCL 0 SCL 返回低电平 void stop 停用总线 当 SCL 为高电平时 使 SDA 产生一个正跳变 SCL 0 SCL 为低电平 SDA 0 SDA 为低电平 SCL 1 SCL 为高电平 SDA 1 SDA 上升沿停止总线 void noack 无应答信号 SDA 1 SDA 为高电平 SCL 1 SCL 为高电平 SCL 0 在 SCL 下降沿 SDA 1 表示 ack 无效 bit testack 检测 ack 信号 bit EB SDA 1 SDA 为高电平 SCL 1 SCL 为高电平 EB SDA 在 SCL 下降沿 SDA 0 表示返回 ack 有效 SCL 0 return EB 返回测试位 write8bit uchar input 写 8 个二进制位到 24c02 的函数 15 uchar temp1 for temp1 8 temp1 0 temp1 循环 8 次 写入 8 位 SDA bit input 将输入数据的高位赋于 SDA SCL 1 SCL 0 使 SCL 出现下降沿 表明该位数据写入完毕 input input 1 input 数据左移 1 位 低位向高位移动 viod write24c02 uchar ch1 uchar address1 写入一个字节到 24c02 中字 节地址 start write8bit WDA 发送器件的地址 testack write8bit address1 发送写入字节的地址 testack write8bit ch1 发送写入的数据 testack stop delayms 10 延时 10ms uchar read8bit 从 24c02 中读出 8 个数据位的函数 uchar temp2 rbyte 0 for temp2 8 temp2 0 temp2 循环 8 次 读出 8 位 SCL 1 rbyte rbyte UpperLimit Temperature LowerLimit buzz 1 警报接通 else buzz 0 警报停止 4 4 数据处理 单片机实现的数据处理任务为 数字滤波 标度变换 非线性校正 PID 等各种控 制算法 4 4 1 数字滤波 为减少数据采集时的干扰 可以采用数字滤波的方法 所谓数字滤波 就是通过 一定的软件程序降低干扰在有用信号中的比重 实质上是一种程序滤波 数字滤波是 用软件实现的 不需增加硬件 可靠性高 且无阻抗匹配问题 常用的数字滤波方法 有算术平均滤波法 中值滤波法 程序判断滤波法和递推平均滤波法等 在本系统中对采集的温度信号进行 16 次循环采用 并对采样后的数据应用算术平 均滤波法进行处理 其伪程序为 define N 定义采样数 uchar lp 滤波函数 int sum 0 uchar count for count 0 countv1 max mid else min mid if max min 1 j cu50 max cu50 min 10 j v1 cu50 min j var 10 min j 获得校正后的温度 break 4 4 4 位式控制算法 智能仪表控制温度的方法称为算法 算法有很多种 主要运用的是位式控制算法和 PID 控制算法 位式控制又称为 开 关 或 通 断 型控制 其可分为二位式和三位式 两种 位式控制又称通断式控制 是将测量值与设定值相比较之差值经放大处理后 对调节对象作开或关控制的调节 位式控制又分二位式控制和三位式控制 分别介绍如下 1 二位式控制 是指用一个开关量控制负载方式 具有接线简单 可靠性高成本 低廉的优点 应用场合十分广泛 2 三位式控制 是指用二个开关量控制分别控制二个负载 一般情况下一个 设置为主控 另一个为副控 是为了克服二位式控制容易产生的调节速度与过冲量之 间的矛盾面发展的一种控制方式 4 5 数据扫描程序 define uint unsigned int 宏定义 20 define uchar unsigned char uchar code duanma 10 0 x3f 0 x06 0 x5b 0 x4f 0 x66 0 x6d 0 x7d 0 x07 0 x7f 0 x6f 段码 高电平有效 sbit duan P1 6 定义段码锁存口 sbit wei P1 7 定义位码锁存口 uchar xs 8 定义 8 位显示缓存 void display uchar x write24c02 temperature 0 x01 将温度的值写入 0 x01 地址 xs 3 temperature 1000 将千位暂存 xs 2 temperature 100 10 将百位暂存 xs 1 temperature 10 10 将十位暂存 xs 0 temperature 10 将个位暂存 显示千位 duan 0 打开段选 P0 table xs 3 显示千位位 duan 1 关闭段选 将数据锁存 duan 0 再次打开段选 wei 0 打开位选 P0 0 xfe 低电平时选择一位数码管 wei 1 关闭段选 将数据锁存 wei 0 再次打开段选 delay 5 延迟一段时间 显示百位 duan 0 P0 table xs 2 duan 1 duan 0 wei 0 P0 0 xfd wei 1 wei 0 delay 5 显示各位 duan 0 P0 table xs 1 duan 1 duan 0 wei 0 P0 0 xfb wei 1 wei 0 delay 5 显示个位 21 duan 0 P0 table xs 0 duan 1 duan 0 wei 0 P0 0 xf7 wei 1 wei 0 delay 5 4 6 按键处理程序 sbit s1 P2 0 定义 s1 按键 用于选择仪表功能 sbit s2 P2 1 定义 s2 按键 用于选择数码管 sbit s3 P2 2 定义 s3 按键 用于设置数字的增加 sbit s4 P2 3 定义 s4 按键 用于设置数字的减少 sbit led1 P2 4 定义 led1 数码管 sbit led2 P2 5 定义 led2 数码管 sbit led3 P2 6 定义 led3 数码管 sbit led4 P2 7 定义 led4 数码管 void FF unsigned char c2 int n2 n3 n4 while 1 if s1 for c2 0 c2 250 c2 if s1 duan 0 P0 0 x75 显示 H duan 1 22 duan 0 wei 0 P0 0 xfd 选中上排的数码管 delay 5 duan 0 P0 0 x6d duan 1 duan 0 wei 0 P0 0 xfb 显示 wei 1 wei 0 delay 5 led 0 点亮 led1 while s1 松开建消抖 for c2 0 c2 250 c2 if s2 选择数码管 for c2 0 c2 250 c2 if s2 while 1 for n2 4 n2 8 n2 wei 0 P0 wei i wei 1 n2 1 n2 4 if s3 每按一次按键加 1 for c2 0 c2 250 c2 if s3 n3 write24c02 n3 0 x02 duan 0 23 P0 duan n3 if s4 每按一次按键减 1 for c2 0 c2 250 c2 if s4 n3 write24c02 n3 0 x03 duan 0 P0 duan n4 24 总结 本系统基于 STC89C51 单片机的智能测温仪表 在设计过程中 实现智能数字显示 仪表 经过为期一周的单片机课设 通进对两个软件学习和完成一个时钟秒表设计并 进行简单调试 我学到了很多东西 课程设计是培养学生综合运用所学知识 发现 提出 分析和解决实际问题 锻炼实践 能力的重要环节 是对学生实际工作能力的具体训练和考察过程 随着科学技术发展的日 新日异 单片机已经成为当今计算机应用中空前活跃的领域 在生活中可以说得是无 处不在 因此作为二十一世纪的大学来说掌握单片机的开发技术是十分重要的 虽然课设时遇到过这样或那样的问题 但是在自己的的不断努力下 我最终顺利 的完成了实验 在整个的课设的过程中我学习了很多的东西 使我眼界打开 感受颇 深 简单的软件与硬件学习使我了解到了人生学习的真谛 课设虽然结束了 但学习 还没结束 电子的世界将为我打开 只有继续以从中获得感受作为指导思想走下去 在不断前进中去提升自己 才能真正提升自己的能力 本次课程设计的最大收获是熟练地运用 Altium Designer 进行电路绘图 并电路进行 手动布线 这对我以后的学习和工作有很大帮助 25 参考文献 1 夏路易 单片机技术基础教程与实践 北京 电子工业出版社 2008 1 2 曹丽军 吕强 单片机原理与应用 成都 电子科技大学出版社 2005 9 3 杨国田 白焰 董玲 51 单片机实用 C 语言程序设计 北京 中国电力出版社 2009 7 4 王毓银 数字电路逻辑设计 第 3 版 北京 高等教育出版社 1999 9 5 童诗白 华成英 模拟电子技术基础 第 3 版 北京 高等教育出版社 2001 1 6 夏路易 protel99se 画电路原理图于电路板图 山西 太原理工大学出版社 2007 8 26 附录 单片机电路总图 1 2 3 4 5 6 7 8 9 11 10 JM1 5 GND 104 CM3 330RM1 330RM2 GND GND 1uF CM5 1uF CM4 1uFCM1 1uFCM2 104 CM6 E0 1 E1 2 E2 3 GND 4 SDA 5 SCL 6 WC 7 VCC 8 UC1 M24C02BN6 5 GND 10K RC2 10K RC1 P3 7 P3 6 13 10 11 8 12 9 14 7 C1 1 C2 4 GND 15 C1 3 VCC 16 R1 T1 T2 R2 C2 5 V 6 V 2 U4 MAX232AESE P3 1 P3 0 GND P1 0 1 P1 1 2 P1 2 3 P1 3 4 P1 4 5 P1 5 6 P1 6 7 P1 7 8 RST 9 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 RD 17 XTAL2 18 XTAL1 19 GND 20 P2 0 21 P2 1 22 P2 2 23 P2 3 24 P2 4 25 P2 5 26 P2 6 27 P2 7 28 PSEN 29 ALE PROG 30 EA Vpp 31 P0 7 32 P0 6 33 P0 5 34 P0 4 35 P0 3 36 P0 2 37 P0 1 38 P0 0 39 Vcc 40 U3STC 89C 51 GND 30pF C1 30pF C2 12 11 059M Y1 10u C3 5 5 GND P1 0 P1 1 P1 2 P1 3 P1 4 P1 5 510 R9 510 R10 510 R11 510 R12 5 S1 S2 S3 S4 GND P1 6 P1 7 P3 6 P3 7 P3 0 P3 1 P3 2 1 2 3 4 5 6 7
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 离婚协议中关于共同人寿保险权益处理合同
- 精准劳动合同-高端美容院店长服务协议
- 企业消防安全主体责任落实报告
- 气动元件制造工节假日后复工安全考核试卷含答案
- 耐火制品出窑拣选工节假日后复工安全考核试卷含答案
- 砖瓦原料工节假日后复工安全考核试卷含答案
- 酸性气体吸收工节假日后复工安全考核试卷含答案
- 芳香保健师节假日后复工安全考核试卷含答案
- 2025年某科技企业劳动合同样本
- 美术教学成果与作品展览报告
- 古代文学史杜牧课件
- 7.1促进民族团结 课件 2025-2026学年统编版道德与法治九年级上册
- 2025年建筑施工安全教育试题及答案
- 桩基质量管理制度
- 口腔颌面外科缝合技术要点
- 2025至2030中国军用导航仪器行业市场深度研究与战略咨询分析报告
- 2025年科创板开户试题及答案
- 西宁市供热管理暂行办法
- 中职导游课程课件
- 静脉血栓护理课件
- 精神科护理学练习题
评论
0/150
提交评论