欢迎来到天天文库
浏览记录
ID:20726681
大小:3.50 MB
页数:24页
时间:2018-10-15
《光控数字温度时钟课程设计报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、序号:20光电技术课程设计题目:光控数字温度时钟学生王较军班级电子2011-2BF学号物理与电子学院专业电子科学与技术指导老师梅孝安职称副教授完成时间2015年6月12日(湖南理工学院物理与电子学院)23整体设计思想本次实验采用通用51单片机(AT89C51)。DS1302作为基本时钟,并带有蜂鸣器模块,实现报时闹铃功能。使用TLC1543芯片(10位串行A/D)作为温度光强采集模块。温度采集采用热敏电阻、光强采集采用光敏电阻。亮度控制采用D/A输出(DAC0808),采用LED数码管动态显示。出于方便、高效考虑,设置两个按钮一为功能键,一为加键。系统
2、硬件电路设计(本设计硬件总设计图如图1所示。温度由热敏电阻采集经处理后转换为温度显示,光强每经过一段时间间隔由光敏电阻采集一次,转换为数字信号后通过DACO8O8芯片控制(DA输出)达到调节LED数码管显示亮度的目的。图1设计总电路图DS1302模块DS1302模块以DS1302时钟芯片为主体构成,用于基本的时间显示。其硬件结构图如图2所示。DS1302是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、周日、时、分、秒进行计时,具有闰年补偿功能,,且具有闰年补偿等多种功能。DS1302有12个寄存器,其中有7
3、个寄存器与日历、时钟相关,存放的数据位为BCD码形式。工作电压为2.5V~5.5V。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个31×8的用于临时性存放数据的RAM寄存器。缺点是时钟精度不高,易受环境影响,出现时钟混乱。模块软件设计见设计报告系统程序设计部分。23图2DS1302模块电路图数码管及数码管驱动模块(1)数码管模块如图3所示:图3数码管模块在数码管显示上将第三个数码管反向安置,使得第二、第三个数码管的小数点位组成一对,实现时钟的秒显示功能。第三个数码管译码表:0xc0,0x
4、cf,0xa4,0x86,0x8b,0x92,0x90,0xc7,0x80,0x82,0x70(2)数码管驱动模块,如图4,图5所示:图4数码管驱动模块23图5数码管驱动模块其中,DAC0808用于实现亮度调节(DA转换),温度光强采集模块模块结构如图6所示图6温度光强采集模块采集温度用热明电阻,热敏电阻的主要特点是:①灵敏度较高,其电阻温度系数要比金属大10~100倍以上,能检测出10-6℃的温度变化;②工作温度范围宽,常温器件适用于-55℃~315℃,高温器件适用温度高于315℃(目前最高可达到2000℃),低温器件适用于-273℃~-55℃;③
5、体积小,能够测量其他温度计无法测量的空隙、腔体及生物体内血管的温度;④使用方便,电阻值可在0.1~100kΩ间任意选择;⑤易加工成复杂的形状,可大批量生产;⑥稳定性好、过载能力强。采集光强使用光敏电阻,光敏电阻的工作原理是基于内光电效应23。在半导体光敏材料两端装上电极引线,将其封装在带有透明窗的管壳里就构成光敏电阻,为了增加灵敏度,两电极常做成梳状。用于制造光敏电阻的材料主要是金属的硫化物、硒化物和碲化物等半导体。通常采用涂敷、喷涂、烧结等方法在绝缘衬底上制作很薄的光敏电阻体及梳状欧姆电极,接出引线,封装在具有透光镜的密封壳体内,以免受潮影响其灵敏度
6、。入射光消失后,由光子激发产生的电子—空穴对将复合,光敏电阻的阻值也就恢复原值。在光敏电阻两端的金属电极加上电压,其中便有电流通过,受到一定波长的光线照射时,电流就会随光强的增大而变大,从而实现光电转换。光敏电阻没有极性,纯粹是一个电阻器件,使用时既可加直流电压,也加交流电压。半导体的导电能力取决于半导体导带内载流子数目的多少。蜂鸣器和按键模块图7为蜂鸣器模块实现闹铃,整点报时功能。图8为按键模块,K1为加键用于调节数据的大小,K2为功能键用于实现不同功能的转换。图7为蜂鸣器模块图8按键模块23系统软件设计(1)主程序(2)(3)#include7、g52.h>#include"shu_ma_guan.h"#include"myds1302.h"#include"key.h"#include"naozhong.h"#include"TLC1543.h"#includeuinttemperature_convert(void);voidbrilliance_control(void);intmain(void){uinttemporary_temp=0;TMOD=0x11;//T0,T1均工作于方式1(16位定时/计数),软件启动TH0=(65535-50000)/256;//一次中8、断时间为50ms(12MHz下)TL0=(65535-50000)%256;TH1=(6553
7、g52.h>#include"shu_ma_guan.h"#include"myds1302.h"#include"key.h"#include"naozhong.h"#include"TLC1543.h"#includeuinttemperature_convert(void);voidbrilliance_control(void);intmain(void){uinttemporary_temp=0;TMOD=0x11;//T0,T1均工作于方式1(16位定时/计数),软件启动TH0=(65535-50000)/256;//一次中
8、断时间为50ms(12MHz下)TL0=(65535-50000)%256;TH1=(6553
此文档下载收益归作者所有