单片机带温度显示的红外遥控数字钟课程设计报告
红外遥控电子钟报告 -

TMOD=0x12; //定时器0工作方式2(8位自动重装),TH0是重装值,TL0是初值
TH0=0x00; //重载值
TL0=0x00; //初始化值
ET0=1; //开中断
TR0=1;
}
/*------------------------------------------------
定时器T1初始化
key_work();
clock();
}
}
/*------------------------------------------------
定时器0初始化(定时器用来计算电平的长度)
------------------------------------------------*/
void TIM0init(void) //定时器0初始化
num1++;
if(num1==20)//加一为50ms 20次为1秒
{
num1=0;
if(time_sign==0&&clock_sign==0)//若进入时间设置,则时间停止走time_sign控制时间走停clock_sign控制闹钟是否进入设置
{
num2++;
numt2=num2;//numt2的意思是当进入时间设置时,秒的时间num2立刻赋给numt2,numt2立刻停住并显示
重庆邮电大学单片机课程设计报告指导
学院:通信与信息学院
专业:信息工程
红外遥控电子钟
摘要:
本系统设计一个基于单片机红外遥控电子钟,数据处理用MCS-51系列采用89C51单片机作为中央控制器。数据采集部分采用一体化红外接收头直接转换为二进制代码,并通过总线传送数据和发送控制指令,控制8位数码管、蜂鸣器、LED灯等工作操作。红外接头数据发送和单片机接口只需要一个I/O口,本设计用的P3.2口。此红外遥控电子钟,由51学习板、7段数码管、蜂鸣器控制电路、红外接收头转换电路、遥控器等组成,其实现功能是:数码管显示电子钟小时、分钟、秒、红外遥控设置时间、闹钟定时蜂鸣、
单片机课程设计数字钟报告

电子与信息工程学院综合实验课程报告课题名称单片机课程设计专业通信工程班级学生姓名学号指导教师单片机课程设计正文一、引言现代社会科技飞速发展,人们生活节奏加快,时间就是金钱,时间就是生命。
时间对人们来说总是那么宝贵,工作的忙碌性和繁杂性容易使人忘记当前的时间。
忘记了要做的事情,当事情不是很重要的时候,这种遗忘无伤大雅。
但是,一旦重要事情,一时的耽误可能酿成大祸。
20世纪末,电子技术得到飞速发展,各类电子产品相继出现在市场,电子产品主要朝着CMOS化、低功耗、小体积、大容量、高性能、低价格和外围电路内装化等几个方面发展。
数字化电子产品已渗入到人类生活的方方面面。
单片计算机即单片微型计算机(Single-Chip Microcomputer ),是集CPU ,RAM ,ROM ,定时,计数和多输入输出口于一体的微控制器。
它体积小,成本低,功能强,广泛应用于智能产品和工业自动化上。
而52 单片机是51单片机的升级版,功能更强大。
单片机应用的重要意义还在于,它从根本上改变了传统的控制系统设计思想和设计方法。
从前必须由模拟电路或数字电路实现的大部分功能,现在已能用单片机通过软件方法来实现了。
这种软件代替硬件的控制技术也称为微控制技术,是传统控制技术的一次革命。
基于以上发展与现实需要本次设计课题就是基于单片机的设计-----基于单片机的多功能数字钟。
数字钟是采用数字电路实现对时,分,秒,数字显示的计时装置,广泛用于个人家庭,车站, 码头办公室等公共场所,成为人们日常生活中不可少的必需品,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表, 钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。
诸如定时自动报警、按时自动打铃、时程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。
光控数字温度时钟课程设计报告

光控数字温度时钟课程设计报告序号:20光电技术课程设计题目:光控数字温度时钟学生王较军班级电子 -2BF学号物理与电子学院专业电子科学与技术指导老师梅孝安职称副教授完成时间 6月12日(湖南理工学院物理与电子学院)整体设计思想本次实验采用通用51单片机(AT89C51)。
DS1302作为基本时钟,并带有蜂鸣器模块,实现报时闹铃功能。
使用TLC1543芯片(10位串行A/D)作为温度光强采集模块。
温度采集采用热敏电阻、光强采集采用光敏电阻。
亮度控制采用D/A输出(DAC0808),采用LED数码管动态显示。
出于方便、高效考虑,设置两个按钮一为功能键,一为加键。
系统硬件电路设计(本设计硬件总设计图如图1所示。
温度由热敏电阻采集经处理后转换为温度显示,光强每经过一段时间间隔由光敏电阻采集一次,转换为数字信号后经过DACO8O8芯片控制(D\A输出)达到调节LED数码管显示亮度的目的。
图1 设计总电路图DS1302模块DS1302模块以DS1302时钟芯片为主体构成,用于基本的时间显示。
其硬件结构图如图2所示。
DS1302 是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟电路,它能够对年、月、日、周日、时、分、秒进行计时,具有闰年补偿功能,,且具有闰年补偿等多种功能。
DS1302有12个寄存器,其中有7个寄存器与日历、时钟相关,存放的数据位为BCD码形式。
工作电压为2.5V~5.5V。
采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。
DS1302内部有一个31×8的用于临时性存放数据的RAM寄存器。
缺点是时钟精度不高,易受环境影响,出现时钟混乱。
模块软件设计见设计报告系统程序设计部分。
图2 DS1302模块电路图数码管及数码管驱动模块(1)数码管模块如图3所示:图3 数码管模块在数码管显示上将第三个数码管反向安置,使得第二、第三个数码管的小数点位组成一对,实现时钟的秒显示功能。
单片机课程设计基于51单片机的红外控制电子时钟(lcd显示)设计

《单片机原理及应用课程设计》报告—基于红外控制电子时钟(LCD显示)设计巩固和加深对单片机原理和接口技术知识的理解;培养根据课题需要选学参考书籍、查阅手册和文献资料的能力;学会方案论证的比较方法,拓宽知识,初步掌握工程设计的基本方法;掌握常用仪器、仪表的正确使用方法,学会软、硬件的设计和调试方法;能按课程设计的要求编写课程设计报告,能正确反映设计和实验成果,能用计算机绘制电路图和流程图。
2.课程设计要求以AT89C51单片机为核心的时钟,在1602显示器上显示当前的时间,显示格式为“时时:分分:秒秒”,并开始计时。
具体功能如下:用红外遥控器上5个按键设置当前时间,调闹钟,控制开关等。
功能键K1~K5功能如下。
●K1—暂停。
●K2—设置时间。
●K3—秒,分,时之间的切换。
●K4—调闹钟。
●K5—控制开关。
3.硬件设计3.1 设计思想原理框图接收头通过接收红外遥控器发送的数据传送给单片机,通过单片机控制显示屏和蜂鸣器的工作。
1)红外线遥控是目前使用最广泛的一种通信和遥控手段。
由于红外线遥控装置具有体积小、功耗低、功能强、成本低等特点,因而,继彩电、录像机之后,在录音机、音响设备、空凋机以及玩具等其它小型电器装置上也纷纷采用红外线遥控。
工业设备中,在高压、辐射、有毒气体、粉尘等环境下,采用红外线遥控不仅完全可靠而且能有效地隔离电气干扰。
红外线遥控器使用TC9012专用发射集成模块做的,用频率为38、占空比为1/3的PPM方式调制,当一个键按下超过36ms 振荡器使芯片激活如果这个键按下且延迟大约108ms,这108ms 发射代码由一个起始码9ms ,一个结果码4.5ms (结果码加起始码构成一个12.5ms的引导码), 低8位地址码9ms-8ms, 8位地址码9ms-8ms ,8位数据码9ms-8ms和这8位数据的反码 9ms-8ms 组成,我们提取的即是那8位的数据码。
其数据帧如下图:数字0和1的脉冲如下:当接受端当检测到有红外线发过来, 将接收端置低, 否则置高。
单片机带温度显示的红外遥控数字钟课程设计报告

单片机原理及应用课程设计报告课题名称带温度显示的红外遥控数字钟专业电气自动化班级 B1031学号 29姓名武 X X指导教师 X X2012-6-4目录1.设计题目及要求 (1)2.设计方案 (1)2.1 主控制器型 (1)2.2 DS1302实时显示时间的软硬件 (2)2.3 显示方案 (2)2.4 报警方案 (2)2.5 键盘接口的选择 (3)2.6 红外通信的基本原理 (3)2.6.1 红外通信接口的硬件电路设计 (3)2.6.2 红外发送器及原理 (3)2.6.3 红外遥控电路原理分析 (4)3.主要电路与程序设计 (5)3.1 系统硬件的结构框图 (5)3.2 单片机最小系统设计 (5)3.3 温度电路设计 (6)3.4 显示电路设计 (6)3.5 声光报警电路 (6)3.6 实时时钟模块 (7)3.7 红外线接收电路 (7)4.软件设计 (8)4.1 总模块的流程图 (8)4.2 部分主要模块的流程图 (9)4.3 温度转换核心及其算法 (11)4.3.1 DS18B20的部结构 (11)4.3.2 DS18B20的存结构 (11)4.3.3 DS18B20的测温功能 (11)4.3.4 温度转换算法及分析 (12)5.调试结果记录及分析 (15)5.1 数码管显示的测试方法和结果 (15)5.2 DS18B20的测试方法和结果 (16)5.3 键盘程序的测试方法和结果 (16)5.4 RS232模块的测试方法和结果 (16)5.5产品最终调试 (16)6.结论 (16)7.参考文献 (17)1.设计题目及要求1.1设计题目:带温度显示的红外遥控数字钟1.2要求:用数码管实现显示,DS1302实现计时,遥控键盘实现控制(1)能显示当前时间,用按键切换可以显示日期,星期等情况。
(2)能设定时间,能根据设定的日期自动计算星期几。
2.设计方案本系统要求完成对时间和环境温度的采集,对时间及温度数据的处理问题,因此,首要解决的采用何种微控制器以及何种传感器来对时间及温暖进行采集处理包括计算,其次是采集到的时间及温暖将通过何种方式去显示或通过何钟方式表达出来让人一目了然,最后要解决的是当检测到的温度超出正常或低于正常值时该做出报警反应或对外部设备作相应的控制。
基于单片机的可显示时间及温度的遥控闹钟

江南大学本科毕业论文(设计)基于单片机的可显示时间及温度的遥控闹钟所在学院专业名称自动化申请学士学位所属学科工学年级 2008 级学生姓名指导教师姓完成日摘要摘要数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更更长的使用寿命,因此得到了广泛的使用。
本次数字时钟电路采用AT89S51单片机作为控制核心,采用DS1302来实现时、分、秒24小时计时,采用DS18B20来实现温度的测量,采用SMG240128A实现显示,采用蜂鸣器实现闹钟功能。
文章的核心主要是硬件设计和软件编程两个大的方面。
硬件电路设计主要包括中央处理单元电路、时钟电路、温度测量电路、键盘扫描电路、报警电路。
软件用C语言来实现,主要包括主程序、时间设置子程序、温度测量子程序、键盘扫描子程序、报警电路子程序等软件模块。
电路实现了显示时间、调整时间、测量并显示温度、报警、闹钟定时等功能,达到了设计的要求和目的。
关键词:AT89C52,闹钟,红外,DS1302,DS18B20IABSTRACTABSTRACTA digital clock is a kind of digital circuit technology, minutes and seconds when the timing device, and the mechanical clock is higher than the accuracy and intuitive, and no machinery, has more longer service life, so it has been widely used.The digital clock circuit using AT89S51 microcontroller as the control, using DS1302 to achieve the hours, minutes, seconds, 24 hours time, using DS18B20 to achieve the temperature measurement, using SMG240128A to achieve display, using a buzzer to achieve alarm function. The core of the article is mainly hardware design and software programming. Hardware design includes a central processing unit circuit, clock circuit, temperature measurement circuit, the keyboard scanning circuit, alarm circuit. Using assembly language and C language for software design, including the main program and time setting subroutine, temperature measurement subroutine, the keyboard scan subroutine, subroutines and other software modules alarm circuit. Circuit completed show time, adjustment time, measuring and displaying temperature, alarms, alarm clock timer functions.Key words: AT89C52,Alarm,Infrared,DS1302,DS18B20Ⅱ目录目录1 引言------------------------------------------------------------------------------------------------------------------- 11.1 课题研究背景 (1)1.2 设计的目的及意义 (2)2遥控闹钟的工作原理与硬件设计 ------------------------------------------------------------------------------ 32.1 遥控闹钟的功能及设计要求 (3)2.2工作原理: (3)2.3硬件部分 (4)3软件编写与调试 -------------------------------------------------------------------------------------------------- 133.1软件编写基本要求 (13)3.2 时钟模块程序设计 (14)3.2.1 写单字节数据程序模块 ----------------------------------------------- 153.2.2 读单字节数据程序模块 ----------------------------------------------- 153.2.3 初始化设置程序模块 ------------------------------------------------- 153.3时间设定模块设计 (16)3.4按键处理 (18)3.5闹铃功能的实现 (18)4调试与功能说明 -------------------------------------------------------------------------------------------------- 194.1 硬件调试 (19)4.2 系统性能测试与功能说明 (19)4.3 系统时钟误差分析 (19)4.4 软件调试问题及解决 (20)5结束语 -------------------------------------------------------------------------------------------------------------- 21 参考文献-------------------------------------------------------------------------------------------------------------- 22 致谢 -------------------------------------------------------------------------------------------------------------------- 23III1 引言1.1 课题研究背景计算机尤其是以微细加工技术支持的微型计算机技术飞速发展,其应用渗透到了各行各业。
基于单片机的带温度显示的数字钟设计(c51语言编程)【开题报告】

开题报告电气工程及其自动化基于单片机的带温度显示的数字钟设计(c51语言编程)一、课题研究意义及现状1980年因特尔公司推出了MCS-51单片机,近30年来,其衍生系列不断出现,从Atmel加入FLASH ROM,到philips加入各种外设,再到后来的Cygnal推出C8051F,使得以8051为核心的单片机在各个发展阶段的低端产品应用中始终扮演着一个重要的角色,其地位不断升高,资源越来越丰富,历经30年仍在生机勃勃地发展,甚至在SoC时代仍占有重要的一席之地。
单片机具有体积小、功能强、低功耗、可靠性高、价格低廉等一系列优点,不仅已成为工业测控领域智能仪表、机电一体化、实时控制、国防工业普遍采用的智能化控制工具,而且已渗入到人们工作和和生活的各个角落,有力地推动了各行业的技术改造和产品的更新换代,应用前景广阔。
C语言已经成为当前举世公认的高效简洁而又贴近硬件的编程语言之一。
将C语言向单片机8051上移植十余20世纪80年代的中后期,经过几十年的努力,C语言已成为专业化单片机上的实用高级语言。
C语言是一种编译型程序设计语言,它兼顾了多种高级语言的特点,并具备汇编语言的功能。
此外,C语言程序具有完善的模块程序结构,从而为软件开发中采用模块化程序设计方法提供了有力的保障。
与汇编语言相比,C51在功能、结构、可读性、可维护性上有明显的优势,因而易学易用。
另外C51可以缩短开发周期,降低成本,可靠性,可移植性好。
因此,使用C语言进行程序设计已成为软件开发的一个主流,用C语言进行8051单片机程序设计是单片机开发与应用的必然趋势。
随着人们生活水平的提高,对物质需求也越来越高,人们已不再满足于钟表原先简单的报时功能,希望出现一些新的功能,诸如环境温度显示、日历的显示、重要日期倒计时、显示跑表功能等,用以带来更大的方便。
而所有这些,又都是以数字化的电子时钟为基础的,不仅应用了数字电路技术,而且还加入了需要模拟电路技术和单片机技术。
单片机实验报告数字时钟设计报告

单片机实验报告数字时钟设计报告一、实验目的本次单片机实验的目的是设计并实现一个基于单片机的数字时钟。
通过该实验,深入了解单片机的工作原理和编程方法,掌握定时器、中断、数码管显示等功能的应用,提高综合运用知识解决实际问题的能力。
二、实验原理1、单片机选择本次实验选用了常见的 51 系列单片机,如 STC89C52。
它具有丰富的资源和易于编程的特点,能够满足数字时钟的设计需求。
2、时钟计时原理数字时钟的核心是准确的计时功能。
通过单片机内部的定时器,设定合适的定时时间间隔,不断累加计时变量,实现秒、分、时的计时。
3、数码管显示原理采用共阳或共阴数码管来显示时间数字。
通过单片机的 I/O 口控制数码管的段选和位选信号,使数码管显示相应的数字。
4、按键控制原理设置按键用于调整时间。
通过检测按键的按下状态,进入相应的时间调整模式。
三、实验设备与材料1、单片机开发板2、数码管3、按键4、杜邦线若干5、电脑及编程软件(如 Keil)四、实验步骤1、硬件连接将数码管、按键与单片机开发板的相应引脚通过杜邦线连接起来。
确保连接正确可靠,避免短路或断路。
2、软件编程(1)初始化单片机的定时器、中断、I/O 口等。
(2)编写定时器中断服务程序,实现秒的计时。
(3)设计计时算法,将秒转换为分、时,并进行进位处理。
(4)编写数码管显示程序,将时间数据转换为数码管的段选和位选信号进行显示。
(5)添加按键检测程序,实现时间的调整功能。
3、编译与下载使用编程软件将编写好的程序编译生成可执行文件,并下载到单片机中进行运行测试。
五、程序设计以下是本次数字时钟设计的主要程序代码片段:```cinclude <reg52h>//定义数码管段选码unsigned char code SEG_CODE ={0xC0, 0xF9, 0xA4, 0xB0, 0x99, 0x92, 0x82, 0xF8, 0x80, 0x90};//定义数码管位选码unsigned char code BIT_CODE ={0x01, 0x02, 0x04, 0x08, 0x10,0x20, 0x40, 0x80};//定义时间变量unsigned int second = 0, minute = 0, hour = 0;//定时器初始化函数void Timer_Init(){TMOD = 0x01; //定时器 0 工作在方式 1 TH0 =(65536 50000) / 256; //定时 50ms TL0 =(65536 50000) % 256;EA = 1; //开总中断ET0 = 1; //开定时器 0 中断TR0 = 1; //启动定时器 0}//定时器 0 中断服务函数void Timer0_ISR() interrupt 1{TH0 =(65536 50000) / 256;TL0 =(65536 50000) % 256;second++;if (second == 60){second = 0;minute++;if (minute == 60){minute = 0;hour++;if (hour == 24){hour = 0;}}}}//数码管显示函数void Display(){unsigned char i;for (i = 0; i < 8; i++)P2 = BIT_CODEi;if (i == 0){P0 = SEG_CODEhour / 10;}else if (i == 1){P0 = SEG_CODEhour % 10;}else if (i == 2){P0 = 0xBF; //显示“”}else if (i == 3){P0 = SEG_CODEminute / 10;else if (i == 4){P0 = SEG_CODEminute % 10;}else if (i == 5){P0 = 0xBF; //显示“”}else if (i == 6){P0 = SEG_CODEsecond / 10;}else if (i == 7){P0 = SEG_CODEsecond % 10;}delay_ms(1);//适当延时,防止闪烁}}//主函数void main(){Timer_Init();while (1){Display();}}```六、实验结果与分析1、实验结果将程序下载到单片机后,数字时钟能够正常运行,准确显示时、分、秒,并且通过按键可以进行时间的调整。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机原理及应用课程设计报告课题名称带温度显示的红外遥控数字钟专业电气自动化班级 B1031学号 29姓名武 X X指导教师谢 X X2012-6-4目录1.设计题目及要求 (1)2.设计方案 (1)2.1 主控制器型 (1)2.2 DS1302实时显示时间的软硬件 (2)2.3 显示方案 (2)2.4 报警方案 (2)2.5 键盘接口的选择 (3)2.6 红外通信的基本原理 (3)2.6.1 红外通信接口的硬件电路设计 (3)2.6.2 红外发送器及原理 (3)2.6.3 红外遥控电路原理分析 (4)3.主要电路与程序设计 (5)3.1 系统硬件的结构框图 (5)3.2 单片机最小系统设计 (5)3.3 温度电路设计 (6)3.4 显示电路设计 (6)3.5 声光报警电路 (6)3.6 实时时钟模块 (7)3.7 红外线接收电路 (7)4.软件设计 (8)4.1 总模块的流程图 (8)4.2 部分主要模块的流程图 (9)4.3 温度转换核心及其算法 (11)4.3.1 DS18B20的内部结构 (11)4.3.2 DS18B20的内存结构 (11)4.3.3 DS18B20的测温功能 (11)4.3.4 温度转换算法及分析 (12)5.调试结果记录及分析 (15)5.1 数码管显示的测试方法和结果 (15)5.2 DS18B20的测试方法和结果 (16)5.3 键盘程序的测试方法和结果 (16)5.4 RS232模块的测试方法和结果 (16)5.5产品最终调试 (16)6.结论 (16)7.参考文献 (17)1.设计题目及要求1.1设计题目:带温度显示的红外遥控数字钟1.2要求:用数码管实现显示,DS1302实现计时,遥控键盘实现控制(1)能显示当前时间,用按键切换可以显示日期,星期等情况。
(2)能设定时间,能根据设定的日期自动计算星期几。
2.设计方案本系统要求完成对时间和环境温度的采集,对时间及温度数据的处理问题,因此,首要解决的采用何种微控制器以及何种传感器来对时间及温暖进行采集处理包括计算,其次是采集到的时间及温暖将通过何种方式去显示或通过何钟方式表达出来让人一目了然,最后要解决的是当检测到的温度超出正常或低于正常值时该做出报警反应或对外部设备作相应的控制。
2.1主控制器选型当今单片机厂商琳琅满目,MCU品种繁多、产品性能各异。
不同型号的单片机功能各异、开发装置也不兼容。
常用的单片机也有很多种,我们今年所学的是Atmel的AT89系列单片机,所以我们选用了ATMEL公司的AT89S51 单片机,AT89S51是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片内含8Kbytes的可反复擦写的只读程序存储器(PEROM)和256bytes 的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,与标准MCS-51指令系统及8051产品引脚兼容,片内置通用8位中央处理器(CPU)和FLASH存储单元,功能强大AT89S51单片机适用于许多较为复杂控制应用场合。
AT89S51单片机具有低电压供电和体积小等特点,四个端口只需要其中一个或两个口就能满足系统的设计需要,很适合便携手持式产品的设计使用;系统可用二节电池供电。
尽管AT89S51单片机现在并不是最完善最先进的单片机,但是就其功能及相关资料在市面上非常丰富,编译器已经比较优化我们对其开发环境及开发语言也相当熟悉,对于本设计来说我们完全可以选择AT89s51单片机作为主控制器。
2.2 DS1302实时显示时间的软硬件DS1302与CPU的连接需要三条线,即SCLK(7)、I/O(6)、RST(5)。
,其中,时钟的显示用LCD。
虽然DS1302在主电源掉电后的耗电很小,但是,如果要长时间保证时钟正常,最好选用小型充电电池。
可以用老式电脑主板上的3.6V充电电池。
如果断电时间较短(几小时或几天)时,就可以用漏电较小的普通电解电容器代替。
100 μF就可以保证1小时的正常走时。
DS1302在第一次加电后,必须进行初始化操作。
初始化后就可以按正常方法调整时间。
DS1302 存在时钟精度不高,易受环境影响,出现时钟混乱等缺点。
DS1302可以用于数据记录,特别是对某些具有特殊意义的数据点的记录,能实现数据与出现该数据的时间同时记录。
这种记录对长时间的连续测控系统结果的分析及对异常数据出现的原因的查找具有重要意义。
传统的数据记录方式是隔时采样或定时采样,没有具体的时间记录,因此,只能记录数据而无法准确记录其出现的时间;若采用单片机计时,一方面需要采用计数器,占用硬件资源,另一方面需要设置中断、查询等,同样耗费单片机的资源,而且,某些测控系统可能不允许。
但是,如果在系统中采用时钟芯片DS1302,则能很好地解决这个问题。
2.3显示方案直接要数码管或者7段数码管加MAX7219驱动显示。
MAX7219驱动7段数码管采用低电压扫描驱动具有:可以节约单片机I/O口,耗电少、使用寿命长、成本低、亮度高、故障少、视角大、可视距离远等特点;但是显示单一,只能显示数字和几个字母。
就本设计而言需要显示很多的操作提示信息和报警信息,数码管是难以达到的;且本设计需要单片机I/O口并不多,就AT89S51的资源来说不必要考虑单片机I/O不必要考虑I/O口资源不足的问题。
2.4 报警方案采用单片机产生不同的频率信号来驱动蜂鸣器和发光二极管产生声光提示,不同的温度报警值对应不同的频率,此方案能完成声音提示功能,同时给人以提示可以类似电脑主机的蜂鸣报警,而且易于实现。
2.5键盘接口的选择在实际应用中,要求设定的上下限温度温值会随着实际情况的需要变化而变化,因此,就要根据实际的情况来改变系统的温度设定值。
作为一个系统,一旦做成产品后,就很难通过对程序的修改来完成对各项初值的设定,因而只有用按键的方式来重新对温度值进行设置。
键盘有独立式和行列式两种,独立式键盘适用于简单的键盘设置中,行列式键盘适用于复杂的键盘设置中。
对于该系统中只需要简单的对温度进行上、下限值设置,因而我们选用独立式键盘,这样的键盘编程简单、可靠2.6红外通信的基本原理红外通信是利用950nm近红外波段的红外线作为传递信息的媒体,即通信信道。
发送端采用脉时调制(PPM)方式,将二进制数字信号调制成某一频率的脉冲序列,并驱动红外发射管以光脉冲的形式发送出去;接收端将接收到的光脉转换成电信号,再经过放大。
滤波等处理后送给解调电路进行解调,还为二进制数字信号后输出。
2.6.1红外通信接口的硬件电路设计单片机本身并不具备红外通信接口,但可以利用单片机的串行接口与片外的红外发射和接收电路,组成一个应用于单片机系统的红外串行通信接口。
2.6.2红外发送器及原理简而言之,红外通信的实质就是对二进制数字信号进行调制与解调,以便利用红外信道进行传输;红外通信接口就是针对红外信道的调制解调器。
红外发送器电路包括脉冲振荡器。
驱动管T1和T2.红外发射管D1和D2 等部分。
其中脉冲振荡器由NE555定时器。
电阻(R1.R2)和电容(C1.C2)组成,用以产生38kHz的脉冲序列作为载波信号;红外发射管D1和D2选用Vishay 公司生产的TSAL6238,用来向外发射950nm的红外光束。
红外发送器的工作原理为:串行数据由单片机的串行输出端TXD送出并驱动T1管,数位“0”使T1管导通,通过T2管调制成38kHz的载波信号,并利用两个红外发射管D1和D2以光脉冲的形式向外发送。
数位“1”使T1 管截止,红外发射管D1和D2不发射红外光。
若传送的波特率设为1200bps,则每个数位“0”对应32个载波脉冲调制信号的时序,如图2-1所示。
图2-1遥控连发信号波形红外接收接收模块是一个三端元件,使用单电源+5V电源,具有功耗低。
抗干扰能力强,灵敏度高。
其内部结构框图如图2-2所示。
图2-2红外遥控系统框图用于红外线遥控电子钟的遥控器包括至少一个按键、红外线发射部分以及分别与按键和红外线发射部分相连的遥控器控制电路,其中所述按键分别表示电子钟的各调节功能。
受红外线遥控的电子钟包括显示面、电子钟控制电路,还包括接收上述遥控器发来的各种发光信号并将发光信号传递给电子钟控制电路的红外线接收部分,而且电子钟控制电路还设有检测来自红外线接收部分的信号并执行信号所表示的电子钟的各调节功能的程序。
2.6.3红外遥控电路原理分析当红外遥控器按下时,红外接收头接收到红外信号,单片机产生中断,在中断程序进行红外解码,再按解码值判断哪个按键按下。
通过按键值对时间进行设置。
单片机通过读取时钟芯片1302,数据完成时间显示功能,显示部分采用数码管显示,可以分别显示年,月,日,时,分,秒,星期及温度。
3.主要电路与程序设计3.1 系统硬件的结构框图根据时间和红外遥控电子钟设计的实际要求和设计方案的论证,系统主要由 AT89S51及相关的复位电路组成的单片机最小系统、由DS18B20构成感温测温模块、由液晶显示屏LED128*64显示模块、由蜂鸣器及LED发光二级管组成声光报警单元、独立式键盘输入模块5部分电路组成。
另外为了不浪费单片机剩余资源,同时显示出采集器采集温度实时性,在此特增加了DS1302 实时时钟模块与用于上位机电脑通信的MAX232电平转换驱动模块。
综上述实际总体方案电路关系框图如图3-1所示:图3-1总体方案电路关系框图3.2单片机最小系统设计单片机作为主控制器,主要是处理各个部分重要的数并据协调各个模块正常工作的关键部件。
AT89S51单片机具有4个8为I/O口;本设计中主要是用了P0口显示模块的数据接口;P2口的P2.5、P2.6、P2.7位作为液晶屏的使能接口;P1口的P1.0、 P1.1、 P1.2位分别接实时钟ds1302的复位、时钟、数据引脚; P1口P1.3位作为集成数字温度传感器ds18b20的数据接口,用来对ds18b20进行读写操作;在此特别说明虽然P0内部没有上拉电阻,但是在本设计中只是做为液晶显示屏的数据总线或地址总线;可以省去上拉电阻不接。
At89s51单片机接上相应的电源和时钟,组成单片最小系统系统如图3-2 所示。
图3-2 单片最小系统3.3 温度电路设计DS18B20采用一线传输协议,可以使用外部电源工作方式也可以采用寄生电源工作方式,本设计中采用外部电源工作模式,具体电路如图3-3:图3-3 外部电源工作模式3.4显示电路设计数码管显示电路如图3-4:3.5声光报警电路本电路由发光二极管和蜂鸣器构成如图2-5:图3-4 数码管显示图3-5声光报警电路3.6实时时钟模块本模块由DS1302时钟芯片加晶振组成具体电路如图3-6所示:3.7红外线接收电路如图3-7所示是电路的红外线接收电路。