MSP430单片机温度单片机课程设计

合集下载

(完整版)MSP430单片机课程设计

(完整版)MSP430单片机课程设计

文华学院学生课程考查报告考查课程:MSP430单片机应用设计设计题目:基于MSP430单片机的温度测量仪设计专业班级:**学号:****姓名: **指导教师:**实验日期:2016年5月8日基于MSP430单片机的温度测量仪设计文华学院摘要MSP430单片机是德州公司最新开发的具有16位总线带FLASH的单片机,由于它的性价比和集成度高,受到广大技术开发人员的青睐。

它的可靠性能比较好,加强电干扰运行不受影响,适应工业级的运行环境,在各种行业中都占有重要的位置,越来越多的领域应用到以单片机为控制核心,用液晶显示作为显示终端的数字化控制设备,通过单片机对被控制对象进行智能控制。

MSP430单片机将会在工程技术应用中得到广泛的应用。

而且,它是通向DSP 系列的桥梁,随着自动控制的低功耗化和高速化,MSP430系列单片机将会得到越来越多人的喜爱。

通过这次毕业设计,我对MSP430单片机有了完整的了解,并且着重了解了MSP430F149芯片的原理图以及它的工作原理,对内部的硬件资源和自身的汇编语法进行了实验,把它和DS18B20温度传感器联系在一起实现了温度的测量以及报警。

关键词:MSP430;超低功耗;单片机;DS18B20AbstractTexas MSP430 microcontroller is the latest development of a 16-bit bus with FLASH MCU, due to its cost-effective and highly integrated, by the majority of technology developers of all ages. Its reliability is better, enhancing electrical interference unaffected, adapt industrial-grade operating environment, in a variety of industry occupies an important position in both, applied to more and more areas to microcontroller core, with LCD as a digital control display terminal equipment, through the controlled object MCU intelligent control.MSP430 microcontroller applications engineering technology will be widely used. And, it is a bridge leading DSP family, with automatic control, low power consumption and high speed, MSP430 MCU will get more and more people's favorite.Through this graduation project, I have a complete understanding of the MSP430 microcontroller, and focus on understanding the MSP430F149 chip schematic and it works, and the internal hardware resources and their own assembler syntax conducted experiments it and DS18B20 linked to the temperature sensor of the temperature-measuring andalarm.Keywords: MSP430; ultra-low power; SCM; DS18B20一、概述1.1 引言十七世纪是温度计诞生和发展的最初阶段,这个仪器几乎比任何其它仪器都得到更加广泛的应用。

MSP430单片机温度单片机课程设计报告书

MSP430单片机温度单片机课程设计报告书

理工大学计算机学院课程设计单片机系统设计班级计科1104姓名___________________ 学号 ____________________ 指导教师业德韩慧。

一四年十课程设计任务书及成绩评定课题名称_______ 度测试系统设计__________I、题目的目的和要求:利用温度传感器和MSP43单片机设计一个温度测试系统,将测试结果(十进制)在LEDh显示出来,并定义一个保持按键,当按下该键时,将当前测试值保持不变(按键不动作时为正常测量显示)。

温度显示格式为:XXX C。

II、设计进度及完成情况、主要参考文献及资料IIIMSP43系列16位低功耗单片机原理及应用DS18B2温度传感器的使用智能仪器原理及应用学科部主任业德成绩评定:设计成绩:__________________ (教师填写)指导老师: _________________ (签字)二O 年月日目录I、题目的目的和要求: (2)II、设计进度及完成情况 (2)III、主要参考文献及资料 (3)W、成绩评定: (3)目录. (4)本次课程设计的目的和意义 (5)设计题目. (6)系统的主要功能、作用以及主要技术性能指标 (7)总体设计方案、工作和组成原理 (8)系统设计. (11)设计总结. (22)作品的使用或操作说明 (23)设计图纸或图表. (24)本次课程设计的目的和意义课程设计是让我熟练掌握了课本上的一些理论知识,课程设计也是一个学习新知识、深所学课本理论知识巩固加的过程,它培养了我们综合运用知识的能力,独立思考和解决问题的能力。

加深我们对单片机原理与应用课程的理解设计题目温度测试系统设计:利用温度传感器DS18B2C和MSP43C单片机设计一个温度测试系统,将测试结果(十进制)在LED 上显示出来,并定义一个保持按键,当按下该键时,将当前测试值保持不变(按键不动作时为正常测量显示)。

温度显示格式为:XXX C。

系统的主要功能、作用以及主要技术性能指标系统的主要功能是单片机实时从温度传感器读取温度数据信息,并在数码管显示,同时扫描是否有保持按键按下,如果按下则不再继续从温度传感器读取温度数据信息,保持温度值不变。

(太原理工大学)基于msp430单片机的数字温度计的制

(太原理工大学)基于msp430单片机的数字温度计的制

目的
通过数字温度计的制作,介绍msp430单片机系列内核msp430f413微处理器,了解一个典型的430单片机系统的实现过程,能够使用430的C语言集成开发环境,掌握产品的开发流程。

目标对象
高等院校对口专业(单片机软硬件、电子工程、自动化等)高年级学生。

特别是面临就业的毕业班学生。

课程设计
实习课程安排:
1、msp430flash型超低功耗16位单片机的硬件结构介绍及应用领域
2、430的汇编语言和c语言的编程结构简单介绍
3、430的c语言开发环境(IAR Embedded Workbench for MSP430)的应用
4、配合一些简单的实例练习软件的使用和软件仿真
5、数字温度计的原理及电路图分析
6、焊接数字温度计的电路板
7、调试数字温度计的电路板,硬件仿真、功能实现及如何解决所出现的问题。

温度测量系统设计,基于msp430单片机

温度测量系统设计,基于msp430单片机

温度测量系统设计,基于msp430单片机本文介绍一种应用msp430 单片机测量温度的方法,来代替传统教学中相对落后的热敏电阻结合电流表的实验方法。

1 温度测量部分用于测量温度的温度敏感元件有很多种,比如热电偶、热敏电阻、集成温度传感器、数字温度传感器等等。

本系统采用的是热敏电阻。

热敏电阻由对温度非常敏感的半导体陶瓷质工作体构成。

与一般常用的金属电阻相比,它有较大的电阻温度系数,可以获得较高的温度分辨率。

不同材料制成的热敏电阻适用的测温范围不同,如CuO 和MnO2 制成的热敏电阻适用于-70~120℃,适于测量体温。

温度是模拟量,要把被测的模拟量转换成数字量,以供单片机处理。

为了节约成本,可以通过斜率A/D 转换来实现模数转换。

