硬件课程设计基于Microchip单片机的数字温度计

上传人:ni****g 文档编号:473369781 上传时间:2023-11-07 格式:DOC 页数:22 大小:468.50KB
返回 下载 相关 举报
硬件课程设计基于Microchip单片机的数字温度计_第1页
第1页 / 共22页
硬件课程设计基于Microchip单片机的数字温度计_第2页
第2页 / 共22页
硬件课程设计基于Microchip单片机的数字温度计_第3页
第3页 / 共22页
硬件课程设计基于Microchip单片机的数字温度计_第4页
第4页 / 共22页
硬件课程设计基于Microchip单片机的数字温度计_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《硬件课程设计基于Microchip单片机的数字温度计》由会员分享,可在线阅读,更多相关《硬件课程设计基于Microchip单片机的数字温度计(22页珍藏版)》请在金锄头文库上搜索。

1、基于Microchip单片机的数字温度计硬件课程设计电子与信息工程 通信工程0805 指导老师:王红目 录2.概述33.需求分析3功能要求3设计要求3开发平台34.设计原理33.1 PIC18F452单片机33.11 振荡器配置43.1.2 复位53.1.3存储器构成54.1.4I/0口53.1.5 中断6DS18B20温度传感器65.电路分析和完整电路图104.1 驱动蜂鸣器104.2字符LCD104.3温度传感器114.4键盘114.5硬件结构图114.6 PROTUES仿真图如图所示126.软件分析和完整流程图125.1温度传感器流程图及代码与注释125.2 LCD显示部分代码与注释14

2、5.3 蜂鸣器流程图及部分代码与注释145.4 按键控制报警门限部分代码及注释157.调试故障的检测与分析167.1温度传感器DS18B20部分167.2蜂鸣器部分167.2.1蜂鸣器响并且数字显示不变167.2.2蜂鸣器报警后低于报警温度时仍然在报警177.3显示部分177.4按键控制报警门限问题178.总体认知179.参考文献1710.附录181. 概述本设计以PIC18F452单片机为核心,采用美国DALLAS公司的数字温度传感器DS18B20,设计了一种简单的数字温度测量与报警系统。本设计介绍PIC单片机和温度传感器DS18B20,以及温度传感器DS18B20的工作时序。同时,提出最简

3、单的温度测量与显示报警系统的硬件电路和软件程序设计的方案。2. 需求分析功能要求测量环境温度,采用接触式温度传感器测量,用液晶LCD显示温度值,用DS18B20作为温度传感器采集温度,最终把当前温度显示在液晶上。可以实现报警功能。当温度高于某一设定值时通过蜂鸣器报警。设计要求 由液晶LCD显示当前温度值。 精度为0.5C。 当温度高于某一设定值时通过蜂鸣器进行报警。 通过开关控制蜂鸣器门限值开发平台 APP001 board-实验板,板上主芯片为PIC18F452,适用于PIC18和PIC16系列的40PIN的MCU MPLAB ICD2 -在线调试器 可支持Microchip绝大多数flas

4、h芯片的调试 MPLAB C18-C编译器 Microchip PIC18 系列 温度传感器 DS18B203. 设计原理3.1 PIC18F452单片机PIC18F452是一种带有10位A/D的高性能增强型闪存单片机。它有高性能的RISC CPU。他的程序存储器先性寻址有32KB,数据存储器线性寻址有1.5KB。其指令总线为16位,数据总线为8位宽。他有高达10MIPS的操作,比如他有4-10MHz的振荡器及带锁相环的时钟输入。他有40MHz振荡器及时钟输入。20外设特性: 高灌电流/ 拉电流 25 mA/25 mA 三个外部中断引脚 Timer0 模块:带8 位可编程的预分频器的8 位/1

5、6 位定时器/ 计数器 Timer1 模块:16 位定时器/ 计数器 Timer2 模块:带8 位周期寄存器(作为PWM时基)的定时器/ 计数器 Timer3 模块:16 位定时器/ 计数器 副振荡器时钟选项:Timer1/Timer3 两个捕捉/ 比较/PWM(CCP)模块。CCP 引脚可以配置为:- 捕捉输入:捕捉为16 位,最大分辨率为6.25 ns (TCY/16)- 比较为16 位,最大分辨率为100 ns (TCY)- PWM输出:PWM 分辨率为1 到10 位,8 位分辨率时最大PWM 频率为156 kHz10 位分辨率时最大PWM 频率为39 kHz 主同步串行口(Master

6、 Synchronous SerialPort, MSSP)模块,两种操作模式:- 3线SPI (支持所有的4 种SPI 模式)- I2C 主从模式 可寻址的USART 模块:- 支持RS-485 和RS-232并行从动端口(Parallel Slave Port, PSP)模拟特性: 兼容的10 位模数转换器模块(A/D),具有:- 快速采样率- 休眠期间可以进行转换- 线性度小于等于1 LSb 可编程低压检测(Programmable Low VoltageDetection, PLVD)- 支持低压检测中断 可编程欠压复位(Brown-out Reset, BOR)特殊单片机特性: 增强

7、型典型闪存程序存储器可擦写100,000 次 数据EEPROM 存储器可擦写1,000,000 次 闪存/ 数据EEPROM 保存期大于40 年 软件控制下可自行再编程 上电复位(Power-on Reset, POR)、上电延时定时器(Power-up Timer, PWRT)和振荡器起振定时器(Oscillator Start-up Timer, OST) 带有独立的片内RC 振荡器的看门狗定时器(Watchdog Timer, WDT)可保证运行可靠 可编程代码保护 省电的休眠模式 用户可选的振荡器包括:- 4倍锁相环(用于主振荡器)- 32 kHz副振荡器时钟输入 由5V 单电源供电,

