现代电子技术综合实训实训报告专业:年级/班级:姓名:实训时间:实训地点:指导教师:一、前言:近些年,人们对数字钟的要求越来越高,传统的时钟已不能满足人们的需求。
多功能数字钟不管在性能还是在样式上都发生了质的变化,如电子闹钟、数字闹钟等。
单片机在多功能数字钟中的应用已是非常普遍,人们对数字钟的功能及工作顺序都非常熟悉,但是却很少知道它的内部结构及工作原理。
由单片机作为数字钟的核心控制器,可以通过它的时钟信号进行计时,实现数字钟的各种功能,将其时间数据经单片机输出,利用显示器显示出来。
通过键盘可以进行定时、校时。
输出设备显示器可以为液晶显示器或数码管。
本次设计以AT89S52芯片为核心,辅以必要的外围电路,设计了一个简易的电子时钟,它由5V直流电源供电。
在硬件方面,除了CPU外,使用CD4511驱动六个7段LED数码管来进行显示,LED 采用的是动态扫描显示,使用三极管9015进行驱动。
通过LED能够比较准确地显示时间。
四个简单的按键实现对时间的调整。
软件方面采用C语言编程。
整个电子时钟系统计时比较准确并且方便实用。
二、需求分析单片机自20世纪70年代问世以来,以其极高的性能价格比,受到人们的重视和关注应用很广、发展很快、单片机体积小、重量轻、抗干扰能力强、环境要求不高、价格低廉、可靠性高、灵活性好、开发较为容易。
由于具有上述优点,在我国,单片机已广泛的应用在工业自动化控制、自动检测、智能仪器仪表、家用电器、电力电子、机电一体化设备等各个方面,而51单片机是各单片机中最为典型的和最有代表性的一种。
这次设计通过对它的学习、应用,以AT89S52芯片为核心,加以辅助电路,设计了一个简易的电子时钟,它由直流电源供电,通过数码管能够准确显示时间。
2.1设计要求:1.以AT89S52单片机为核心设计一个时钟控制器。
2.时钟控制器由+5V直流电源供电。
3.通过六只7段数码管准确地显示时间。
4.通过CD4511驱动数码管显示。
5.通过按键能够方便的调节时间。
2.2方案比较2.2.1定时方案一:硬件方法,定时采用专用的时钟芯片如DS12887,定时较准,但增加了设计成本。
方案二:软件方法,利用单片机自身的定时计数功能,设计简单,容易实现并且比较稳定。
本设计采用方案二。
2.2.2显示方案一:采用7段LED数码管。
LED数码管使用LED模组作为背光源,具有耗电低、配置灵活、线路简单、安装方便、耐转动、价格低廉且寿命长等优点。
方案二:采用LCD数码管。
LCD数码管使用“CCFL(冷阴极荧光管)”作为背光源,CCFL灯管的发热量大,耗电高,老化较快,LCD发光不稳定均匀、功耗大,含有害化学物质等但价格相对便宜。
LED在亮度、功耗、可视角度和刷新速率等方面,都更具优势。
LED与LCD的功耗比大约为1:10,而且更高的刷新速率使得LED在视频方面有更好的性能表现,可提供宽达160°的视角,故采用方案一。
2.2.3数码管驱动方案一:选用CD4511译码驱动芯片。
CD4511能够提供较大的上拉电流,可直接驱动数码管。
方案二:利用单片机本身的上拉电阻,虽然外围电路简单,但灌电流和数码管驱动电流不可兼得,即流过数码管电流满足要求,则灌电流会超出单片机的承受极限;灌电流在单片机允许范围内,则流过数码管电流过小。
故该方案驱动能力较弱。
为使数码管足够亮,选方案一。
三、器件工作原理3.1 AT89S52主要的性能参数●8K字节可擦写1000次的在线可编程ISP 闪存●4.0V到5.5V的工作电源范围●全静态工作:0Hz ~24MHz●3级程序存储器加密●256字节内部RAM●32条可编程I/O线●3个16位定时器/计数器●8个中断源●UART串行通道●低功耗空闲方式和掉电方式●通过中断终止掉电方式●看门狗定时器●双数据指针●灵活的在线编程(字节和页模式)3.2 AT89S52引脚说明51系列单片机89s52采用40Pin封装的双列直接DIP结构。
上图是它的引脚配置:40个引脚中,正电源和地线两根,外置石英振荡器的时钟线两根,4组8位共32个I/O口,中断口线与P3口线复用。
3.3引脚的功能:电源引脚:Vcc40脚正电源脚,工作电压为5V。
GND20脚接地端。
外接晶体引脚:XTAL2 18脚,XTAL1 19脚。
复位:RST9脚。
输入输出(I/O)引脚:39脚-32脚为P0.0-P0.7输入输出脚,称为P0口,是一个8位漏极开路型双向I/O口。
内部不带上拉电阻,当外接上拉电阻时,P0口能以吸收电流的方式驱动八个LSTTL负载电路。
通常在使用时外接上拉电阻,用来驱动多个数码管。
在访问外部程序和外部数据存储器时,P0口是分时转换的地址(低8位)/数据总线,不需要外接上拉电阻。
1脚-8脚为P1.0-P1.7输入输出脚,称为P1口,是一个带内部上拉电阻的8位双向I/0口。
P1口能驱动4个LSTTL负载。
通常在使用时外不需要外接上拉电阻,就可以直接驱动发光二极管。
端口置1时,内部上拉电阻将端口拉到高电平,作输入用。
21脚-28脚为P2.0-P2.7输入输出脚,称为P2口,是一个带内部上拉电阻的8位双向I/O口,P2口能驱动4个LSTTL负载。
端口置1时,内部上拉电阻将端口拉到高电平,作输入用。
对内部Flash程序存储器编程时,接收高8位地址和控制信息。
在访问外部程序和16位外部数据存储器时,P2口送出高8位地址。
而在访问8位地址的外部数据存储器时其引脚上的内容在此期间不会改变。
10脚-17脚为P3.0-P3.7输入输出脚,称为P3口,是一个带内部上拉电阻的8位双向I/O口,P3口能驱动4个LSTTL负载,这8个引脚还用于专门的第二功能。
端口置1时,内部上拉电阻将端口拉到高电平,作输入用。
对内部Flash程序存储器编程时,接控制信息。
P1-3端口在做输入使用时,因内部有上接电阻,被外部拉低的引脚会输出一定的电流。
除此之外P3端口还用于一些专门功能,具体请看下表。
其它的控制或复用引脚:ALE/PROG:30脚访问外部存储器时,ALE(地址锁存允许)的输出用于锁存地址的低位字节。
即使不访问外部存储器,ALE 端仍以不变的频率输出脉冲信号(此频率是振荡器频率的1/6)。
在访问外部数据存储器时,出现一个ALE脉冲。
对Flash存储器编程时,这个引脚用于输入编程脉冲PROGPSEN: 29脚该引是外部程序存储器的选通信号输出端。
当AT89C51由外部程序存储器取指令或常数时,每个机器周期输出2个脉冲即两次有效。
但访问外部数据存储器时,将不会有脉冲输出。
EA/Vpp: 31脚外部访问允许端。
当该引脚访问外部程序存储器时,应输入低电平。
要使AT89S51只访问外部程序存储器(地址为0000H-FFFFH),这时该引脚必须保持低电平。
对Flash存储器编程时,用于施加Vpp编程电压。
四、硬件设计时钟控制电路由四部分:复位电路、显示电路、晶振电路和控制电路组成如下图所示。
4.1总电路图:正5V电源直接接到AT89S52的40脚(VCC),20脚(GND)接地。
电路图如下所示。
4.2复位电路该电路采用上电自动复位与手动复位结合接到89S52的9脚(RST)。
由一个30uF的电容、一个按键、一个10K的电阻和一个220欧电阻构成。
手动按K5,无论电路处于何种状态,电路都会恢复到初始状态的显示。
4.3显示电路显示电路部分通过CD4511驱动七段数码管。
CD4511译码驱动芯片能够提供较高的上拉电流,可以直接驱动七段数码管。
三极管可以较为方便的控制七段数码管。
电路图如下图所示。
4.3.1 CD4511(引脚图如下所示)BI:4脚是消隐输入控制端,当BI=0 时,不管其它输入端状态如何,七段数码管均处于熄灭(消隐)状态,不显示数字。
LT:3脚是测试输入端,当BI=1,LT=0 时,译码输出全为1,不管输入DCBA状态如何,七段均发亮,显示“8”。
它主要用来检测数码管是否损坏。
LE:锁定控制端,当LE=0时,允许译码输出。
LE=1时译码器是锁定保持状态,译码器输出被保持在LE=0时的数值。
D、C、B、A为8421BCD码输入端。
a、b、c、d、e、f、g:为译码输出端,输出为高电平1有效。
8421 BCD 码对应的显示见下图:4.3.2数码管1).数码管引脚图2).数码管使用方法LED数码管分共阳型和共阴型两种,这里我们选择七段共阴型数码管。
数码管的a、b、c、d、e、f引脚分别接到CD4511译码驱动芯片对应的引脚。
公共端com分别与连接在P2口的NPN的集电极相连接。
NPN的发射极并联接地。
CD4511对应的引脚ABCD分别连在AT89S52的P0.0、P0.1、P0.2、P0.3引脚。
当数码管选通时,通过控制P0口来实现七段数码管动态显示数据。
4.3.3三极管1).三极管引脚图2).三极管使用方法单片机灌电流不易过大。
对于数码管每个位选的灌电流约为10mA左右,六个位选为60mA,达到了单片机端口极限。
可采用三极管,作为开关管,基极接单片机P2口,集电极接数码管,发射极并联接地,三极管高电平时导通。
导通后集电极电压为0.3v。
满足数码管共阴极接地的要求。
4.4晶振电路18脚(XTAL1)和19脚(XTAL2)外接12MHZ的晶振和两个30PF的电容,震荡频率就是晶体的固有频率。
4.5控制电路本电子钟设计有四个轻触式按键,分别命名为:K1(设置按钮),K2(分钟加1),K3(小时加1),K4(确定按钮)。
按键电路五、 软件设计1.软件设计总框图1)总框图(如图5.1) 2)程序代码详见附录1。
NNNNYYY秒单元加160s 了吗?秒单元清零,分单元加160分了吗?分单元清零,时单元加1到24小时了?主程序入口到1s 了吗?定时器初始化5.1 主程序流程图2.数码管控制:1)流程图(如图5.2)。
2)程序代码详见附录1。
5.2数码管控制流程图3.定时器中断的使用:1)流程图(如图5.3)。
2)程序代码详见附录1。
5.3 定时器中断流程图六、实习心得(设计实物照片)经过几周的努力,感触颇深。
从开始的搜索整理资料到程序在电路板上边良好的运行,期间并非是一帆风顺的。
但我们克服了重重障碍。
终于完成了时钟控制器的制作,看着数码管上的时间一分一秒的跳动,那一刻激动地心情无法用语言来表达,只是感觉身上的每一个细胞都充满了活力。
对于电子信息工程专业即将毕业的我们,本次实训是我们走入职场之前比较有意义的一次实训。
实训开始时候漫无目的,不知道从何着手,但是随着资料的整理,之间不断地学习,渐渐地完成了电路板的焊接。
本来以为将写好的程序烧到芯片里边,时钟就可以正常的运行了,但是当我在写程序的时候,才发现这部分对于电路的调试却是整个设计环节的重中之重。