斜率A/D 转换是利用外接电容的充电和放电来实现的。

电路连接如图1 所示。

应用msp430 的比较器(Comparator_A)和定时器(Timer_A),可以测量热敏电阻的阻值。

根据阻值和温度的对应关系可以得出待测的温度,实现A/D 转换。

将Comparator_A 的CA0 端接外部信号,CA1 端接内部参考电压0.25Vcc.Timer_A 工作在捕获模式,下降沿捕获,通过CCI1B 捕获CAOUT.先使P1.2 端口输出高电平,通过Rref 给电容C6 充电。

充电完毕时,CA0 端电压高于CA1 端电压,CAOUT 输出1.读Timer_A 的计数值t0,t0=TAR.然后再使P1.2 端口输出低电平,电容C6 通过Rref 放电,当CA0 端电压降至0.25Vcc 时,Comparator_A 输出翻转,CAOUT 输出0,Timer_A 通过CCI1B 捕获到下降沿,触发定时器中断,读出捕获值CCR1,t1=CCR1.C6 通过Rref 放电到0.25Vcc 的时间time_ref=t1-t0.再对热敏电阻Rsens 充电和放电,同样测出C6 通过Rsens 放电到0.25Vcc 的时间time_sens.由下面的公式可以计算出热敏电阻。

基于MSP430的温度采集系统设计

基于MSP430的温度采集系统设计

摘要温度的采集和控制在各个行业中都占有重要位置,所以温度采集控制仪表具有广泛的应用前景,越来越多的领域应用到以单片机为控制核心,用液晶以及LED数码管为显示终端的数字化控制设备,通过单片机对被控对象进行智能控制。

本设计采用MSP430F149微处理器为核心处理器,以DS18B20温度传感器采集实现温度信息的采集和处理,并能实时显示温度信息,并能对温度上下限进行控制,通过键盘设定报警温度,高于或低于报警温度,系统报警。

系统硬件由电源及复位模块、温度采集模块、键盘输入模块、显示模块和报警模块六部分组成,软件采用模块化编程思想,采用C51编程语言实现系统功能。

通过搭建测试环境,对该系统进行功能测试和指标测试,测试结果表明,该系统的测试结果与实际环境温度相符合,并且温度报警也比较灵敏,除了具有接口电路简单、测量精度高、误差小、可靠性高等特点外,其低成本、低功耗的特点使其拥有更广阔的前景。

【关键词】MSP430F149,温度控制仪(键盘),DS18B20,LED数码管。

【论文类型】应用型Thesis: MSP430-based temperature acquisition system design Profession: Electronic and Information EngineeringStudents: Wang Yongfei Signature:Instructor: Zhang Xiaoli Signature:AbstractAcquisition and control of the temperature occupy an important position in various industries, so the temperature acquisition and control instrumentation has broad application prospects, more and more areas of application to control core microcontroller, LCD and LED digital tube display terminal of the digital control equipment, and intelligent control of the controlled object by the microcontroller.This design uses the MSP430F149 microprocessor as the core processor, DS18B20 temperature sensor collected temperature information acquisition and processing, and real-time display and control. Via the keyboard to set the alarm temperature, higher or lower than the alarm temperature, the system alarm. This article focuses on the hardware and software programming of the system design process. The hardware has six parts: the power and reset module, the temperature acquisition module, the keyboard input module, display module and alarm module.Up the test environment, the system functional tests and indicators for testing, test results show that the test results is consistent with the actual ambient temperature and the temperature alarm is also more sensitive in addition to the interface circuit is simple, high accuracy, error , high reliability, low-cost, low power consumption make it more broad prospects.【Key words】MSP430F149, the temperature control device (keyboard), DS18B20, LED digital tube.【Type of Thesis】Application目录1 绪论 (1)1.1课题研究目的及意义 (1)1.2课题主要研究内容及指标 (2)2 测温系统总体设计 (3)2.1 系统工作原理 (3)2.2 系统工作流程 (3)2.3 系统核心器件选型 (3)2.4 MSP430F149单片机 (4)2.5 单线数字温度传感器DS18B20 (6)3 测温系统的硬件设计 (8)3.1 电源及复位模块设计 (8)3.2 LED显示模块设计 (9)3.3键盘输入模块设计 (9)3.4温度采集模块设计 (10)3.5温度报警模块设计 (12)4 测温系统的软件设计 (13)4.1 系统软件结构及流程图 (13)4.2 LED显示模块程序设计 (15)4.3 键盘输入模块程序设计 (15)4.4 温度采集模块程序设计 (16)4.5 报警模块程序设计 (16)4.6 主模块程序设计 (17)5 系统测试 (18)5.1 系统硬件调试 (18)5.2 系统软件调试 (18)5.2.1 IAR开发环境简介 (18)5.2.2 软件调试 (19)5.2.3 两部分间的联合调试 (19)5.3系统结果测试 (19)6 总结与展望 (21)6.1 总结 (21)6.2 展望 (21)致谢 ......................................................................... 错误!未定义书签。

基于msp430单片机的温度控制系统的设计

基于msp430单片机的温度控制系统的设计


1.4 ERP 的类型
参考文献
ERP 产品很多 如:完整的 ERP 系统是生产 供
销 财务完全集成 包含预算控制 计划自动生成
[1] 宁 俊 服装企业管理教学案例[M] 北京
和自动下达 包含供应商和客户的管理及供应链的 中国纺织出版社 2004
上接 83 页 MSP430F1121 单片机对温度的控制是通过可控硅实现的 由 MSP430F1121 单片机 P1.1 发出控制信号 控制可控硅的通断就可实现控制温度的目的 MSP430F1121 只要改变P1.1 的接通时间就可调节温度的变化 由于加热丝存在热惯性和时间滞后等特性 为精确控制温度带来困难 可通过脉冲加热控制法控制温度 即 通过测得的温度与设定温度的差值大小 分别采用不同宽度的脉冲 控制P1.1的接通时间达到控温的目的 3 结束语 MSP430F1121 单片机和热敏电阻体积小 重量轻 抗干扰性能强 价格低廉 结构稳定 可靠性高 灵活性好 一致性好 对环境要求不高的优点 应用简单方便 本文的温度测控系统仅是单片机广泛应用 的一例 相信单片机的应用会越来越广泛
以热敏电阻为测量元件的 MSP430F1121 单片机温度测控系统电路原理图略 可向作者索取 本文仅 对温度测量与控制电路部分进行描述
2.1 温度测量电路与软件设计
传统的办法采用充电的办法测量 为增加分别率 我们取内部的
0.25Vcc作为阈值电压 采用放电的办法可分别测出参考电阻Rref的
放电时间Tref 热敏电阻器电阻Rsensor 的放电时间Tsensor则有下
TAX_ISR add
&TAIV,PC
reti
C C R 1 _ I S R bic
#LPM0,0(SP)
reti

