温度控制单片机PWM输出设计.docx
《温度控制单片机PWM输出设计.docx》由会员分享,可在线阅读,更多相关《温度控制单片机PWM输出设计.docx(23页珍藏版)》请在冰豆网上搜索。
温度控制单片机PWM输出设计
学号
天津城建大学
单片机原理及接口技术课程设计
设计说明书
温度控制单片机PWM输出设计
起止日期:
2014年1月6日至2014年1月17日
学生姓名
王博
班级
11级电信2班
成绩
指导教师(签字)
计算机与信息工程学院
2014年1月17日
天津城建大学
课程设计任务书
2013—2014学年第1学期
计算机与信息工程学院电子信息工程专业班级11级电信2班学号
课程设计名称:
单片机原理及接口技术
设计题目:
温度控制单片机PWM输出设计
完成期限:
自2014年1月6日至2014年1月17日共2周
设计依据、要求及主要内容:
一.设计的目的
1.进一步熟悉和掌握单片机系统设计和编程原理。
2.掌握单片机的接口技术及相关外围芯片的外特性、控制方法。
3.通过设计,掌握以单片机核心的电路设计的基本方法和技术。
4.通过实际程序设计和调试,掌握模块化程序设计方法和调试技术。
5.通过完成一个包括电路设计和程序开发的完整过程,了解开发单片机应用系统的全过程,为今后从事相应开发打下基础。
二.设计的基本要求
1.认真认识设计的意义,掌握设计工作程序,学会使用工具书和技术参考资料,并培养科学的设计思想和良好的设计作风。
2.提高模型建立和设计能力,学会应用相关设计资料进行设计计算的方法。
3.提高独立分析、解决问题的能力,逐步增强实际应用训练。
4.设计的说明书要求简洁、通顺,电路图内容完整、清楚、规范。
三.设计主要内容
a)设计实现功能
STC12C5A60S2(引脚排序及基本功能同AT89S51)作为主控芯片,设计利用LCD1602显示时间、温度、PWM参数和占空比信息。
一是扩展DS12C887外围电路,实现时间信息显示;二是DS18B20温度信息显示的设计;三是利用温度控制PWM输出,使占空比与温度成正比变化。
b)原理图设计
1.原理图设计要符合项目的工作原理,连线要正确。
2.图中所使用的元器件要合理选用,电阻、电容等器件的参数要正确标明。
3.原理图要完整,CPU、外围器件、外扩接口、输入/输出装置要一应俱全。
c)程序调计
1.根据要求,将总体功能分解成若干个子功能模块,每个功能模块完成一个特定的功能。
2.根据总体要求及分解的功能模块,确定各功能模块之间的关系,设计出完整的程序流程图。
d)程序调试
1.编写相关程序,并进行仿真。
2.将程序下载到单片机,进行运行调试。
e)设计说明书
1.原理图设计说明
简要说明设计目的,原理图中所使用的元器件功能及在图中的作用,各器件的工作过程及顺序。
2.程序设计说明
对程序设计总体功能及结构进行说明,对各子模块的功能以及各子模块之间的关系作较详细的描述。
3.画出工作原理图,程序流程图并给出相应的程序清单。
指导教师(签字):
教研室主任(签字):
批准日期:
2014年1月2日
第1章设计要求
1.1课程设计具体要求
1.1.1原理图设计
a.原理图设计要符合项目的工作原理,连线要正确。
b.图中所使用的元器件要合理选用,电阻、电容等器件的参数要正确标明。
c.原理图要完整,CPU、外围器件、外扩接口、输入/输出装置要一应俱全。
1.1.2程序调计
a.根据要求,将总体功能分解成若干个子功能模块,每个功能模块完成一个特定的功能。
b.根据总体要求及分解的功能模块,确定各功能模块之间的关系,设计出完整的程序流程图。
1.1.3程序调试
a.编写相关程序,并进行仿真。
b.将程序下载到单片机,进行运行调试。
1.1.4设计说明书
a.原理图设计说明
简要说明设计目的,原理图中所使用的元器件功能及在图中的作用,各器件的工作过程及顺序。
b.程序设计说明
对程序设计总体功能及结构进行说明,对各子模块的功能以及各子模块之间的关系作较详细的描述。
c.画出工作原理图,程序流程图并给出相应的程序清单。
1.2设计任务
STC12C5A60S2(引脚排序及基本功能同AT89S51)作为主控芯片,设计PWM输出控制电路。
一是设计温度模块输出,作为PWM的参数输入;二是用PWM输出控制发光二级管,观察PWM输出不同占空比下发光二级管的亮度变化;三是根据需要扩展LCD1602等,显示相应的输入参数。
第2章设计原理
2.1设计思路
用PWM输出控制发光二级管,并利用温度值控制占空比,观察PWM输出不同占空比下发光二级管的亮度变化。
图1整体设计思路
主电路包括:
(1)一块主控8位芯片;
(2)温度采集模块;(3)LED发光状态显示灯;(4)LCD1602占空比显示屏;(5)时钟芯片模块
2.2设计的相关技术
脉冲宽度调制(PWM),是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制与变换的许多领域中。
脉冲宽度调制是一种模拟控制方式,其根据相应载荷的变化来调制晶体管栅极或基极的偏置,来实现开关稳压电源输出晶体管或晶体管导通时间的改变,这种方式能使电源的输出电压在工作条件变化时保持恒定,是利用微处理器的数字信号对模拟电路进行控制的一种非常有效的技术。
本次设计的原理就是利用STC12C5A60S2芯片模拟出PWM输出波形,来控制LED灯的两岸程度。
在一定的频率的方波中,调整高电平和低电平的占空比,即可实现。
同时,本方案使用了一块LCD1602的液晶显示屏来显示输入的参数,清晰的看出设计出的结果。
使用红外遥控器控制占空比的输入,达到所需的效果。
2.3主控芯片介绍
STC12C5A60S2是一种带4K字节闪存可编程可擦除只读存储器(FPEROM—FlashProgrammableandErasableReadOnlyMemory)的低电压、高性能CMOS8位微处理器,俗称单片机。
STC12C5A60S2是一种带2K字节闪存可编程可擦除只读存储器的单片机。
单片机的可擦除只读存储器可以反复擦除1000次。
与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,STC12C5A60S2是一种高效微控制器.
主要特性:
与MCS-51兼容;4K字节可编程闪烁存储器;寿命:
1000写/擦循环;数据保留时间:
10年;全静态工作:
0Hz-24MHz;三级程序存储器锁定;128×8位内部RAM;32可编程I/O线;两个16位定时器/计数器;5个中断源;可编程串行通道;低功耗的闲置和掉电模式;片内振荡器和时钟电路。
图3主控芯片STC12C5A60S2
2.4LCD1602液晶显示器介绍
1602液晶也叫1602字符型液晶,它是一种专门用来显示字母、数字、符号等的点阵型液晶模块。
1602LCD是指显示的内容为16X2,即可以显示两行,每行16个字符液晶模块(显示字符和数字)。
1602LCD微功耗、体积小、显示内容丰富、超薄轻巧,常用在袖珍式仪表和低功耗应用系统中。
图4LCD1602示意图
表1LCD1602管脚功能
管脚
功能
1
VSS为电源地
2
VCC,5V电源正极
3
V0为液晶显示器对比度调整端
4
RS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器。
5
RW为读写信号线,高电平
(1)时进行读操作,低电平(0)时进行写操作。
6
E(或EN)端为使能(enable)端。
7-14
D0~D7为8位双向数据端
15-16
空脚或背灯电源。
15脚背光正极,16脚背光负极
2.5PWM的基本原理
脉冲宽度调制,简称脉宽调制,是将模拟信号 转换为脉波的一种技术,一般转换后脉波的周期固定,但脉波的占空比会依模拟信号的大小而改变。
在模拟电路中,模拟信号的值可以连续进行变化,在时间和值的幅度上都几乎没有限制,基本上可以取任何实数值,输入与输出也呈线性变化。
所以在模拟电路中,电压和电流可直接用来进行控制对象,例如家用电器设备中的音量开关控制、采用卤素灯泡灯具的亮度控制等等。
但模拟电路有诸多的问题:
例如控制信号容易随时间漂移,难以调节;功耗大;易受噪声和环境干扰等等。
与模拟电路不同,数字电路是在预先确定的范围内取值,在任何时刻,其输出只可能为ON和OFF两种状态,所以电压或电流会通/断方式的重复脉冲序列加载到模拟负载。
PWM技术是一种对模拟信号电平的数字编码方法,通过使用高分辨率计数器(调制频率)调制方波的占空比,从而实现对一个模拟信号的电平进行编码。
其最大的优点是从处理器到被控对象之间的所有信号都是数字形式的,无需再进行数模转换过程;而且对噪声的抗干扰能力也大大增强(噪声只有在强到足以将逻辑值改变时,也可能对数字信号产生实质的影响),这也是PWM在通讯等信号传输行业得到大量应用的主要原因。
模拟信号能否使用PWM进行编码调制,仅依赖带宽,这即意味着只要有足够的带宽,任何模拟信号值均可以采用PWM技术进行调制编码,一般而言,负载需要的调制频率要高于10Hz,在实际应用中,频率约在1kHz到200kHz之间。
在信号接收端,需将信号解调还原为模拟信号,目前在很多微型处理器内部都包含有PWM控制器模块。
图5PWM原理模式图
2.6温度传感器
2.6.1温度传感器工作原理
DS18B20的读写时序和测温原理与DS1820相同,只是得到的温度值的位数因分辨率不同而不同,且温度转换时的延时时间由2s减为750ms。
DS18B20测温原理:
低温度系数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲信号送给计数器1。
高温度系数晶振随温度变化其振荡率明显改变,所产生的信号作为计数器2的脉冲输入。
计数器1和温度寄存器被预置在-55℃所对应的一个基数值。
计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当计数器1的预置值减到0时,温度寄存器的值将加1,计数器1的预置将重新被装入,计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。
DS18B20功能特点:
1.采用单总线技术,与单片机通信只需要一根I/O线,在一根线上可以挂接多个DS18B20。
2.每只DS18B20具有一个独有的,不可修改的64位序列号,根据序列号访问地应的器件。
3.低压供电,电源范围从3~5V,可以本地供电,也可以直接从数据线上窃取电源(寄生电源方式)。
4.测温范围为-55℃~+125℃,在-10℃~85℃范围内误差为±0.5℃。
5.可编辑数据为9~12位,转换12位温度时间为750ms(最大)。
6.用户可自设定报警上下限温度。
7.报警搜索命令可识别和寻址哪个器件的温度超出预定值。
8.DS18B20的分辩率由用户通过EEPROM设置为9~12位。
9.DS18B20可将检测到温度值直接转化为数字量,并通过串行通信的方式与主控制器进行数据通信。
DS18B20有4个主要的数据部件:
1.光刻ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码。
64位光刻ROM的排列是:
开始8位(28H)是产品类型标号,接着的48位是该DS18B20自身的序列号,最后8位是前面56位的循环冗余校验码(CRC=X8+X5+X4+1)。
光刻ROM的作用是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS18B20的目的。
2.DS18B20中的温度传感器可完成对温度的测量,以12位转化为例:
用16位符号扩展的二进制补码读数