8、通过两引脚电路进行在线串行编程(In-Circuit Serial Programming,ICSP) 通过两引脚进行在线调试(In-Circuit Debug,ICD)3.11 振荡器配置PIC18F452可以在八种震荡模式下工作。用户可以通过对三个配置位(FOSC2,FOSC1和FOSC0)编程来选择其中一种模式:1. LP 低功耗晶体2. XT 晶振/ 谐振器3. HS 高速晶体/ 谐振器4. HS PLL 高速晶体/谐振器,允许使用锁相环5. RC 外部电阻/ 电容振荡模式6. RCIO 外部电阻/ 电容振荡模式,使用I/O引脚7. EC 外部时钟振荡模式8. ECIO 外部时钟振荡模

9、式,使用I/O 引脚在本实验中我使用16M晶振,所以选择HS 高速晶体/ 谐振器。#pragma config OSC=HS /晶振选择HS模式(高速外部模式)3.1.2 复位PIC18F452有以下几种复位方式: 上电复位(POR) 正常工作状态下的MCLR 复位 休眠状态下的MCLR 复位 看门狗定时器(WDT)复位(正常工作状态下) 可编程的欠压复位(BOR) RESET 指令 堆栈满复位 堆栈下溢复位在本实验中为方便关闭看门狗关闭低电压保护。#pragma config LVP=OFF /关闭低电压保护#pragma config WDT=OFF /关闭看门狗3.1.3存储器构成在增强

10、型MCU 器件中有三种存储器模块。这些存储器模块是:n 程序存储器n 数据RAMn 数据EEPROM数据和程序存储器各自使用不同的总线,这样就能同时访问这些模块。3.1.4 I/0口当相应的外设使能时,对应的引脚不能作为通用I/O引脚使用。每个端口有三个用于操作的寄存器,这些寄存器分别是: TRIS 寄存器(数据方向寄存器) PORT寄存器(读取器件引脚的电平状态) LAT寄存器(输出锁存器)通过观察引脚配置,发现E的IO口与电源和地相邻,为方便使用E作为IO口。PORTE 是一个3 位宽的双向端口。对应的数据方向寄存器是TRISE。将TRISE 位置1,使相应的PORTE 引脚作为输入(即,

11、相应的输出驱动呈高阻态)。将TRISE位清零,使相应的PORTE 引脚作为输出(即,输出锁存器中的数据从相应引脚输出)。数据锁存器(LATE)也是存储器映射的。对LATE 寄存器的“读修改写”操作是读写锁存的PORTE 输出值。PORTE 有三个引脚(RE0/RD/AN5、RE1/WR/AN6 和RE2/CS/AN7) ,可对其分别进行配置,或为输入或为输出。这些引脚都有施密特触发输入缓冲器。I/O口模式下的PORTE结构图3.1.5 中断PIC18FXX2 器件具有多个中断源及一个中断优先级功能,该功能可以给每个中断源分配高优先级中断或者低优先级中断。高优先级中断向量位于000008h,低优

12、先级中断向量位于000018h。高优先级中断事件会覆盖掉任何正在执行的低优先级中断。DS18B20温度传感器DS18B20温度传感器是美国DALLAS半导体公司推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现9-12位的数字值读数方式。DS18B20的性能特点如下:独特的单线接口仅需要一个端口引脚进行通信,无须经过其它变换电路;多个DS18B20可以并联在惟一的三线上,实现多点组网功能;内含64位经过激光修正的只读存储器ROM;可通过数据线供电,内含寄生电源,电压范围为3.05.5;零待机功耗;温度以9或12位数字;用户

13、可定义报警设置; 报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件;负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作;测温范围为-55-+125,测量分辨率为0.0625采用单总线专用技术,DS18B20采用3脚PR35封装或8脚SOIC封装,其内部结构框图如图所示。DS1820 有三个主要数字部件:1)64 位激光ROM,2)温度传感器,3)非易失性温度报警触发器TH 和TL。器件用如下方式从单线通讯线上汲取能量:在信号线处于高电平期间把能量储存在内部电容里,在信号线处于低电平期间消耗电容上的电能工作,直到高电平到来再给寄生电源(电容)充电。DS1820 也可用

14、外部5V 电源供电。DS1820 依靠一个单线端口通讯。在单线端口条件下,必须先建立ROM 操作协议,才能进行存储器和控制操作。因此,控制器必须首先提供下面5 个ROM 操作命令之一:1)读ROM,2)匹配ROM,3)搜索ROM,4)跳过ROM,5)报警搜索。一条控制操作命令指示 DS1820 完成一次温度测量。测量结果放在DS1820 的暂存器里,用一条读暂存器内容的存储器操作命令可以把暂存器中数据读出。温度报警触发器TH 和TL 各由一个EEPROM 字节构成。如果没有对DS1820 使用报警搜索命令,这些寄存器可以做为一般用途的用户存储器使用。可以用一条存储器操作命令对TH 和TL 进行写入,对这些寄存器的读出需要通过暂存器。所有数据都是以最低有效位在前的方式进行读写。DS1820 通过一种片上温度测量技术来测量温度。图4 示出了温度测量电路的方框图。DS1820 是这样测温的:用一个高温度系数的振荡器确定一个门周期,内部计数器在这个门周期内对一个低温度系数的振荡器的脉冲进行计数来得到温度值。计数器被预置到对应于-55的一个值。如果计数器在门周期结束前到达0,则温度寄存器(同样被预置到-55)的值增加,表明所测温度大于-55。同时,计数器被复位到一个值,这个值由斜坡式累加器电路确定,斜坡式累加器电路用来补偿感温振荡器的抛物线特性。然后计

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号