msp430课程设计

msp430课程设计

msp430课程设计一、教学目标本课程的教学目标是使学生掌握MSP430单片机的基本原理、编程方法和应用技巧。

具体来说,知识目标包括了解MSP430单片机的结构、特点和工作原理,掌握C语言编程的基本语法,熟悉MSP430单片机的应用领域。

技能目标则要求学生能够熟练使用MSP430开发工具进行程序设计和调试,能够独立完成简单的MSP430单片机应用项目。

情感态度价值观目标则是培养学生对电子技术的兴趣和热情,提高他们的问题解决能力和创新意识。

二、教学内容本课程的教学内容主要包括MSP430单片机的硬件结构、编程语言、开发环境和应用实例。

具体来说,将讲解MSP430单片机的各个模块及其功能,包括CPU、内存、外设等,以及这些模块是如何协同工作来实现各种功能的。

接下来,将介绍C语言编程的基本语法和编程技巧,包括数据类型、运算符、控制语句等,以及如何使用MSP430的开发工具进行程序设计和调试。

最后,将通过一些具体的应用实例来展示如何使用MSP430单片机来解决实际问题,比如温度计、电子钟等。

三、教学方法为了达到上述教学目标,将采用多种教学方法相结合的方式进行教学。

首先,将采用讲授法来讲解MSP430单片机的硬件结构和C语言编程的基本语法。

通过讲解,使学生能够理解和掌握相关知识。

其次,将采用讨论法来探讨一些实际的应用案例,引导学生通过讨论和思考来解决问题。

此外,还将采用实验法让学生通过动手实践来加深对知识的理解和应用能力。

最后,将采用案例分析法来分析一些成功的MSP430单片机应用项目,使学生能够了解和掌握如何将理论知识应用于实际项目中。

四、教学资源为了支持教学内容的讲解和教学方法的实施,将准备一系列的教学资源。

首先,将使用教材《MSP430单片机原理与应用》作为主要的教学资料,引导学生学习和掌握相关知识。

其次,将提供一些参考书籍和在线资料,供学生进行深入学习。

此外,还将准备一些多媒体资料,如PPT、视频等,以直观的方式展示一些复杂的原理和应用案例。

MSP430单片机实现的温度控制

MSP430单片机实现的温度控制
本实例中主要使用到的单片机资源包括 ADC10,定时器 TA2 和通用 IO 口。软件上用到 ADC 中断和定时器中断。具体内容将在以下章节加以介绍。
1.1.2 作品功能简介
本作品为温度控制器,利用热电阻温度传感器进行温度检测,并通过设置上下限对温度 进行继电器加电/断电的温度控制,并对当前温度和继电器状态在 LCD 上进行显示。
-1-
第一章 作品概述
1.1 作品基本情况介绍
1.1.1 MSP430G2231 简介
本实例使用芯片为 MSP430G2231,其内部主要资源包括:低功耗 16 位 MSP430 微处理 器;2KB 的 Flash 存储器,128B 的 RAM,一个带两路捕获功能的定时器模块 TA2,支持 SPI 和 I2C 通信的通用串行接口 USI,8 通道 10 位 ADC(6 路外部输入+1 路内部温度传感 器+1 路内部电压),LF、DCO、VLO 组成的时钟系统,10 个通用 IO 口(P1.0~P1.7,P2.6, P2.7)。
图 1.1 系统硬件结构
-3-
1.2.2 系统软件结构
本实例软件结构较为简单,如图 1.2 所示,系统首先进行初始化,包括进行时钟源选择, 看门狗的关闭,AD 模块和定时器模块的工作方式设置,单片机各 I/O 口的初始化即液晶初 始化和初始显示等工作。在系统初始化完成以后,进入主循环。在主循环以中断方式进行 AD 采样,采样结束唤醒 CPU,每采样八次计算一次平均值并进行采样结果读取和数据处理过 程,主要包括电压电阻和温度值的计算。此过程持续进行直到定时器 1s 定时中断的到来, 在定时中断中,重新写入定时初始值,进行温度比较并根据比较结果控制继电器动作,然后, 刷新 LCD 显示结果,即每一秒钟刷新一次显示结果。

MSP430单片机温度控制系统的设计与实现

MSP430单片机温度控制系统的设计与实现

MSP430单片机温度控制系统的设计与实现【摘要】本文介绍以MSP430系列单片机为核心的材料合成温度控制系统的设计与实现。

该设计中采用双路铂铑—铂热电偶温度传感器分别对镓端和砷端温度进行时实检测和控制,用超低温漂移高精度运算放大器OP07进行放大,由单片机运算、处理,执行控制电路采用光耦合双向可控硅控制输出,实现了对砷化镓合成温度的精确控制。

【关键词】单片机;温度控制;运算放大1.引言在各种工业生产过程中,温度的测量与控制成为工业控制对象中一个重要的被测控参数。

随着电子信息技术的发展,尤其是单片机测量控制技术的迅速发展和广泛应用,利用单片机对温度测控越来越显示出其优越性。

单片机具有功能强、体积小、速度快、价格低等特点,广泛应用于各种工业测控系统中。

本文介绍以MSP430系列单片机单片机为核心,实现对材料合成温度的测量与控制。

2.系统功能由Ga-As系统相图得知,在GaAs材料合成过程中,要求温度与组分相匹配。

GaAs的化学比不同,其熔点不同,随着砷的比例的增加,熔点升高。

只有严格控制砷端和镓端的温度,才能保持整个合成过程为全热相合成。

在镓端加热的同时,也加热砷端,使砷升华,砷蒸气扩散到液态镓中与镓化合生成砷化镓。

随着Ga-As组分的变化,熔点不断上升。

合成完成后砷端615℃,GaAs熔体为1238℃,达到Ga-As体系相平衡,化学比为1:1。

合成的关键是砷端和镓端升温速度要相匹配,整个合成过程要求全液相不结晶。

需要镓端升温速度为22.5℃/min,砷端升温速度为11.2℃/min,镓端和砷端温度比2:1,需70min完成合成。

3.系统总体设计材料合成温度控制系统的核心是用单片机来进行数据处理和程序控制。

除单片机单元外其他部分由镓端加热器、砷端加热器、热偶温度检测电路、数据放大电路、双路加热控制电路、温度LED显示电路、键盘输入、报警电路等模块构成。

