收藏 分销(赏)

基于AT89S51的电子钟(带电路图及程序).doc

上传人:pc****0 文档编号:6558456 上传时间:2024-12-13 格式:DOC 页数:54 大小:3.79MB
下载 相关 举报
基于AT89S51的电子钟(带电路图及程序).doc_第1页
第1页 / 共54页
基于AT89S51的电子钟(带电路图及程序).doc_第2页
第2页 / 共54页
点击查看更多>>
资源描述
《单片机技术》课程设计任务 一、设计题目:基于单片机并行口的电子钟的设计 二、适用班级:电子0303 三、指导教师:王韧 四、任务与要求: 在智能化仪器仪表中,控制核心均为微处理器,而单片机以其高性能、高速度、体积小、价格低廉、稳定可靠而得到广泛应用,是设计智能化仪器仪表的首选微控制器,单片机结合简单的接口电路即可构成电子钟,它可广泛应用于工业、农业、日常生活等领域,与传统钟表相比较,它具有高精度、高可靠性、操作方便、价格便宜、智能化等特点,是钟表的一个发展方向,具有一定的实用价值。 1、本课题任务如下: 设计一个具有特定功能的电子钟。该电子钟上电或按键复位后能自动显示系统提示符“P.”, 进入时钟准备状态;第一次按电子钟启动/调整键,电子钟从0时0分0秒开始运行,进入时钟运行状态;再次按电子钟启动/调整键,则电子钟进入时钟调整状态,此时可利用各调整键调整时间,调整结束后可按启动/调整键再次进入时钟运行状态。 2、本课题要求如下: (1)在AT89S51的P0口和P2口外接由六个LED数码管(LED5~LED0)构成的显示器,用P0口作LED的段码输出口(P0.0~P0.7对应于LED的a~dp),P2.5~P2.0作LED的位控输出线(P2.5~P2.0对应于LED5~LED0),P1口外接四个按键A、B、C、D(对应于P1.0~P1.3)。 (2)、利用六个LED显示当前时间。 (3)、四个按键的功能:A键用于电子钟启动/调整;B键用于调时,范围0-23,0为24点,每按一次时加1;C键用于调分,范围0-59,0 为60分,每按一次分加1;D键用于调秒, 范围0-59,0为60秒,每按一次秒加1。 (4)、单片机采用AT89S51,fosc=12MHZ。 (5)、电子钟供电电源电路的设计。 (6)、电子钟时钟电路,复位电路的设计。 (7)、编写系统监控程序、键扫子程序、显示子程序及其它所需子程序、功能程序和中断服务程序。 (8)、计算机输出课程设计说明书一份。 (9)、设计时间:二周 (10)、制作电子钟实物。 五、课程设计说明书主要内容 1、课程设计说明书封面; 2、课程设计任务书封面及课程设计任务书; 3、前言; 4、课程设计说明书目录; 5、电子钟功能说明及总体方案介绍; 6、详细介绍电子钟的工作原理; 7、绘制电子钟整机电路框图、整机电路原理图、电源电路原理图及PCB图各1份; 8、列出电子钟元器件清单; 9、详细介绍电子钟单元电路工作原理(包括电源电路、时钟电路、复位电路、键盘/显示接口电路及所用主要芯片); 10、单片机硬件资源的使用分配情况; 11、画出电子钟软件系统监控程序、各子程序、中断服务程序及各功能程序的流程框图; 12、列出电子钟软件系统程序清单; 13、写出电子钟的使用说明; 14、设计体会,谈谈本设计的重点、难点及精妙之处,是否存在不足之点及改进意见; 15、提出《单片机技术》课程教学建议; 16、参考资料。 六、课程设计说明书书写格式 参照“课程设计说明书书写格式”文件。 七、参考资料 [1]、曹巧媛,单片机原理及应用[M],北京:电子工业出版社,1997.7。 [2]、赵秀珍,单永磊,单片微型计算机原理及其应用[M],北京:中国水利水电出版社,2001.8。 [3]、张毅刚,修林成,胡振江,MCS-51单片机应用设计[M],哈尔滨:哈尔滨工业大学出版社,1990.8。 [4]、张洪润,兰清华,单片机应用技术教程[M],北京:清华大学出版社,1997.11。 [5]、李华,MCS-51系列单片机实用接口技术[M],北京:北京航空航天大学出版社,1993.8。 [6]、陈景初,单片机应用系统设计与实践[M],北京:北京航空航天大学出版社。 [7]、马家辰,MCS-51单片机原理与接口技术[M],哈尔滨:哈尔滨工业大学出版社。 [8]、刘守义,单片机应用技术[M],西安:西安电子科技大学出版社。 电气自动化教研室 2005年9月10日 前 言 电子科技日新月异,人们对现代电子设备的智能化和微型化及其精度提出了更高的要求,而单片机因其具有稳定可靠、 体积小、 价格低廉等特点,成为设计智能化仪器仪表的首选微控制器,因此本次我们没有选用传统的专用的时钟芯片,而是采用了AT89S51芯片,此款单片机可以使用软件对其进行在线编程,其灵活性和可靠性都相对提高。 通过此次实物制作,增强了我们的动手能力,把理论与实践融合在一起。同时,也进一步加深了对单片机的硬件结构的理解和巩固,编程能力也得到了提高。在此将电子钟制作过程中用到的知识进行了一些总结,并记录了遇到的问题,希望自己今后能注意。同时也希望能成为读者的参考资料,能帮助读者避免出现相同的问题,并能从中得到一些启发。 在此要感谢王老师对我的指导,感谢同组人的合作及帮助过我的同学。由于编者水平有限,书中的错漏在所难免,恳请读者批评指正。 编者:吴 海 林 2005—11—13 目 录 1 多功能电子表说明及总体方案介绍 1 1.1 多功能电子表计时方案 1 1.2 多功能电子表键盘/显示方案 2 2 电子钟的工作原理 4 3 多功能电子表原理框图、原理图及PCB图 5 3.1 多功能电子表原理框图 5 3.2 多功能电子表整机原理图 5 3.3 多功能电子表电路PCB图 7 4 多功能电子表元器件清单 9 5 多功能电子表单元电路工作原理及芯片 11 5.1 电源电路工作原理 11 5.2 时钟电路工作原理 11 5.3 复位电路工作原理 12 5.4 键盘电路工作原理 12 5.5 显示器工作原理 13 5.6 AT89S51芯片 17 5.7 74LS244芯片 20 5.8 S8550PNP三极管 21 5.9 四位一体数码管 23 6 单片机硬件资源分配 25 7 程序流程图 26 8 电子钟程序清单 32 9 误差分析 40 10 电子钟使用说明 43 11 设计体会 44 12 教学意见 45 13 参考资料 46 1 多功能电子表说明及总体方案介绍 本次设计电子钟系统功能简单,用单片机的最小系统就能得以实现。而单片机的最小系统设计中实际上最重要的就是对键盘/显示器接口电路的设计,由于系统功能不同所以要求就不同,接口设计也就不同。对一个键盘/显示器接口设计应从整个系统出发,综合考虑软、硬件特点。下面是本人在设计前对各种设计方案的考虑: 1.1 多功能电子表计时方案 方案一:采用实时时钟芯片 实时时钟芯片具备年、月、日、时、分、秒计时功能和多点定时功能,计时数据的更新每秒自动进行一次,不需程序干预。计算机可通过中断或查询方式读取计时数据进行显示,因此计时功能的实现无需占用CPU的时间,程序简单。此外,实时时钟芯片多数带有锂电池做后备电源,具备永不停止的计时功能;具有可编程方波输出功能,可用做实时测控系统的采样信号等;有的实时时钟芯片内部还带有非易失性RAM,可用来存放需长期保存但有时也需变更的数据。由于功能完善,精度高,软件程序设计相对简单,且计时不占用CPU时间,因此,在工业实时测控系统中多采用这一类专用芯片来实现实时时钟功能。 方案二: 软件控制。 利用单片机内部的定时/计数器进行中断定时,配合软件延时实现时、分、秒的计时及秒表计时。该方案节省硬件成本,且能使设计者对单片机的指令系统能有更深入的了解,从而掌握单片机应用技术MCS-51汇编语言程序设计方法,因此,本系统设计采用此种软件控制方法来实现计时。而由于ATMEL公司的AT89S51单片机是低功耗的具有4KB在线可编程Flash存储器的单片机。它与通用80C51系列单片机的指令系和引脚兼容。片内的Flash可允许在线重新编程,也可使用通用非易失性存储器编程。它将通用CPU和在线可编程Flash集成在一个芯片上,形成了功能强大、使用灵活和具有较高性能价格比的微控制器。它的功能强大,而且也较容易购买,故本设计中所选的单片机为AT89S51单片机。 1.2 多功能电子表键盘/显示方案 方案一: 8279扩展。 该方案方框图如图1.2.1所示,8279是一种可编程的键盘/显示接口专用芯片,它含有键盘输入和显示输出两种功能,键扫描程序和动态显示程序全由8279硬件自动完成,此种方案能以比较简单的硬件 电路和较少的软件开销实现单片机与键盘、LED显示器的接口。 方案二: 8155扩展,LED动态显示。 该方案方框图如图1.2.2所示,8155是一块可编程的接口芯片,与单片机的接口非常简单,它的键盘、显示共用一个接口电路,可节省I/O口。但动态扫描方式需占用CPU较多的时间,在单片机没有太多实时测控任务的情况下可以采用。 方案三: 串口扩展,LED静态显示。 该方案方框图如图1.2.3所示,独立式键盘配置灵活,软件结构简单,按键较多时不宜采用。静态显示占用口资源少,采用串口传输实现静态显示, LED数码管与单片机之间通过6个移位寄存器相连,显示亮度有保证,但此方案的硬件开销大,电路复杂,信息刷新速度慢,比较适用于并行口资源较少的场合。 方案四: 独立式按键,LED动态显示。 该方案方框图如图1.2.4所示,独立式按键直接与单片机I/O口相连构成键盘,每个按键不会相互影响,因本系统用到的按键比较少,采用独立式键盘不会浪费I/O口线,所以本系统采用独立式键盘。动态显示的亮度虽然不如静态显示,但其硬件电路较简单,可节省硬件成本,虽然动态扫描需占用CPU较多的时间,但本系统中的单片机没有很多实时测控任务,因此,本系统采用此种方案。 2 多功能电子表的工作原理 本设计中的电子钟的核心是AT89S51单片机,其内部带有4KB在线可编程Flash存储器的单片机,无须外扩程序存储器,硬件电路主要由四部分构成:时钟电路,复位电路,键盘以及显示电路。 时钟电路是电子表硬件电路的核心,没有时钟电路,电子表将无法正常工作计时。本系统时钟电路采用的晶振的频率为12MHz,定时器采用的是定时器0工作在方式1定时,用于实现时、分、秒的计时,定时时间为62.5ms。复位电路可使电子表恢复到初始状态。键盘可对电子表进行开启、停止,还能实现时、分、秒的显示及设定等操作。显示电路由两个共阳级4位一体LED数码管构成,它的段控端和位控端通过74LS244及其S8550PNP型号三极管与AT89S51单片机的I/O口相连,显示器可使电子表显示出时、分、秒。 多功能电子表的计时原理为:上电后,电子表显示P.提示符,按下A键后,电子表从00:00:00开始计时。当定时器0的定时时间满62.5ms后,定时器0溢出一次,溢出满16次后,电子表的秒加1,满60秒后,分加1,满60分后,时加1,满24时后,电子表重新从00:00:00开始计时。 3 多功能电子表原理方框图、原理图及PCB图 3.1 多功能电子表原理方框图 多功能电子表整机电路方框图如图3.1 3.2 多功能电子表电路原理图 3.2.1多功能电子表电源电路原理图 直流稳压电源电路原理图如图3.2所示 3.2.2 多功能电子表整机电路原理 3.3 多功能电子表电路PCB图 3.3.1 多功能电子表电源电路PCB图 电源电路PCB图如图3.4所示 3.3.2 多功能电子表整机电路PCB图 多功能电子表整机电路PCB图如图3.5所示 3.5整机PCB图 4 多功能电子表元器件清单 多功能电子表电路所有元器件清单如表4.1所示 表4.1 多功能电子表元器件清单1 元件名称 封装形式 元件号 LED数码管(共阳极) DIP-12 D1 LED数码管(共阳极) DIP-12 D2 510Ω电阻 AXIAL0.4 R1 510Ω电阻 AXIAL0.4 R2 510Ω电阻 AXIAL0.4 R3 510Ω电阻 AXIAL0.4 R4 510Ω电阻 AXIAL0.4 R5 510Ω电阻 AXIAL0.4 R6 510Ω电阻 AXIAL0.4 R7 510Ω电阻 AXIAL0.4 R8 1K电阻 AXIAL0.4 R9 200电阻 AXIAL0.4 R10 4.7K电阻 AXIAL0.4 R11 4.7K电阻 AXIAL0.4 R12 4.7K电阻 AXIAL0.4 R13 4.7K电阻 AXIAL0.4 R14 4.7K电阻 AXIAL0.4 R15 4.7K电阻 AXIAL0.4 R16 4.7K电阻 AXIAL0.4 R17 4.7K电阻 AXIAL0.4 R18 电源插座 UIN DIANYUAN 74LS244芯片 DIP-20 A1 S8550PNP三极管 TO-5 85501 S8550PNP三极管 TO-5 85502 S8550PNP三极管 TO-5 85503 S8550PNP三极管 TO-5 85504 S8550PNP三极管 TO-5 85505 S8550PNP三极管 TO-5 85506 轻触开关A DIP04 A 轻触开关B DIP04 B 轻触开关C DIP04 C 轻触开关D DIP04 D 轻触开关 DIP04 S5 12M晶振 XTAL1 Y1 33pF电容 RAD0.2 C1 33pF电容 RAD0.2 C2 22µF电容 RB.2/.4 C3 7805芯片 TO-220 U1 0.33µF电容 RAD0.2 C1 0.1µF电容 RAD0.2 C2 220µF电容 RB.2/.4 C3 220µF电容 RB.2/.4 C4 桥式整流 DIP-04 D2 二极管 DIODE0.4 D1 11V变压器 DIP-5 TR 扩展插针 SIP08 J0 扩展插针 SIP08 J1 5 多功能电子表单元电路工作原理介绍 5.1 电源电路工作原理 图5.1所示为集成直流稳压电源电路的原理图,本电源电路是由集成稳压器构成的。电路可分成三部分:电源变压器部分、整流滤波部分和稳压部分。 变压器原边为工频交流220V电压,经过变压后,变压器副边的电压变为交流11V,11V交流电压经过桥式整流电路整流后变为直流10V电压,直流10V电压作为CW7805的输入电压,CW7805输出+5V电压。图中D2为整流桥,它由四个整流二极管接成电桥形式。C3为滤波电容,C1用于抵消输入端较长接线的电感效应,以防止自激振荡,还可抑制电源的高频脉冲干扰。一般取0.1——1μF。CW7805为三端固定输出集成稳压器,其输入和输出电压都为固定值,它的输入电压为+10V,输出电压为+5V。C2和C4用以改善负载的瞬态响应,消除电路的高频噪声,同时也具有消振作用。 5.2 时钟电路工作原理 图5.2所示为时钟电路原理图,在AT89S51芯片内部有一个高增益反相放大器,其输入端为芯片引脚XTAL1,输出端为引脚XTAL2。而在芯片内部,XTAL1和XTAL2之间跨接晶体振荡器和微调电容,从而构成一个稳定的自激振荡器。时钟电路产生的振荡脉冲经过触发器进行二分频之后,才成为单片机的时钟脉冲信号。 5.3 复位电路工作原理 图5.3所示为复位电路原理图,复位是单片机的初始化操作,其主要功能是把PC初始化为0000H,使单片机从0000H单元开始执行程序,并使其它功能单元处于一个确定的初始状态。本复位电路采用的是按键复位,它是通过复位端经电阻与VCC电源接通而实现的,它兼具上电复位功能。因本系统的晶振的频率为12MHz,所以,复位信号持续时间应当超过2μS才能完成复位操作。 5.4 键盘工作原理 图5.4所示为键盘原理图,本系统采用的是独立式键盘结构,每个按键单独占用一根I/O口线,每个按键的工作不会影响其它I/O口线的状态。它软件是采用查询式结构,首先逐位查询每根I/O口线的输入状态,如某一根I/O口线输入为低电平,则可确认该I/O口线所对应的按键已按下,然后,再转向该键的功能处理程序。 5.5 显示器工作原理 系统采用动态显示方式,用P0口来控制LED数码管的段控线,而用P2口来控制其位控线。动态显示通常都是采用动态扫描的方法进行显示,即循环点亮每一个数码管,这样虽然在任何时刻都只有一位数码管被点亮,但由于人眼存在视觉残留效应,只要每位数码管间隔时间足够短,就可以给人以同时显示的感觉。图中的S8550作为驱动器,而8个510欧姆电阻则起限流作用。 由图5.5可知,要想让数码管那一段亮,在该数码管位控段为高电平的情况下给这段送低电平就可以了。显示电路结构采用动态扫描的方式,所有数码管的段控端公用单片机P0口的8根输出口线,数码管的段控端a、b、c、d、e、f、g、dp分别接到P0口的P0.0、P0.1、P0.2、P0.3、P0.4、P0.5、P0.6、P0.7口线上,每个数码管的位控线单独占用单片机P2口一根输出口线,8位数码管从高位到低位分别接P2.0~P2.7引脚。段控码(低电平有效)由P0口输出经上拉电阻上拉电压后通过锁存器74LS244送到数码管的段控端,位控码由P2口输出经三极管S8550驱动后送到数码管的位控端。 在单片机内部显示缓冲区79H、7AH、7BH、7CH、7DH、7EH内的值分别是秒的个位、秒的十位、分的个位、分的十位、时的个位、时的十位,显示器LED0、LED1、LED2、LED3、LED4、LED5分别显示秒的个位十位、分的个位十位、时的个位十位,由图5.5所示。 数码管动态显示:由于显示的数据和LED数码管的段控码并不是一一对应的关系,即显示的数据与数码管的字型代码不相符。显示数据与字型代码之间存在着转换关系,数码管段控数据和数码管各段的对应关系如表5.1、表5.2所示。 表5.1 数码管数据和数码管每段的对应关系 D7 D6 D5 D4 D3 D2 D1 D0 LED显示码 a 1 1 1 1 1 1 1 0 0FEH b 1 1 1 1 1 1 0 1 0FDH c 1 1 1 1 1 0 1 1 0FBH d 1 1 1 1 0 1 1 1 0F7H e 1 1 1 0 1 1 1 1 0EFH f 1 1 0 1 1 1 1 1 0DFH g 1 0 1 1 1 1 1 1 0BFH dp 0 1 1 1 1 1 1 1 7FH 表5.2 数码管断码和字型的对应关系(共阳极) 字型 D7 D6 D5 D4 D3 D2 D1 D0 段码 dp g f e d c b a 0 1 1 0 0 0 0 0 0 0CO 1 1 1 1 1 1 0 0 1 0F9 2 1 0 1 0 0 1 0 0 0A4 3 1 0 1 1 0 0 0 0 0B0 4 1 0 0 1 1 0 0 1 99 5 1 0 0 1 0 0 1 0 92 6 1 0 0 0 0 0 1 0 82 7 1 1 1 1 1 0 0 0 0F8 8 1 0 0 0 0 0 0 0 80 9 1 0 0 1 0 0 0 0 90 A 1 0 0 0 1 0 0 0 88 B 1 0 0 0 0 0 1 1 83 C 1 1 0 0 0 1 1 0 0C6 D 1 0 1 0 0 0 0 0 0A0 E 1 0 0 0 0 1 1 0 86 F 1 0 0 0 1 1 1 0 8E P. 0 0 0 0 0 1 1 0 06 全亮 0 0 0 0 0 0 0 0 00 全灭 1 1 1 1 1 1 1 1 0FF 从电子钟程序清单中的显示程序可以知道:数据表格存储单元从首地址到最高位分别存放的是共阳极数码管0、1、2、3、4、5、6、7、8、9、P.、灭的十六进制字型代码,所以只要把显示缓冲区内的数值加上偏移地址rel(偏移量计算方法如式3.1所示),把和送到累加器A中,使用MOVC A, @A+PC就可以取出缓冲区内要显示数据的字型代码,当然要取P.和灭的字型代码就要分别给缓冲区送0AH、0BH。 偏移地址rel=数据表格首地址-MOVC A @A+PC指令单元首地址-1 式3.1 在动态扫描时,显示缓冲区79H内部存放的是要显示的秒的个位的数值,使用MOVC A, @A+PC指令取出段控码,由P0口输出通过锁存器74LS244后送到数码管的段控端,给P2口送01H通过锁存器74LS244驱动以后,只有LED0位的位控端有效,此时只有LED0被点亮来显示秒的个位,延时持续点亮一段时间,然后把显示缓冲单元地址加1,位控值左移一位,取出段控码,再把段控码和位控码送到数码管显示器,此时只有LED1被点亮显示秒的十位,延时持续点亮一段时间,就这样通过逐个地从低位到高位点亮各个显示器,扫描到最高位时的十位被点亮就返回。这样虽然在任一时刻只有一位显示器被点亮,但是由于人眼具有视觉残留效应,看起来与全部显示器持续点亮效果完全一样。 5.6 AT89S51芯片介绍 如图5.7所示为AT89S51芯片的引脚图 兼容标准MCS-51指令系统的AT89S51单片机是一个低功耗、高性能CHMOS的单片机,片内含4KB在线可编程Flash存储器的单片机。它与通用80C51系列单片机的指令系统和引脚兼容。AT89S51单片机片内的Flash可允许在线重新编程,也可用通用非易失性存储编程器编程;片内数据存储器内含128字节的RAM;有40个引脚,32个外部双向输入/输出(I/O)端口;具有两个16位可编程定时器;中断系统是具有6个中断源、5个中断矢量、2级中断优先级的中断结构;震荡器频率0到33MHZ,因此我们在此选用12MHZ的晶振是比较合理的;具有片内看门狗定时器;具有断电标志POF等等。AT89S51具有PDIP,TQFP和PLCC三种封装形式。上图就是PDIP封装的引脚排列,下面介绍各引脚的功能。P0口:8位、开漏级、双向I/O口 。 P0口可作为通用I/O口,但须外接上拉电阻;作为输出口,每各引脚可吸收8各TTL的灌电流。作为输入时,首先应将引脚置1。P0也可用做访问外部程序存储器和数据存储器时的低8位地址/数据总线的复用线。在该模式下,P0口含有内部上拉电阻。在FLASH编程时,P0口接收代码字节数据;在编程效验时,P0口输出代码字节数据(需要外接上拉电阻)。 P1口:8位、双向I/0口,内部含有上拉电阻。 P1口可作普通I/O口。输出缓冲器可驱动四个TTL负载;用作输入时,先将引脚置1,由片内上拉电阻将其抬到高电平。P1口的引脚可由外部负载拉到低电平,通过上拉电阻提供电流。 在FLASH并行编程和校验时,P1口可输入低字节地址。在串行编程和效验时,P1.5/MO-SI,P1.6/MISO和P1.7/SCK分别是串行数据输入、输出和移位脉冲引脚。 P2口:具有内部上拉电阻的8位双向I/O口。 P2口用做输出口时,可驱动4各TTL负载;用做输入口时,先将引脚置1,由内部上拉电阻将其提高到高电平。若负载为低电平,则通过内部上拉电阻向外部输出电流。 CPU访问外部16位地址的存储器时,P2口提供高8位地址。当CPU用8位地址寻址外部存储时,P2口为P2特殊功能寄存器的内容。 在FLASH并行编程和校验时,P2口可输入高字节地址和某些控制信号。 P3口:具有内部上拉电阻的8位双向口。 P3口用做输出口时,输出缓冲器可吸收4各TTL的灌电流;用做输入口时,首先将引脚置1,由内部上拉电阻抬位高电平。若外部的负载是低电平,则通过内部上拉电阻向输出电流。 在与FLASH并行编程和校验时,P3口可输入某些控制信号。 P3口除了通用I/O口功能外,还有替代功能,如表5.3所示 表5.3 P3口的替代功能 引脚 符号 说明 P3.0 RXD 串行口输入 P3.1 TXD 串行口输出 P3.2 /INT0 外部中断0 P3.3 /INT1 外部中断1 P3.4 T0 T0定时器的外部的计数输入 P3.5 T1 T1定时器的外部的计数输入 P3.6 /WR 外部数据存储器的写选通 P3.7 /RD 外部数据存储器的读选通 RST:复位端。当振荡器工作时,此引脚上出现两个机器周期的高电平将系统复位。 ALE/ :当访问外部存储器时,ALE(允许地址锁存)是一个用于锁存地址的低8位字节的书粗脉冲。在Flash 编程期间,此引脚也可用于输入编程脉冲()。在正常操作情况下,ALE以振荡器频率的1/6的固定速率发出脉冲,它是用作对外输出的时钟,需要注意的是,每当访问外部数据存储器时,将跳过一个ALE脉冲。如果希望禁止ALE操作,可通过将特殊功能寄存器中位地址为8EH那位置的“0”来实现。该位置的“1”后。ALE仅在MOVE或MOVC指令期间激活,否则ALE引脚将被略微拉高。若微控制器在外部执行方式,ALE禁止位无效。 :外部程序存储器读选取通信号。当AT89S51在读取外部程序时, 每个机器周期 将PSEN激活两次。在此期间内,每当访问外部数据存储器时,将跳过两个信号。 /Vpp:访问外部程序存储器允许端。为了能够从外部程序存储器的0000H至FFFFH单元中取指令,必须接地,然而要注意的是,若对加密位1进行编程,则在复位时,的状态在内部被锁存。 执行内部程序应接VCC。不当选择12V编程电源时,在Flash编程期间,这个引脚可接12V编程电压。 XTAL1:振荡器反向放大器输入端和内部时钟发生器的输入端。 XTAL2:振荡器反相放大器输出端。 5.7 74LS244驱动器 74LS244是单向总线驱动器。是8输入8输出芯片,中1G和2G为使能端,低电平有效。它的外部管脚图如图5.8所示。 74LS244是一种三态输出的八缓冲器和线驱动器,该芯片的逻辑电路图和引脚图如图5.8所示。从图5.8可见,该缓冲器有8个输入端,分为两路——1A1~1A4,2A1~2A4,同时8个输出端,也分为两路——1Y1~1Y4,2Y1~2Y4,分别由2个门控信号1G和2G控制,当记为低电平时,1Y1~1Y4的电平与1A1~1A4的电平相同,即输出反映输入电平的高低;同样,当2G为低电平时,1Y1~1Y4的电平与2A1~2A4的电平和同。而当1G(或2G)为高电平时,输出1A1~1A4(或2A1~2A4)为高阻态。经74LS244缓冲后,输入信号被驱动,输出信号的驱动能力加大了。 其功能表如表5.4所示,表中  H为高电平,L为低电平,A为高阻态,X为任意状态 表5.4 74LS244引脚功能表 输入 输出 G A Y L L L L H H N X X 5.8 S8550PNP三极管 5.8.1主要用途: 作为音频放大器,应用于收录机、电动玩具等电子产品。(与S8050互补) 其管脚图如下图5.9 5.8.2极限值如下表5.5 参数 符号 标称值 单位 集电极、基极击穿电压 VCBO -40 V 集电极、发射极击穿电压 VCEO -25 V 发射极、基极击穿电压 VEBO -6 V 集电极电流 IC -1.5 A 集电极功率 PC 1 W 结温 TJ 125 ℃ 贮存温 TSTG -55-125 ℃ 5.8.3电参数(Ta=25℃) 电参数表5.6 参数 符号 测试条件 最小值 典型值 最大值 单 位 集电极漏电流 ICBO VCB=-35,IE=0 -100 nA 发射极漏电流 IEBO VBE=-6,IC=0 -100 nA 集电极、发射极击穿电压 BVCEO IC=-2mA,IB=0 -25 V 发射极、基极击穿电压 BVEBO IE=-100μA,IC=0 -6 V 集电极、基极击穿电压 BVCBO IC=-100μA,IE=0 -40 V 集电极、发射极饱和压降 VCE(sat) IC=-800mA,IB=-80mA -0.5 V 基极、发射极饱和压降 VBE(sat) IC=-800mA,IB=-80mA -1.2 V 基极、发射极压降 VBE VCE=-1V,IC=-10mA -1.0 V 直流电流增益 HFE1 VCE=-1V,IC=-100mA 85 300 HFE2 VCE=-1V,IC=-800mA 40 5.9 四位一体数码管 四位一体数码管的内部结构,如图5.10所示。由图可知,四个数码管的位控端连接在一起,共用8根数据线,四个公共端却单独占一根口线。假设段控端有段码输入时,每个数码管的段控端都收到了段码,但只有位控线有效的数码管才能显示数据,反之亦反。共阳极数码管段控端为低电平有效,位控端高电平有效,共阴极数码管恰恰相反。 四位一体数码管用于动态扫描,即把数码管显示数据的段控码分时送到其对应的段控端。当一个段控码被送到段控端时,显示此段控码数据的数码管,它的位控端置有效电平,数码管点亮;而其他数码管的位控端送无效电平,数码管不亮。持续点亮一段时间,再送其它的段控码,依次把显示段控码的数码管,使其位控端为有效电平,其他数码管的位控端为无效电平,就这样数码管依次被点亮。四位一体数码管共十二个引脚,从数码管的正面看,它以第一脚为起点,逆时针排列的。由图可知,6、8、9、12为公共端,A-11、B-7、C-4、D-2、E-1、F-10、G-5、DP-3。 显示字型和代码关系如表5.3所示。 表5.7 十六进制数字型代码 字型 共阳极代码 共阴极代码 字型 共阳极代码 共阴极代码 0 C0H 3FH 9 90H 6FH 1 F9H 06H A 88H 77H 2 A4H 5BH b 83H 7CH 3 B0H 4FH C C6H 39H 4 99H 66H d A1H 5EH 5 92H 6DH E 86H 79H 6 82H 7DH F 8EH 71H 7 F8H 07H 灭 FFH 00H 8 80H 7FH 6 单片机硬件资源的分配 本次设计用到了单片机正常工作的硬件资源,如(连接晶振的引脚XTAL1和XTAL2,复位引脚RESET),对其硬件资源还做了具体的安排。 (1).P0口 作为数码管显示器的段控输出口,对数码管显示器进行控制。 (2).P1口 P1.0~P1.3接了四个独立式分别为A键、B键、C键、D键,用于对键盘的控制,P1.5、P1.6、P1.7则作为ISP程序下载的输入端。 (3).P2口 该口全部用于数码管的位控端。 (4).定时/计数器 使用定时器0来实现本次电子钟的运行。 (5).内部存储单元 30H存储定时/计数器0的中断次数。31H~36H分别作为时、分、秒个位和十位的数据存储单元。79H~7E分别作为LED0、LED1、LED2、LED3、LED4、LED5显示缓冲单元。 (6).通用寄存器 第0组寄存器:R0、R1、R3、R7,用来存放键功能程序的数据;第1组寄存器:R3,用来存放中断服务程序的数据;第2组寄存器:R1、R4,用来存放显示程序的数据。 (7).专用寄存器 定时器控制寄存器TCON,通过设置该寄存器中TR0位的状态来控制定时/计数器0的启动/停止;中断允许寄存器IE,通过设置该寄存器EA/ET0位的状态来设置定时/计数器0中断允许/禁止;定时/计数器工作方式寄存器TMOD,设置定时/计数器0的工作方式。 7 程序流程图 8 电子钟程序清单 调整运行后的电子钟程序清单 ;该程序实现电子钟时、分、秒运行,时、分、秒调整;十、分、秒同时显示; ;共A、B、C、D四个按键,A键实现电子钟的运行和停止、B键调时、C键调分、D键调秒 ;该电子钟是单片机AT89S51控制,使用芯片中的定时器0方式1实现定时功能;P0口输出段控码、P2口输出位控码控制数码管显示 ;该电子钟共使用两个4位一体数码管(S02841A-B)显示 ;系统初始化程序**************************************************** ORG 0000H AJMP MAIN ;转到系统初始化程序 ORG 000BH AJMP PITO ;转到定时器0中断服务程序 ORG 0100H MAIN: MOV SP, #60H ;确立堆栈区
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服