毕业论文基于单片机的数字温度监测系统(编辑修改稿)内容摘要:
RTEX、 DSP 处理器。 支持通用外设模型:如字符 LCD模块、图形 LCD模块、 LED点阵、 LED七段显示模块、键盘 /按键、直流 /步进 /伺服电机、 RS232虚拟终端、电子广州工程技术职业学院 20xx 届毕业设计(论文) 7 温度计等等,其 COMPIM( COM 口物理接口模型)还可以使仿真电路通过 PC机串口和外部电路实现双向异步串行通信。 实时 仿真 : 支持 UART/USART/EUSARTs 仿真、中断仿真、 SPI/I2C 仿真、MSSP 仿真、 PSP 仿真、 RTC 仿真、 ADC 仿真、 CCP/ECCP 仿真。 编译及调试:支持单片机汇编语言的编辑 /编译 /源码级仿真,内带805 AVR、 PIC 的汇编编译器,也可以与第三方集成编译环境(如 IAR、Keil 和 Hitech)结合,进行高级语言的源码级仿真和调试。 4. 实用的 PCB 设计平台 原理图到 PCB 的快速通道: 原理图设计完成后,一键便可进入 ARES的 PCB 设计环境,实现从概念到产品的完整设计。 先 进的自动布局 /布线功能 : 支持器件的自动 /人工布局;支持无网格自动布线或人工布线;支持引脚交换 /门交换功能使 PCB 设计更为合理。 完整的 PCB 设计功能 : 最多可设计 16个铜箔层, 2个丝印层, 4个机械层(含板边),灵活的布线策略供用户设置,自动设计规则检查, 3D 可视化预览。 多种输出格式的支持 : 可以输出多种格式文件,包括 Gerber 文件的导入或导出,便利与其它 PCB 设计工具的互转(如 protel)和 PCB 板的设计和加工。 Keil 软件 Keil软件是目前最流行开发 MCS51系列单片机的软 件,这从近年来各仿真机厂商纷纷宣布全面支持 Keil即可看出。 Keil 提供了包括 C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境( uVision)将这些部份组合在一起。 运行 Keil软件需要 Pentium 或以上的 CPU, 16MB 或更多 RAM、 20M 以上空闲的硬盘空间、 WIN9 NT、 WIN20xx、 WINXP 等操作系统。 掌握这一软件的使用对于使用 51系列单片机的爱好者来说是十分必要的,如果你使用 C 语言编程,那么 Keil几乎就是你的不二之选(目前在国内你只能买 到该软件、而你买的仿真机也很可能只支持该软件),即使不使用 C 语言而仅用汇编语言编程,其方便易用的集成环境、强大的软件仿真调试工具也会令你事半功倍。 Keil C51是美国 Keil Software 公司出品的 51系列兼容单片机 C 语言软件开发系统, Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全 Windows 界面。 另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到 Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。 在开发大型软件时更能体现高级语言的优势。 安装 MDK 组件 后,可以用于 ARM 开发。 广州工程技术职业学院 20xx 届毕业设计(论文) 8 第四章 详细设计 详细设计包括硬件设计和软件设计。 硬件设计 硬件设计主要包括温度采集电路设计、显示电路设计、单片机基础电路设计、 USB 通信模块四个部分。 温度采集电路 温度芯片 DS18820 是 Dallas 公司生产的一线式数字典度传感器,具有 3 引脚 TO92 小体积 封装形式 和 16PIN SSOP 超微型贴片封装。 测温分辨率可达℃,被测温度用符号扩展的 16 位数字量方式串行输出。 测量温度范围为55℃~ +125℃,在 10℃~ +85℃范 同内,精度为 +℃。 其工作电源既可在远端引入,也可以采用寄生电源力方式产生。 CPU 只需一根端端口线就能与诸多DS18B20 通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。 由于每一个 DS18B20 都有唯一系列号,因此多个 DS18820 可以存在同一条单总线上。 图 41 DS18B20 引脚图 DS18B20 有两种供电模式:寄生 供电 和外部 供电。 在寄生电源模式工作时,会在 I/O 口或 VDD 引脚处于高电平时“偷”能量。 当有特定的时间和电压 需求时, I/O 要提供足够的能量。 寄生供电有两个好处: 进行 远距离测温时,无需本地电源; 可以在没有常规电源的条件下读 ROM。 要 DS18B20 能够进行精广州工程技术职业学院 20xx 届毕业设计(论文) 9 确的温度转换, I/O 口必须在转换期间保证电压。 DS18B20 的工作电流达到 1mA,以至于仅靠 ,当要接多个 DS18B20时更不可能。 第二种是外部供电 ,从 VDD 引脚接入一个外部电源。 这样做的好处是 I/O线上不需要加强上拉,而且总线控制器不用在温度转换转换期间总是保持高电平。 这样在转换新时期可以允许在单总线上进行其他数据往来。 同时,在单总线上可以挂任意多片 DS18B20。 但要注意加上外部电源时, GND 引脚不能悬空。 本系统采用外部供电模式。 显示电路 本系统采用四位共阳极 LED 数码管来作为显示设备。 利用单片机的 P0 口与 P2 口的部分引脚构成了 4 位 LED 数码管驱动电路。 LED 数码管采用共阳型,使用 4 只 PN8550 PNP 型三极管作为片选端的驱动。 PN8550 的发射极 E 接上 +5V 电源,基极 B 接上 P0 相应的 I/O 口,集电极 C 接上 LED 数码管的各位公共端。 当 ~ 中某个口输出低电平时 ,电流就注入对应位的公共端 ,LED 数码管被点亮。 由于 P0 口没有内置上拉电阻,所以在输出时外挂上一个 10K 的上拉排阻,同时,为了保护 P0 口给每个 P0 口接上一个 1K 的限流电阻,以保护 P0 口不会被烧坏。 DS18B20 GND VCC VCC I/O 图 43 外部供电 DS18B20 GND VDD VCC I/O 图 42 寄生供电 广州工程技术职业学院 20xx 届毕业设计(论文) 10 图 44 显示部分电路图 单片机基础电路 单片机的基础电路包括复位电路和晶振电路 .电路如下 : 图 45 基础电路 本系统使用 的石英晶振,目的是为了在与 PC 进行通信时方便波特率的计算与设置。 从而较方便地完成通信。 广州工程技术职业学院 20xx 届毕业设计(论文) 11 USB 通信模块 PC 机具有强大的监控和管理能力,而单片机则具有快速及灵活的控制特点,通过 PC 机的 RS232 串口技术与外部设备进行通信,是许多测控系统中常用的一种通信解决方案。 而随着 USB 接口技术的成熟和使用的普及,由于 USB 接口有着一系列串口无法比拟的优点, USB 接口正在逐步取代 RS232 串口,成为外设接口的主流。 现在大多数的笔记本电脑和部分新型台式机主板出于各种原因, RS232串口已经不再设置。 这都约束了 RS232 串口与 PC 联机的单片机设备和使用。 所以本系统使用 USB 接口来通信,从而达到即插即用的特点。 现在在市场上能找到的一些简易 USB 通信模块都是使用虚拟串口技术来实现通信。 该技术最大的特点 就是在 PC 虚拟出一个 COM 口,其 COM 口拥有自己的串口号,逻辑上与接上 USB 通信模块的 USB 口相联,从而达到通信的目的。 这种方法最大的优点就是兼容性强,能方便地把 RS232 串口升级成 USB 口通信,但不需要更改原有的通信协议,唯一的不足就是要安装上对应的驱动才能使用 USB通信模块。 本系统使用 PL2303HX 来作为 USB 通信模块。 PL2303HX 采用 28脚贴片 SOIC封装,工作频率为 12MHZ, 全速兼容 USB ,可以直接将 USB信号转换成串口信号,波特率从 75~ 1228800,有 22 种波特率可以 选择, 通信波特率高达 6Mb/s, 并支持 16 共 5 种数据比特位 ,可调节的 3~ 5V输出电压 等性能。 接口电路如下: 图 46 PL2303接口电路图 由于 USB 通信芯片十分小,都要是采用超微型贴片封装,如果是自己动手焊接具有很高的难度,极容易损坏芯片及其他元件。 出于这些考虑,决定直接购广州工程技术职业学院 20xx 届毕业设计(论文) 12 买市面上已经做好完速通信模块来使用,从而降低风险及制作难度。 模块如下: 图 47 USB通信模块 USB 转串口使用时仅需三个引脚,分别是 GND,TXD,RXD。 GND 接单片机的 GND,TXD 接单片机的 RXD 即 P3^0, RXD 接单片机的 TXD即 P3^1。 同时,该模块还提供有 5V 和 供电,可以方便地为系统提供电源,也能为日后的扩展提供便利。 使用前需要安装 PL2303 所配套的驱动程序才能正常地使用该模块。 安装成功后如下图: 图 48 驱动成功安装后虚拟出的串 口 COM6就是 PL2303驱动程序虚拟出来的串口,该串口如普通串口一样地使用。 以上介绍的是本系统的几个重要组成部分,这几个部分共同组成了本系统的主体。 广州工程技术职业学院 20xx 届毕业设计(论文) 13 软件设计 软件设计主要分成两个部分:下位机软件和上位机软件。 下位机软件由 C语 言来编写,通过 C51 编译器编译成 HEX 文件,再由编程器把程序文件烧入AT89S52 芯片当中。 上位机软件由 来编写,运行在 PC 机系统当中,用于接收和处理单片机发送过来的数据 ,并且发送控制信号控制单片机的工作。 下位机程序设计 下位机程序主要包括 DS18B20 初始化及数据处理、通信端口初始化、 LED显示、收发数据。 这四个部分共同构成下位机程序。 DS18B20 初始化及数据处理 DS18B20 采用单一总线型设计,外部电路十分简洁,绘制作电路板时提供了不小的便利。 但同时,简洁 的外部电路需要用到比较复杂的软件程序来控制,从而使它正常稳定地工件。 在对 DS18B20 进行读 /写编程时,必须严格保证读 /写时序,否则将无法读取测温结果,根据 DS18B20 通信协议,单片机控制 DS18B20 完成温度转换必须以下步骤进行: 每一次读 /写之前都要对 DS18B20 进行复位,复位成功后发送一条 ROM 指令,最后发送 RAM 指令,这样才能对 DS18B20 进行预定的操作。 复位要求单片机将数据线下拉 480μ s960μ s,然后释放, DS18B20 收到信号后等待 1660μ s,然后发出 60240μ s的存在低 脉冲 ,单片机收到此信号表示复位成功。 图 49 DS18B20初始化 复位代码如下: 广州工程技术职业学院 20xx 届毕业设计(论文) 14 图 410 复位代码段 完成复位后, DS18B20 进入了等待接收 ROM 操作命令或 RAM操作指令。 所有ROM 操作命令均为 8位长。 本系统使用到的 ROM 操作指令和 RAM操作指令有: 1. Skip ROM( 跳过 ROM )[CCh] 在单点总线系统中,此命令通过允许总线主机不提供 64 位 ROM 编码而访问存储器操作来节省时间。 如果在总线上存在多于一个的从属器件而且在 Skip ROM 命令之后发出读命令,那么由于多个从片同时发送 数据,会在总线上发生数据冲突(漏极开路下拉会产生线与的效果)。 2. Read Scratchpad(读暂存存储器) [BEh] 这个命令读取暂存器的内容。 读取将从字节 0开始,一直进行下去,直到第9(字节 8, CRC)字节读完。 如果不想读完所有字节,控制器可以在任何时间发出复位命令来中止读取。 3. Convert T(温度变换) [44h] 这条命令启动一次温度转换而无需其他数据。 温度转换命令被执行,而后DS18B20 保持等待状态。 如果总线控制器在这条命令之后跟着发出读时间隙,而 DS18B20 又忙于做时间转换的话, DS18B20 将在总线上输出 “0” ,若温度转换完成,则输出 “1”。 如果使用寄生电源,总线控制器必须在发出这条命令后立即起动强上拉,并保持 500ms。 向 DS18B20 写入操作命令时,涉及到了写 1操作;讲习取测温数据时,涉及广州工程技术职业学院 20xx 届毕业设计(论文) 15 读 1 操作。 程序如下: 图 411 读数据和写命令代码段 单片机无论是发送操作命令还是接收数据,都是数据都是二进制的形式,所以需要一位位地读,一位位地写。 图 412 发送命令及读取温度代码段 采用 12位分辨率进行 A/D转换时,最少需要 750ms 的等待时间 ,才能完成一次转换。 当温度转换 命令发布后,经转换所得的温度值以二字节补码形式存放在高速暂存存储器的第 0 和第 1个字节。 单片机可通过单线接口读到该数据,读取时低位。毕业论文基于单片机的数字温度监测系统(编辑修改稿)
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。
用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。