系统总体框图如图1所示。

图1 系统总体框图合成炉由高温端(Ga端)和低温端(As端)两部分构成。

基于msp430超低功耗单片机温度控制器计划

基于msp430超低功耗单片机温度控制器计划

于建坤
MSPG2553 控制
环境采集和人距 感应部分
基于 msp430 单片机的超低功耗智能护眼灯的设计 1.实验目的
1、了解 pwm 控制灯光亮度的原理,设计基于单片机的智能护眼灯控制装置。 2、学习电子电路、PCB 板设计,产品制作与调试。
2.实验内容
本智能护眼灯以 MSP43G2553 为核心,完成护眼灯的照明,电源管理,环境采 集和中央处理及控制功能。灯珠采用高亮白光 LED,恒流驱动,无频闪,不伤害眼睛, 保护视力。电源管理,由专用电源管理方案,管理系统充电和用电。环境采集,用 光传感器采集光照强度,根据光照强度控制灯珠亮度,用人体热释红外检测人远近。
开放实验报告
课 题 名 称 基于 msp430 单片机的超低功耗智能护眼灯的设计
学生姓名
系、年级专业
指导教师
信息工程系、11、12 级电子信息
2014 年 6 月 20 日
对全部高中资料试卷电气设备,在安装过程中以及安装结束后进行高中资料试卷调整试验;通电检查所有设备高中资料电试力卷保相护互装作置用调与试相技互术关,通系电1,力过根保管据护线生高0不产中仅工资2艺料22高试2可中卷以资配解料置决试技吊卷术顶要是层求指配,机置对组不电在规气进范设行高备继中进电资行保料空护试载高卷与中问带资题负料2荷试2,下卷而高总且中体可资配保料置障试时2卷,32调需3各控要类试在管验最路;大习对限题设度到备内位进来。行确在调保管整机路使组敷其高设在中过正资程常料1工试中况卷,下安要与全加过,强度并看工且25作尽52下可22都能护可地1关以缩于正小管常故路工障高作高中;中资对资料于料试继试卷电卷连保破接护坏管进范口行围处整,理核或高对者中定对资值某料,些试审异卷核常弯与高扁校中度对资固图料定纸试盒,卷位编工置写况.复进保杂行护设自层备动防与处腐装理跨置,接高尤地中其线资要弯料避曲试免半卷错径调误标试高方中等案资,,料要编试求5写、卷技重电保术要气护交设设装底备备置。4高调、动管中试电作线资高气,敷料中课并设3试资件且、技卷料中拒管术试试调绝路中验卷试动敷包方技作设含案术,技线以来术槽及避、系免管统不架启必等动要多方高项案中方;资式对料,整试为套卷解启突决动然高过停中程机语中。文高因电中此气资,课料电件试力中卷高管电中壁气资薄设料、备试接进卷口行保不调护严试装等工置问作调题并试,且技合进术理行,利过要用关求管运电线行力敷高保设中护技资装术料置。试做线卷到缆技准敷术确设指灵原导活则。。:对对在于于分调差线试动盒过保处程护,中装当高置不中高同资中电料资压试料回卷试路技卷交术调叉问试时题技,,术应作是采为指用调发金试电属人机隔员一板,变进需压行要器隔在组开事在处前发理掌生;握内同图部一纸故线资障槽料时内、,设需强备要电制进回造行路厂外须家部同出电时具源切高高断中中习资资题料料电试试源卷卷,试切线验除缆报从敷告而设与采完相用毕关高,技中要术资进资料行料试检,卷查并主和且要检了保测解护处现装理场置。设。备高中资料试卷布置情况与有关高中资料试卷电气系统接线等情况,然后根据规范与规程规定,制定设备调试高中资料试卷方案。

基于MSP430单片机的温度监控系统设计

基于MSP430单片机的温度监控系统设计

摘要当前,温度控制系统被广泛应用于生活的很多方面,它与人们的日常生活、工作和学习息息相关。

如何设计制作一个性能良好的温度监控系统,实现温度的精确、实时监控成为设计该系统的主要问题。

随着我国电子技术的不断提高,以单片机为核心处理器,温度传感器为远端设备构成的温度监控系统逐渐成为时下的主流设计。

论文介绍了温度控制系统的研究背景和研究意义,国内外发展状况,超低功耗系列单片机MSP430,单总线数字温度传感器DS18B20等器件以及设计所需的相关软件的使用。

在此基础上,对系统进行设计、编程和调试,并绘制了系统的电路原理图和印制板图。

该温度监控系统具有监控多点温度,并将其循环显示,利用按键实现某一点的选择显示,从而实现多点温度的实时监控的功能。

关键词:超低功耗单片机,单总线温度传感器,JTAG仿真ABSTRACTCurrently, The temperature control system is widely used in our daily life and closely linked with our work and study. How to design and make a temper -ature control system which has the characters of high performance, accurate measurement,real time monitoring is still a main problem. As with the high de-velopment of the electronic technique in our country, the temperature control system used the microcontroller as the centre and thermal sensor as the far-end equipment is becoming the main trend.In this paper, it introduces the research background and the significance of the temperature control system, the situation at home and abroad. the MSP430 series MCU which is widely used now ,the digital thermal sensor, DS18B20 and so on. At that basis , we design, programe and debug it, draw the SCH and PCB about it in the Protel. It can monitor the temperature of multi-points and choose one to display in the LCD by pressing the key, which leads to realizing the meal time monitoring of the temperature of these points.Keywords:Ultralow-Power microcontroller, the one-wire digital thermal sensor, JTAG simulation目录1 绪论 (1)1.1研究背景和意义 (1)1.2 国内外动向 (2)1.3 课题的主要研究内容 (5)2 系统方案设计 (6)2.1 MSP430系列单片机 (6)2.2 DS18B20数字温度传感器 (11)2.3 DS1302日历时钟芯片 (17)2.4 OCMJ4x8B液晶显示模块 (20)2.5 键盘 (24)2.6 JTAG仿真和IAR Workbench (26)2.7 结语 (30)3 系统电路及软件实现 (31)3.1系统设计框图及功能实现 (31)3.2单元电路原理图 (32)3.3 系统程序设计 (37)3.4结语 (45)4 总结与展望 (46)参考文献 (48)致谢 (50)附录 (51)附录1 外文文献 (51)附录2 温度监控系统C语言程序 (64)附录3 电路原理图和印制板图 (72)1 绪论1.1研究背景和意义在人们的日常生活、工业制造、制冷等领域,温度作为当前环境的重要因素之一,被人们广泛的作为参考因素来使用,从而保证各项工作的正常运行,如火灾报警、温室或粮仓中温度的实时监测、冷库温度的调节等,因此以温度参数为基础而设计的温度控制系统被广泛开发和使用。

