基于dsp数字信号处理器的数字温度计的设计内容摘要:

it12 bit11 bit10 bit9 bit8 MS Byte S S S S S 26 25 24 这是 16 位转化后得到的 16 位数据,存储在 DS18B20 的两个 8 比特的 RAM 中,二进制中的前面 5 位是符号位,如果测得的温度大于 0,这 5 位为 0,只要将测到的数值乘于 即可得到实际温度;如果温度小于 0,这 5 位为 1,测到的数值需要取反加 1 再乘于 即可得到实际温度。 例如+ ℃的数字输出为 0191H,-℃的数字输出为 FF6FH。 ( 2)高低温报警触发器 TH 和 TL DS18B20 温度传感器的内部存储器包括一个高速暂 存 RAM 和一个非易失性的可电擦除 的 EEPRAM,后者存放高温度 和低温度触发器 TH、 TL和结构寄存器。 ( 3) 配置寄存器 该字节各位的意义如下 表 所示。 表 配置寄存器结构 TM R1 R0 1 1 1 1 1 湖南工业大学本科毕业设计(论文) 11 DS18B20 的工作时序 DS18B20 的 工作协议流程是:初始化→ ROM 操作指令→存储器操作指令→数据传输。 其工作时序包括初始化时序、写时序和读时序, 分别如图 、图 、图 所示。 初始化时序:主机控制 DS18B20 完成任何操作之前必须先初始化,即主机发一复位脉冲 (最短为 480us 的低电平 ),接着主机释放总线进入接收 状态, DS18B20 在检测到 I/O引脚上的上升沿之后,等待 1560us 然后发出存在脉冲 (60240us 的低电平 )。 DS18B20 等待 DS18B20Tx 产生 15us— 16us 脉冲 60240 主机复位脉冲 VCC 480usTX960us 主机 Rx min480us 1Wire Bus GND 图 初始化时序 写时序 :将数据从高电平拉至低电平,产生写起始信号。 在 15us 之内将所需写的位送到数据线上,在 15us 到 60us 之间对数据线进行采样,如果采样为高电平,就写 1,如果为低电平,写 0就发生。 在开始另一个写周期前必须有 1us 以上的高电平恢复期。 图 写时序 读时序 :主机将数据线从高电平拉至低电平 1us 以上,再使数据线升为高电平,从而产生读起始信号。 主机在读时间片下降沿之后 15us 内完成读位。 每个读周期最短的持续期为 60us,各个读周期之间也必须有 1us 以上的高电平恢复期。 湖南工业大学本科毕业设计(论文) 12 图 读时序 湖南工业大学本科毕业设计(论文) 13 第 3 章 系统硬件电路的设计 本 设计利用电源电路设计提供 +5V 稳压电源, 温度 传感器电路连接 DSP 芯片 的 I/O端口进行温度采集,通过液晶 显示屏来 显示温度,同时 4 4矩阵按键电路的设计很方便实现温度的预设值设定, 超过预设的温度值时,报警系统的蜂鸣器和发光二极管会起到报警的作用。 电源电路设计 电源电路负责 提供给系统 +5V的 电 压。 电源 稳压电路如图 , 如图所示 电路为输出电压 +5V、输出电流 的稳压电源 电路。 它由电源变压器 B,桥式整流电路 D1~D4,滤波电容 C C3,防止自激电容 C C4 和一只固定式三端稳压器 (LM7805)极为简捷方便地搭成的。 电源电路的 稳压原理: 220V 交流市电通过电源变压器变换成交流低压,再经过桥式整流电 路 D1~ D4 和滤波电容 C1的整流和滤波,在固定式三端稳压器 LM7805 的 Vin 和 GND 两端形成一个并不十分稳定的直流电压 (该电压常常会因为市电电压的波动或负载的变化等原因而发生变化 )。 此直流电压经 过 LM7805 的稳压和 C3 的滤 波便在稳压电源的输出端产生了精度高、稳定度好的直流输出电压。 本稳压电源可作为 TTL 电路或 DSP 电路的电源。 三端稳压器是一种标准化、系列化的通用线性稳压电源集成电路,以其体积小、成本低、性能好、工作可靠性高、使用简捷方便等特点,成为目前稳压电源中应用最为广泛的一种单片式集成稳压器件。 图 电源稳压电路 采用这种电路的 +5V电源在 输出前经过了电感和电容组合网络滤波,实测纹波小于3mV。 湖南工业大学本科毕业设计(论文) 14 接口电路设计 DS18B20 可以采用两种方式供电,一种是采用电源供电方式,此时 DS18B20 的 1脚接地, 2 脚作 为信号线, 3 脚接电源 , 如图。 另一种是寄生电源供电方式,如图。 DSP 端口接单线总线,为保证在有效的 DS18B20 时钟周期内提供足够的电流,可用一个 MOSFET 管来完成对总线的上拉。 当 DS18B20 处于写存储器操作和温度 A/D 转换时,总线必须有强的上拉,上拉开启时间最大为 10us。 采用寄生电源供电方式时, VDD 端接地。 由于单线制只有一根线,因此发送接口必须是三态的。 图 DS18B20与 DSP的接口电路 图 DS18B20与 DSP的 另一种 接口电路 湖南工业大学本科毕业设计(论文) 15 液晶显示模块设计 本设计 中使用的温度显示模块是具有 ST7920 控制器的液晶模块, 可显示汉字及图形。 模块供电电源为 + V~ +5 V(内置升压电路,无需负压 ), DSP 完全满足其电压的要求。 在液晶模块的各引脚中, VDD, VSS 分别为模块供电电源的正、负引脚; V0 为模块驱动电压输入引脚。 模块有并行和串行两种连接方法,当 PSB=0 时为串行选择方式,当 PSB=1 时为并行选择方式,本文采用 8 位并行连接的方式实现液晶模块与 2407A 的数据通讯。 硬件电路中液晶模块的 RS、 R/ W、 E、 PSB、 REST控制引脚分别与 2407A的 IOPA3~7引脚相连, 液晶模块的数据引脚 DB0~ 7分别与 2407A 的 IOPB0~ 7引脚相连。 液晶显示原理图如图。 图 液晶显示原理图 湖南工业大学本科毕业设计(论文) 16 具体液晶显示具体连接图如图。 图 液晶显示连接图 复位电路的设计 为确保系统中 电路 稳定可靠工作,复位电路是必不可少的一部分,复位电路的第一功能是上电复位。 一般微机电路正常工作需要供电电源为 5V177。 5% ,即 ~。 由于电路是时序数字电路,它需要稳定的时钟信号,因此在电源上电时,只有当 VCC 超过 低 于 以及晶体振荡器稳定工作时,复位信号才被撤除,微机电路开始正常工作。 DSP 控制 系统的复位方式有:手动按钮复位和上电复位。 手动按钮复位需要人为在复位输入端 RST 上加入高电 平。 一般采用的办法是在 RST 端和正 电源 VCC 之间接一个按钮。 当人为按下按钮时,则 VCC的 +5V 电平就会直接加到 RST端。 上电复位的工作过程是在加电时,复位电路通过电容加给 RST 端一个短暂的高电平信号,此高电平信号随着 VCC 对电容的充电过程而逐渐回落,即 RST 端的高电平持续时间取决于电容的充电时间。 为了 保证系统能够可靠地复位, RST端的高电平信号必须维持足够长的时间。 DSP 控制器复位电路的设计如图 所示。 该复位电路采用 手动复位与上电复位相结合的方式。 当按下 按键 S1时, VCC 通过 R1 电阻给复位输入端口一个高电平,实现复位功能 ,即 手动复位。 上电复位就是 VCC 通过电阻 R2 和电容 C 构成回路,该回路是一个对电容 C充电和放电的电路,所以复位端口得到一个周期性变化的电压值,并且有一定时间的 电 压值高于 CPU复位电压,实现上电复位功能。 湖南工业大学本科毕业设计(论文) 17 图 DSP复位电路 键盘及报警电路设计 键盘电路的设计 4 4扫描键盘用 8位数据线 , 可以提供 16个不同的按键信号。 这样做的好处是 :(1)节省 FPGA 管脚资源 ; (2)系统简单化减小电路规模;特别是在资源比较紧张,对成本要求严格的系统中这是一种非常流行的设计方法。 由于 用手把键按下的时间长度等问题 , 如果不去抖动可以把时钟加快。 实际中操作与理论分析是有差别的因为一般的开关在大约 20ms 内信号不稳定,存在所谓的 “ 开关抖动 ” , 会产生多个脉冲影响电路正常工作。 所以含开关输入的设计需要做防抖动处理,在本 设计 可以用 20Hz 的时钟采样实现防抖。 为实现温度上、下限的设定功能,同时为尽量减少因键盘 的 输入而引起的抖动,系统设有键盘, 并通过扫描的方式进行工作。 键盘电路设计图如图 所示。 湖南工业大学本科毕业设计(论文) 18 图 键盘电路设计图 报警电路的设计 为实现当温度超过设定的限定值时声光报警的功能 ,在 2407A 芯片外围的设有报警电路。 当温度超限时, IOPE0 口输出高电平,三极管 NPN 导通, 二极管和蜂鸣器同时工作;当温度正常时, IOPE0 口 输出低电平 ,三极管截止,二极管和蜂鸣器不工作。 报警系统电路设计图 如图。 图 报警系统电路设计图 湖南工业大学本科毕业设计(论文) 19 主控制电路和测温控制电路的 总体 设计 主控制电路由 TMS320LF2407A 及外围元件构成,测温电路由 DS18B 预置数电路和报警电路组成。 TMS320LF2407A 是此硬件电路设计的核心,通过 TMS320LF2407A 的管脚与 DS18B20 相连,控制温度的读出和显示。 预置数电路由两个按键和两个数码管组成,两个按键分别与 TMS320LF2407A 的管脚相连。 报警电路很简单,由一个发光二极管和一个报警蜂鸣器组成,与 TMS320LF2407A 的管脚相连,若实际测量的温度值大于预置温度值,则发光二极管亮,即为报警标志。 硬件电路的功能都是与软件编程相结合而实现的。 具体硬件原理图如。 图 硬件原理图 湖南工业大学本科毕业设计(论文) 20 第 4 章 系统软件 程序 的 设计 C 语言简介 1978年 , Brian W. Kernighian和 Dennis M. Ritchie出版了名著 《 The C Programming Language》 ,从而使 C 语言成为目前世界上流行最广泛的高级程序设计语言。 随着微型计算机的日益普及 , 出现了许多 C语言版本。 由于没有统一的标准 , 使得这些 C语言之间出现了一些不一致的地方。 为了改变这种情况 , 美国国家标准研究所 (ANSI)为 C 语言制定了一套 ANSI 标 准 , 成为现行的 C语言标准。 C 语言发展迅速 , 而且成为最受欢迎的语言之一 , 主要因为它具有强大的功能。 C语言是目前世界上流行 、 使用最广泛的高级程序设计语言。 C 语言对操作系统和系统使用程序以及需要对硬件进行操作的场合,用 C语言明显优于其它高级语言,许多大型应用软件都是用 C语言编写的。 C语言的特点 : 、灵活方便 , C语言一共只有 32个关键字 , 9种控制语句,程序书写自由。 2. 运算符丰富 , C 的运算符包含的范围很广泛,共有种 34 个运算符。 C语言把括号、赋值、强制类型转换等都作为运算符处理。 3. 数据结构丰富 , C的数据类型有 : 整 型、实型、字符型、数组类型、指针类型、结构体类型、共用体类型等 , 能用来实现各种复杂的数据类型的运算。 是结构式语言 , 结构式语言的显著特点是代码及数据的分隔化 , 即程序的各个部分除了必要的信息交流外彼此独立。 这种结构化方式可使程序层次清晰 , 便于使用、维护以及调试。 语法限制不太严格、程序设计自由度大 , 一般的高级语言语法检查比较严,能够检查出几乎所有的语法错误。 而 C 语言允许程序编写者有较大的自由度。 6. C 语言允许直接访问物理地址,可以直接对硬件进行操作。 7. C 语言程序生成代码质量高,程 序执行效率高 , 一般只比汇编程序生成的目标代码效率低 10~ 20%。 8. C 语言适用范围大,可移植性好 , C 语言有一个突出的优点就是适合于多种操作系统 , 如 DOS、 UNIX, 也适用于多种机型。 主程序 本设计利用 2407A 作为 控制器,主要对其进行软件编程,解决好温度测量过程中时序控制问题, 软件采用 C语言进行编译。 程序主要包括 DS18B20 的初始化、温度采集、温度读取 等几部分。 整个程序采用软件定时的方法,实现每隔 30 秒循环一次,从而完成对温。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。