电子表设计.docx
《电子表设计.docx》由会员分享,可在线阅读,更多相关《电子表设计.docx(13页珍藏版)》请在冰豆网上搜索。
电子表设计
第一章电子表设计..................................................2
课题名称
电子表设计
课题
工作
内容
1)要用DS1302芯片;
2)数码管显示“时:
分”;
3)完成系统电路设计;
4)完成系统软件设计;
5)完成系统Proteus下的仿真。
6)完成课程设计报告。
指标
要求
数码管显示“时:
分”
进程
安排
第一天:
下达任务、理解课题要求、收集和消化相关资料;第二天:
方案论证和制定,元器件采购;第三~四天:
硬件制作、调试第五~八天:
软件设计、调试第九天:
根据设计内容,撰写设计报告第十天:
作品演示、答辩考核
主要
参考
文献
《单片机应用系统设计技术》张齐著电子工业出版社《单片机原理及应用技术》范力旻电子工业出版社《例说8051》谢亮、陈敌北、张义和人民邮电出版社《单片机C语言应用100例》王东锋王会良电子工业出版社《51系列单片机设计实例》楼然苗李光飞北航出版社
地点
秋白楼
起止日期
2012.6.10-6.23
第一章电子表设计
1.1课程设计的目的:
(1)在学习了《数字电子技术》和《单片机原理及接口技术》课程后,为了加深对理论
知识的理解,学习理论知识在实际中的运用,培养动手能力和解决实际问题的能力。
(2)熟悉Ptoteus及Keil软件的调试和仿真。
(3)通过实验提高对单片机的认识。
(4)通过实验提高焊接、布局、电路检查能力。
(5)通过实验提高软件调试能力。
(6)进一步熟悉和掌握单片机的结构及工作原理。
(7)通过课程设计,掌握以单片机为核心的电路设计的基本方法和技术,了解电路参数
的计算方法。
(8)通过实际程序设计和调试,逐步掌握模块化程序设计方法和调试技术。
(9)通过完成一个包括电路设计和程序开发的完整过程,了解开发一单片
机应用系统的全过程,为今后从事相应打下基础。
1.2课程设计要求:
1、熟悉组成系统中的实验模块原理,画出实验原理图。
2、写出完整的设计任务书:
课题的名称、系统的功能、硬件原理图、软件框图、元件清单、程序清单、参考文献。
3、数码管显示分、时。
第二章设计方案
2.1系统主要功能
该电子钟可以显示时和分。
2.2系统硬件构成及功能
基于AT89C52单片机来制作电子时钟,其最大的好处就是可最大的调整时钟使其的准确度更高。
其可归结如下:
表一
2.2.1STC89C52单片机及其说明
STC89C52为8位通用微处理器
图2.PDIP封装的AT89C52引脚图
采用工业标准的C51内核,在内部功能及管脚排布上与通用的8xc52相同,其主要用于会聚调整时的功能控制。
功能包括对会聚主IC内部寄存器、数据RAM及外部接口等功能部件的初始化,会聚调整控制,会聚测试图控制,红外遥控信号IR的接收解码及与主板CPU通信等。
主要管脚有:
XTAL1(19脚)和XTAL2(18脚)为振荡器输入输出端口,外接12MHz晶振。
RST/Vpd(9脚)为复位输入端口,外接电阻电容组成的复位电路。
VCC(40脚)和VSS(20脚)为供电端口,分别接+5V电源的正负端。
P0~P3为可编程通用I/O脚,其功能用途由软件定义,在本设计中,P0端口(32~39脚)被定义为N1功能控制端口,分别与N1的相应功能管脚相连接,13脚定义为IR输入端,10脚和11脚定义为I2C总线控制端口,分别连接N1的SDAS(18脚)和SCLS(19脚)端口,12脚、27脚及28脚定义为握手信号功能端口,连接主板CPU的相应功能端,用于当前制式的检测及会聚调整状态进入的控制功能。
P0口
P0口是一组8位漏极开路型双向I/O口,也即地址/数据总线复用口。
作为输出口用时,每位能吸收电流的
方式驱动8个TTL逻辑门电路,对端口P0写“1”时,可作为高阻抗输入端用。
在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。
在Flash编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。
P1口
P1是一个带内部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑
门电路。
对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。
作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。
Flash编程和程序校验期间,P1接收低8位地址。
P2口
P2是一个带有内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑
门电路。
对端口P2写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。
在访问外部程序存储器或16位地址的外部数据存储器时,P2口送出高8位地址数据。
在访问8位地址的外部数据存储器时,P2口输出P2锁存器的内容。
Flash编程或校验时,P2亦接收高位地址和一些控制信号。
P3口
P3口是一组带有内部上拉电阻的8位双向I/O口。
P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对P3口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。
此时,被外部拉低的P3口将用上拉电阻输出电流(IIL)。
P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能
P3口还接收一些用于Flash闪速存储器编程和程序校验的控制信号。
RST
复位输入。
当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。
ALE/
当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。
一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。
要注意的是:
每当访问外部数据存储器时将跳过一个ALE脉冲。
对Flash存储器编程期间,该引脚还用于输入编程脉冲(PROG)。
如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。
该位置位后,只有一条
MOVX和MOVC指令才能将ALE激活。
此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。
程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当STC89C52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲。
在此期间,当访问外部数据存储器,将跳过两次PSEN信号。
/VPP
外部访问允许。
欲使CPU仅访问外部程序存储器(地址为0000H—FFFFH),EA端必须保持低电平(接
地)。
需注意的是:
如果加密位LB1被编程,复位时内部会锁存EA端状态。
如EA端为高电平(接Vcc端),CPU则执行内部程序存储器中的指令。
Flash存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。
XTAL1
振荡器反相放大器的及内部时钟发生器的输入端。
XTAL2
振荡器反相放大器的输出端。
特殊功能寄存器
在STC89C52片内存储器中,80H-FFH共128个单元为特殊功能寄存器(SFE),SFR的地址空间映象如表2所示。
并非所有的地址都被定义,从80H—FFH共128个字节只有一部分被定义,还有相当一部分没有定义。
对没有定义的
单元读写将是无效的,读出的数值将不确定,而写入的数据也将丢失。
不应将数据“1”写入未定义的单元,由于这些单元在将来的产品中可能赋予新的功能,在这种情况下,复位后这些单元数值总是“0”。
STC89C52除了与STC89C51所有的定时/计数器0和定时/计数器1外,还增加了一个定时/计数器2。
定时/计数器2的控制和状态位位于T2CON、T2MOD,寄存器对(RCAO2H、RCAP2L)是定时器2在16位捕获方式或16位
自动重装载方式下的捕获/自动重装载寄存器。
数据存储器
AT89C52有256个字节的内部RAM,80H-FFH高128个字节与特殊功能寄存器(SFR)地址是重叠的,也就是高128字节的RAM和特殊功能寄存器的地址是相同的,但物理上它们是分开的。
当一条指令访问7FH以上的内部地址单元时,指令中使用的寻址方式是不同的,也即寻址方式决定是访问高128字节
RAM还是访问特殊功能寄存器。
如果指令是直接寻址方式则为访问特殊功能寄存器。
间接寻址指令访问高128字节RAM,堆栈操作也是间接寻址方式,所以,高128位数据RAM亦可作为堆栈区使用。
2.2.2时钟芯片电路设计
在本系统中,我们所采用的时钟芯片是DS1302,我们通过单片机对DS1302特定寄存器数据的读取,就可以读出实时时间。
当单片机工作时,有外部给时钟芯片供电;当单片机不工作时,由时钟芯片电路里的纽扣电池给时钟芯片供电。
第三章仿真图
软件仿真:
我们在进行硬件制作前我们都对我们的制作进行了软件仿真,本次我们用了proteus7.0进行了软件的仿真仿真图如下图,根据仿真图的显示结果我的电路设计已经达到了课题的基本要求。
第四章问题与总结
4.1问题
(1)在绘制电路图时电路出现错误,经过观察和调整,得以原理图成功制出。
(2)在编写程序时程序也出现了问题,出现许多提示错误,经过和同学讨论,最后程序才成功编写完成,仿真效果也随之出来。
(3)本来以为仿真图出来,接下来就是简单的手工问题,可过程远比我想象的要复杂的多,第一次焊了一块板,差不多快完成时发现连线连成“蜘蛛网”,甚是难看,在同学的建议下我选择了重新焊,在第二次的焊板过程中发现第一次焊时有许多地方的引脚是错误,结果总不会如自己所意料的,第二次焊结束时所想要的效果还是没有出来,当时的心很失落,用电压表查电路、查看板有无虚焊,在焊完漏掉的线路后效果仍旧没出来,我的心更加失望,在快要绝望准备放弃时,我抱着试一试的心理重新烧了一下程序,结果出来了,心中的石头落下了。
4.2总结
本次的设计中利用STC89C52和DS1302完成电路的设计,来显示时和分。
通过这次课程设计,我进一步了解了DS1302的原理,在实际动手操作过程中,使我接触了许多我以前没接触过的元件,而且重新温习了刚学不久的C语言,使我学得了许多知识,使我获益匪浅。
这次课程设计,使我的动手能力得到了很大的提高,更使我们懂得理论知识的重要性,没有理论的指导一切实际行动都是盲目的,且实际操作是我们得到的理论知识得到验证,更能增加对理论知识的理解。
参考文献
1、《单片机应用系统设计技术》张齐著
2、电子工业出版社《单片机原理及应用技术》范力旻
3、电子工业出版社《例说8051》谢亮、陈敌北、张义
4、人民邮电出版社《单片机C语言应用100例》王东峰王会良
5、电子工业出版社《51系列单片机设计实例》楼然苗李光飞北航出版社
附录1:
元件清单
元件
数量
AT89S52
1
D