基于MSP430单片机的温度测控装置的设计与开发

基于MSP430单片机的温度测控装置的设计与开发

基于MSP430单片机的温度测控装置的设计与开发设计与开发基于MSP430单片机的温度测控装置一、引言随着科技的不断进步,温度测控装置在生活和工业中扮演着重要的角色。

本文将介绍基于MSP430单片机的温度测控装置的设计与开发。

该装置可以用于实时监测环境温度,并根据设定的阈值控制温度。

二、硬件设计1.传感器选择:本设计采用温度传感器DS18B20。

它是一种数字式温度传感器,通过一根串行线来与单片机通信。

2.电路连接:将传感器与MSP430单片机连接。

传感器的VCC引脚接单片机的3.3V电源,GND引脚接地,DQ引脚接到单片机的GPIO引脚。

3.LCD模块:为了显示当前温度和控制参数,我们需要一个LCD模块。

将LCD模块的数据引脚接到单片机的GPIO引脚。

4.电源:设计一个适当的电源电路,以提供所需的电压和电流。

三、软件设计1.硬件初始化:在程序开始时,初始化MSP430单片机的GPIO引脚,配置传感器引脚为输入模式和LCD数据引脚为输出模式。

2.温度采集:通过传感器的引脚与单片机通信,获取当前温度数据。

传感器采用一线式通信协议,在读取温度数据之前,先向传感器发送读取命令,然后从传感器接收数据。

单片机通过GPIO引脚进行数据的收发。

3.温度显示:将获取到的当前温度数据通过LCD模块显示出来。

4.温度控制:设定一个温度阈值,当实际温度超过阈值时,单片机控制继电器等设备进行温度调节。

可以采用PID控制算法,根据当前温度与设定温度的差异,调整控制设备的输出。

5.程序循环:通过一个无限循环来保持程序运行。

四、测试与验证1.硬件测试:对硬件电路进行测试,确保传感器和LCD模块的接线正确,电源电压稳定。

2.软件测试:通过模拟不同温度值,确认温度采集、显示和控制功能正常。

3.综合测试:将温度测控装置放置在实际环境中,观察温度采集和控制性能,根据需要进行调整。

五、结论本文设计与开发了基于MSP430单片机的温度测控装置。

基于MSP430单片机的温度PID算法设计毕业设计(论文)

基于MSP430单片机的温度PID算法设计毕业设计(论文)

本科生毕业设计(论文)基于MSP430单片机的温度PID算法设计Design of Temperature PID Algorithm Based on MSP430 Single Chip Microcomputer总计: 20 页表格: 0 个插图: 13 幅南阳理工学院本科毕业设计(论文)基于MSP430单片机的温度PID算法设计Design of Temperature PID Algorithm Based on MSP430 SingleChip Microcomputer学院(系):电子与电气工程学院专业:自动化Nanyang Institute of Technology毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。

尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。

对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。

作者签名:日期:指导教师签名:日期:使用授权说明本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。

作者签名:日期:I学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。

除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。

对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。

本人完全意识到本声明的法律后果由本人承担。

基于MSP430F149单片机的温度变送器设计

基于MSP430F149单片机的温度变送器设计

基于MSP430F149单片机的温度变送器设计————————————————————————————————作者:————————————————————————————————日期:基于MSP430F149单片机的温度变送器设计摘要:温度变送器是一种将温度变量转换为可传送的标准化输出信号的仪表,主要用于工业过程中温度参数的测量和控制。

本文研究的是一种由传感器和信号转换器(信号处理和转换单元)两个重要模块组成的温度变送器。

文章简要介绍了MSP430F149单片机的结构、特性和功能,通过对温度传感器、单片机引脚分配、外围电路设计、信号转换及放大调理等部分的阐述,完成了基于该单片机控制系统的、实现温度变送功能的硬件组成设计。

关键词:MSP430F149单片机;放大电路;AD/DA;4—20mADesign of the Temperature-transmitter Based on MCU MSP430F149 Abstract: Temperature—transmitter is a kind of instrument converting temperature variable to standardized output signal which can be transmitted, it’s mainly used for the measurement and control of the temperature parameters in industrial process. In this paper,we study a temperature transmitter which is composed of two important modules, sensor and signal converter (signal processing and conversion unit)。

msp430温度计设计报告

msp430温度计设计报告

基于msp430单片机的数字温度控制系统姓名:刘佳福、张爱平、开光成指导老师:黄珂目录一.摘要 (2)二.方案设计 (2)1.方案图 (2)三.程序流程图 (2)四.各单元电路分析 (3)五.调试设备与结果 (4)六.调试说明与问题 (4)七.小结 (4)八.附录 (5)一.摘要单片机系统使用LCD1602及独立键盘,通过DS18B20温度传感器采集到的温度数据,通过单片机的处理,再把它存储到存储器中,通过LCD来显示。

DS18B20 是美国Dallas 公司生产的单总线数字输出型集成温度传感器,能够直接读出被测温度值,并且可根据实际要求通过编程实现9~12 位的数字量输出,将温度值转化为9 位数字量所需时间为93.75 ms,转化为12 位数字量所需时间为750 ms。

测试温度范围为-55~+125,精度可达0.0675℃。

关键字:DS18B20温度传感器、LCD1602及独立键盘。

二.方案设计1、采集部分:通过温度传感器将采集到的温度传输到单片机里处理。

2、显示部分:采用LCD1602进行动态扫描显示,显示采集到的温度值、时钟等数据。

3、控制部分:通过独立键盘来控制各项功能,能够显示最大最小温度,并且能够声光三.程序流程图四.各单元电路分析A.复位电路当按键按下时RST直接与GND相连形成复位低电平,同时电容C1充电。

当按键松开时,电容放电,放电时间为T=RC。

放电过程中RST仍处于复位状态。

B.晶振电路用于给msp430芯片提供精准的时钟信号。

C.温度传感器电路利用DS18B20温度传感器,将温度信号转换成电信号送到msp430芯片进行处理。

D.报警电路报警电路有两部分组成,分别为蜂鸣器报警电路和LED报警电路组成。

在超过极限温度时蜂鸣器报警,同时其中一个LED灯指出是到达高温极限,还是低温极限。

E.显示电路用于显示时钟、计时、温度。

F.按键电路用于设置极限温度。

五.调试设备与结果1、测量结果能正确显示,且温度能精确到0.1摄氏度。

基于MSP430单片机的超低功耗电子温度计的设计

基于MSP430单片机的超低功耗电子温度计的设计

基于MSP430单片机的超低功耗电子温度计的设计
0 引言
3.1 温度采集转换电路
图中,Rref 是参考电阻,用于定标,Rsens 是被测电阻。

系统工作时首先令MSP430 接Rref 的口置位,然后输出高电平Vcc 并通过标准电阻对电容定时充电,定时时间到后,端口复位,使电容放电,放电过程一
直持续到电容上的电压降到充电端口为“0”电平的上限为止,截止时刻由
Timer_a 内部的捕捉器通过捕捉入口CA0 准确地捕捉。

这一段放电时间可标记为Tref。

然后,对P2.1 施以同样的操作,以获得电容通过被测电阻放电的时间Tsens。

最后比较Tref 和Tsens,并由下式计算出被测电阻值:
Rsens=RrefTmeas/Tref
式中,Rsens 为被测热敏电阻,Tsens 为被测组件放电时间,Tref 为参考组件放电时间,Rref 为参考精密电阻。

由上式可以看出,只要电压和电容的值在测量中保持稳定,电压和电容的具
体取值便不再重要,这是因为在比例测量原理中,这些因素在计算过程中已被
消除。

因此,尽管仪表的供电电池的电压具有离散性,并且该电压会随着时间
的推移逐渐减小,但是,由于被测电阻值的测量与电源电压值的大小毫无关系,所以该测量方法具有电源电压自补偿特性。

tips:感谢大家的阅读,本文由我司收集整编。

仅供参阅!。

基于MSP430数字温度计设计

基于MSP430数字温度计设计

基于msp430的数字温度计设计摘要随着人们生活水平的不断提高,单片机控制无疑是人们追求的目标之一,但人们对它的要求越来越高,要为现代人工作、科研、生活、提供更好的更方便的设施就需要从单片机技术入手,一切向着数字化控制,智能化控制方向发展。

本设计所介绍的数字温度测量系统与传统的温度报警相比,具有读数方便,温度范围广,测量准确,其输出温度采用数字显示,该设计控制使用MSP430单片机,在测量上利用9013三极管组成的电桥来感应温度并且通过单片机控制液晶显示出来,可以测量并且显示环境当前温度。

温度测量是从金属(物质)的热胀冷缩开始,常用的检测方法有电阻式、热电偶式、PN结型、辐射型、光纤式及石英谐振型等。

这些检测方法都是基于温度变化引起其物理参数(如电阻值,热电势等)变化的原理。

本次我们采用PN结的特性来进行测量。

总体方案设计1总体设计方案在单片机电路设计中,使用传感器,是非常容易想到的,但是在本次实验中,我们利用PN结的特性,并且利用PN结组成的电桥来测量温度。

然后再通过单片机进行转换,可以达到设计效果2方案的总体设计框图温度计电路设计总体设计方框图如下图所示,控制器采用MSP430单片机,温度感应采用9013三极管组成的电桥并且经过放大再送入单片机中进行处理,用1602液晶来实现温度的显示。

图1-1总体设计方框图温度采集部分在本次设计中,温度采集部分利用PN结的温度特性曲线来进行测试,然后再利用三运放电路进行放大,最终将数据送入单片机中进行处理而进行测量的,温度采集部分的电路图如下:输出电压的计算公式如下:显示部分利用1602液晶显示,在此不做过多叙述。

系统软件设计系统程序主要包括主程序和子程序,其中子程序又主要包括读出温度子程序、AD转换子程序、计算温度子程序,液晶显示子程序等。

其流程图大致如下:开始↓关闭看门狗↓采集模拟信号↓A/D转换↓液晶显示设计步骤整个系统通过16位单片机msp430x14x控制AD模块读数,采用LCD1602显示,温度传感器与单片机之间通过串口进行通信。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

理工大学计算机学院课程设计单片机系统设计班级计科1104姓名学号指导教师业德慧二○一四年十一月日课程设计任务书及成绩评定课题名称_______温度测试系统设计_______I、题目的目的和要求:利用温度传感器和MSP430单片机设计一个温度测试系统,将测试结果(十进制)在LED上显示出来,并定义一个保持按键,当按下该键时,将当前测试值保持不变(按键不动作时为正常测量显示)。

温度显示格式为:XXX ℃。

II、设计进度及完成情况III、主要参考文献及资料MSP430系列16位低功耗单片机原理及应用DS18B20温度传感器的使用智能仪器原理及应用学科部主任业德Ⅵ、成绩评定:设计成绩:(教师填写)指导老师:(签字)二○年月日目录I、题目的目的和要求: (2)II、设计进度及完成情况 (2)III、主要参考文献及资料 (3)Ⅵ、成绩评定: (3)目录 (4)本次课程设计的目的和意义 (5)设计题目 (6)系统的主要功能、作用以及主要技术性能指标 (7)总体设计方案、工作和组成原理 (8)系统设计 (11)设计总结 (26)作品的使用或操作说明 (27)设计图纸或图表 (28)本次课程设计的目的和意义课程设计是让我熟练掌握了课本上的一些理论知识,课程设计也是一个学习新知识、巩固加深所学课本理论知识的过程,它培养了我们综合运用知识的能力,独立思考和解决问题的能力。

加深我们对单片机原理与应用课程的理解设计题目温度测试系统设计:利用温度传感器DS18B20和MSP430单片机设计一个温度测试系统,将测试结果(十进制)在LED上显示出来,并定义一个保持按键,当按下该键时,将当前测试值保持不变(按键不动作时为正常测量显示)。

温度显示格式为:XXX ℃。

系统的主要功能、作用以及主要技术性能指标系统的主要功能是单片机实时从温度传感器读取温度数据信息,并在数码管显示,同时扫描是否有保持按键按下,如果按下则不再继续从温度传感器读取温度数据信息,保持温度值不变。

作用是可以实时读取环境中的温度信息,供用户查看,同时当用户需要观察某温度时,可以按下按键保持温度不变。

主要技术指标:1.基本围0℃-99℃2. 精度误差小于0.5℃3. LED数码直读显示4. 扫描按键保持数值总体设计方案、工作和组成原理数字温度计设计方案论证方案一由于本设计是测温电路,可以使用热敏电阻之类的器件利用其感温效应,在将随被测温度变化的电压或电流采集过来,进行A/D转换后,就可以用单片机进行数据的处理,在显示电路上,就可以将被测温度显示出来,这种设计需要用到A/D转换电路,感温电路比较麻烦。

方案二进而考虑到用温度传感器,在单片机电路设计中,大多都是使用传感器,所以这是非常容易想到,所以可以采用一只温度传感器DS18B20,此传感器,可以很容易直接读取被测温度值,进行转换,就可以满足设计要求。

从以上两种方案,很容易看出,采用方案二,电路比较简单,软件设计也比较简单,故采用了方案二。

主控制器单片机采用MSP430单片机,处理能力强,功耗低,实现该功能仅需一个按键,8位数码管显示,以及DS18B20温度传感器。

显示电路:显示电路采用8位共阴LED数码管,从P4口输出段码。

图一总体设计框图温度传感器:DS18B20温度传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式。

DS18B20的性能特点如下:●独特的单线接口仅需要一个端口引脚进行通信;●多个DS18B20可以并联在惟一的三线上,实现多点组网功能;●无须外部器件;●可通过数据线供电,电压围为3.0~5.5V;●零待机功耗;●温度以9或12位数字;●用户可定义报警设置;●报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件;●负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作;DS18B20部结构框图如图2所示。

64位ROM的结构开始8位是产品类型的编号,接着是每个器件的惟一的序号,共有48位,最后8位是前面56位的CRC检验码,这也是多个DS18B20可以采用一线进行通信的原因。

温度报警触发器TH和TL,可通过软件写入户报警上下限。

DS18B20温度传感器的部存储器还包括一个高速暂存RAM和一个非易失性的可电擦除的EERAM。

高速暂存RAM的结构为8字节的存储器,结构如图3所示。

头2个字节包含测得的温度信息,第3和第4字节TH和TL的拷贝,是易失的,每次上电复位时被刷新。

第5个字节,为配置寄存器,它的容用于确定温度值的数字转换分辨率。

DS18B20工作时寄存器中的分辨率转换为相应精度的温度数值。

该字节各位的定义如图3所示。

低5位一直为1,TM是工作模式位,用于设置DS18B20在工作模式还是在测试模式,DS18B20出厂时该位被设置为0,用户要去改动,R1和R0决定温度转换的精度位数,来设置分辨率。

温度传感器连接如下图所示,DQ引脚与单片机的P5.3相连:系统设计接口电路设计,程序设计(程序框图和程序清单及注释)其他有关的理论分析和计算接口电路设计:主控制器MSP430温度传感器保持按键数码管电路程序框图:总体设计流程图读取温度传感器数据流程图数码管温度显示程序设计://*************************定义引脚********************************** #define LED8PORT P2OUT //P2接8个LED灯#define LED8SEL P2SEL //P2接8个LED灯#define LED8DIR P2DIR //P2接8个LED灯#define DATAPORT P4OUT //数据口所在端口P4#define DATASEL P4SEL //数据口功能寄存器,控制功能模式#define DATADIR P4DIR //数据口方向寄存器#define CTRPORT P6OUT //控制线所在的端口P6#define CTRSEL P6SEL //控制口功能寄存器,控制功能模式#define CTRDIR P6DIR //控制口方向寄存器#define DCTR0 P6OUT &= ~BIT4 //数码管段控制位信号置低#define DCTR1 P6OUT |= BIT4 //数码管段控制位信号置高#define WCTR0 P6OUT &= ~BIT3 //数码管位控制位信号置低#define WCTR1 P6OUT |= BIT3 //数码管位控制位信号置高#define KEYPORT P1OUT //按键所在的端口P1#define KEYSEL P1SEL //控制口功能寄存器,控制功能模式#define KEYDIR P1DIR //控制口方向寄存器#define KEYIN P1IN //键盘扫描判断需要读取IO口状态值uchar key=0xFF; //键值变量uint temp_value;float truetemp;uint temp,A1,A2,A3; //定义的变量,显示数据处理//*******************共阴数码管显示的断码表************************ uchar table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};// *******************系统时钟初始化***************************void Clock_Init(){uchar i;BCSCTL1&=~XT2OFF; //打开XT2振荡器BCSCTL2|=SELM1+SELS; //MCLK为8MHZ,SMCLK为8MHZdo{IFG1&=~OFIFG; //清楚振荡器错误标志for(i=0;i<100;i++)_NOP();}while((IFG1&OFIFG)!=0); //如果标志位1,则继续循环等待IFG1&=~OFIFG;}//*******************MSP430部看门狗初始化***********************void WDT_Init(){WDTCTL = WDTPW + WDTHOLD; //关闭看门狗}//*******************MSP430IO口初始化*****************************void Port_Init(){LED8SEL = 0x00; //设置IO口为普通I/O模式,此句可省LED8DIR = 0xFF; //设置IO口方向为输出LED8PORT = 0xFF; //P2口初始设置为FFDATASEL = 0x00; //设置IO口为普通I/O模式,此句可省DATADIR = 0xFF; //设置IO口方向为输出DATAPORT = 0xFF; //P4口初始设置为FFCTRSEL = 0x00; //设置IO口为普通I/O模式,此句可省CTRDIR |= BIT3 + BIT4 +BIT2; //设置IO口方向为输出,控制口在P63,P64 CTRPORT = 0xFF; //P6口初始设置为FFKEYSEL = 0x00; //设置IO口为普通I/O模式,此句可省KEYDIR = 0x0F; //高四位输入模式,低四位输出模式,外部上拉电阻KEYPORT= 0xF0; //初始值0xF0}//*************74HC573控制数码管动态扫描键值显示函数******************void Display_Key(uchar num){uchar i,j;j=0x01; //此数据用来控制位选for(i=0;i<8;i++) //8个数码管依次显示{DCTR1; //控制数码管段数据的74HC573的LE管脚置高WCTR1; //控制数码管位的74HC573的LE管脚置高DATAPORT=~j; //设置要显示的位,也就是哪一个数码管亮WCTR0; //锁存位数据,下面送上段数据以后,就显示出来了DATAPORT=table[num]; //送要显示的数据,这里是键值DCTR0; //锁存段数据,数码管亮一个时间片刻j=j<<1; //移位,准备进行下一位的显示delay_us(500); //显示一个时间片刻,会影响亮度和闪烁性}Close_LED(); //显示完8个数码管后关闭数码管显示,否则可能导致各个数码管亮度不一致}//*****************键盘扫描子程序,采用逐键扫描的方式******************uchar Key_Scan(void){uchar key_check;uchar key_checkin;key_checkin=KEYIN; //读取IO口状态,判断是否有键按下key_checkin&= 0xF0; //屏蔽掉低四位的不确定值if(key_checkin!=0xF0) //IO口值发生变化则表示有键按下{delay_ms(20); //键盘消抖,延时20MSkey_checkin=KEYIN; //再次读取IO口状态if(key_checkin!=0xF0) //确定是否真正的有键按下{key_check=KEYIN; //有键按下,读取端口值switch (key_check & 0xF0) //判断是哪个键按下{case 0xE0:key=1;break;case 0xD0:key=2;break;case 0xB0:key=3;break;case 0x70:key=4;break;}}}else{key=0xFF; //无键按下,返回FF}return key;}//******74HC573控制数码管动态扫描显示函数,显示采集到的温度************** void Display_DS18B20(uint data_b,uint data_s,uint data_g){uchar i,j;j=0x01; //此数据用来控制位选for(i=0;i<3;i++) //用后3位数码管来显示{DCTR1;WCTR1;DATAPORT=~j;WCTR0;j=(j<<1);DATAPORT=0x00; //前5位都不显示,送数据00即可DCTR0;delay_ms(2);}DCTR1; //开始显示第6位,即十位WCTR1;DATAPORT=~j;WCTR0;j=(j<<1);//DATAPORT=table[A1];DATAPORT=table[data_b];DCTR0;delay_ms(1);DCTR1; //开始显示个位WCTR1;DATAPORT=~j;WCTR0;j=(j<<1);//DATAPORT=table[A2]|0x80; //显示小数点DATAPORT=table[data_s]|0x80; //显示小数点DCTR0;delay_ms(1);DCTR1; //开始显示小数点后面的数据WCTR1;DATAPORT=~j;WCTR0;j=(j<<1);//DATAPORT=table[A3];DATAPORT=table[data_g];DCTR0;delay_ms(1);DCTR1; //开始显示温度单位WCTR1;DATAPORT=~j;WCTR0;j=(j<<1);//DATAPORT=table[A3];DATAPORT=0x63;DCTR0;delay_ms(1);DCTR1; //开始显示温度单位WCTR1;DATAPORT=~j;WCTR0;j=(j<<1);//DATAPORT=table[A3];DATAPORT=0x39;DCTR0;delay_ms(1);DCTR1;WCTR1;DATAPORT=0xff;WCTR0;}//************************DS18B20初始化******************************* unsigned char DS18B20_Reset(void) //初始化和复位{unsigned char i;DQ_OUT;DQ_CLR;delay_us(500); //延时500uS(480-960)DQ_SET;DQ_IN;delay_us(80); //延时80uSi = DQ_R;delay_us(500); //延时500uS(保持>480uS)if (i){return 0x00;}else{return 0x01;}}//**********************DS18B20读一个字节函数**************************** unsigned char ds1820_read_byte(void){unsigned char i;unsigned char value = 0;for (i = 8; i != 0; i--){value >>= 1;DQ_OUT;DQ_CLR;delay_us(4); //*延时4uSDQ_SET;DQ_IN;delay_us(10); //*延时10uSif (DQ_R){value|=0x80;}delay_us(60); //*延时60uS}return(value);}//**********************向18B20写一个字节函数************************ /*DS18B20字节写入函数*/void ds1820_write_byte(unsigned char value){unsigned char i;for (i = 8; i != 0; i--){DQ_OUT;DQ_CLR;delay_us(4); //延时4uSif (value & 0x01){DQ_SET;}delay_us(80); //延时80uSDQ_SET; //位结束value >>= 1;}}//********************发送温度转换命令********************************* /*启动ds1820转换*/void ds1820_start(void){DS18B20_Reset();ds1820_write_byte(0xCC); //勿略地址ds1820_write_byte(0x44); //启动转换}//***********************DS8B20读取温度信息************************ unsigned int ds1820_read_temp(void){unsigned int i;unsigned char buf[9];DS18B20_Reset();ds1820_write_byte(0xCC); //勿略地址ds1820_write_byte(0xBE); //读取温度for (i = 0; i < 9; i++){buf[i] = ds1820_read_byte();}i = buf[1];i <<= 8;i |= buf[0];temp_value=i;temp_value=(uint)(temp_value*0.625); //不是乘以0.0625的原因是为了把小数点后一位数据也转化为可以显示的数据//比如温度本身为27.5度,为了在后续的数据处理程序中得到BCD码,我们先放大到275//然后在显示的时候确定小数点的位置即可,就能显示出27.5度了return i;}//*********************温度数据处理函数****************************void data_do(uint temp_d){A3=temp_d%10; //分出百,十,和个位temp_d/=10;A2=temp_d%10;A1=temp_d/10;}//***********************处理温度数据*********************void handletemp(){ds1820_start(); //启动一次转换ds1820_read_temp(); //读取温度数值data_do(temp_value); //处理数据,得到要显示的值truetemp=0.1*temp_value;//judgeAlarm(); //判断是否触发警报//已将其添加至按键程序}//***********************显示温度**********************void showtemp(){uchar j;for(j=0;j<100;j++){Display_DS18B20(A1,A2,A3); //显示温度值}//delay_ms(100); //延时100ms}//***************************主程序************************void main(void){uchar flag1,flag2,flag3,flag4;//uint key_store=0x00; //没有按键按下时,默认显示1WDT_Init(); //看门狗初始化Clock_Init(); //时钟初始化Port_Init(); //端口初始化,用于控制IO口输入或输出//Close_LED();DS18B20_Reset(); //复位D18B20delay_ms(100); //延时100mswhile(1){Key_Scan(); //键盘扫描,看是否有按键按下if(key!=0xff) //如果有按键按下,则显示该按键键值1~4{{switch(key){case 1: LED8PORT=0xfc;flag1=1;flag2=0;flag3=0;flag4=0;break;//对温度数据处理判断警报,然后显示,handletemp();showtemp();case 2: LED8PORT=0xf3;flag1=0;flag2=1;flag3=0;flag4=0;break;//温度数据处理判断警报,关闭显示,节省电源,handletemp();Close_LED();case 3: LED8PORT=0xcf;flag1=0;flag2=0;flag3=1;flag4=0;break;//关闭警报,SOUNDOFF;handletemp();case 4: LED8PORT=0x3f;flag1=0;flag2=0;flag3=0;flag4=1;break;//测试警报SOUNDON;}}}else{LED8PORT&=0xff; //if(flag1==1){//handletemp();showtemp();}if(flag2==1){handletemp();showtemp();}if(flag3==1){SOUNDOFF;handletemp();}if(flag4==1){SOUNDON;}}}}设计总结对整个设计工作过程进行归纳和综合,对设计中所存在的问题和不足进行分析和总结,提出解决的方法、措施、建议和对这次设计实践的认识、收获和提高。

相关文档
最新文档