基于单片机的数字电子钟设计.doc
《基于单片机的数字电子钟设计.doc》由会员分享,可在线阅读,更多相关《基于单片机的数字电子钟设计.doc(30页珍藏版)》请在沃文网上搜索。
1、摘 要电子钟在生活中应用非常广泛,而一种简单方便的数字电子钟则更能受到人们的欢迎。所以设计一个简易数字电子钟很有必要。本电子钟采用ATMEL公司的AT89S52单片机为核心,使用12MHz 晶振与单片机AT89S52 相连接,通过软件编程的方法实现以24小时为一个周期,同时8位7段LED数码管(两个四位一体数码管)显示小时、分钟和秒的要求,并在计时过程中具有定时功能,当时间到达提前定好的时间进行蜂鸣报时。该电子钟设有四个按键S1、S2、和S3键,进行相应的操作就可实现功能选择,一个加一个减。具有时间显示、校正等功能。走时准确、示直观运行稳定等优点。具有极高的推广应用价值。关键词 电子钟;AT8
2、9S52;硬件设计Clock is widely used in life, and a simple digital clock is more welcomed by people. So to design a simple digital electronic clock is necessary.The system use a single chip AT89S52 of ATMELs as its core to control The crystal oscillator clock,using of E-12MHZ is connected with the microcon
3、troller AT89S52, through the software programming method to achieve a 24-hour cycle, and eight 7-segment LED digital tube (two four in one digital tube) displays hours, minutes and seconds requirements, and in the time course of a timing function, when the time arrived ahead of scheduled time to buz
4、z a good timekeeping. The clock has four buttons S1, S2, S3 and S4 key, and make the appropriate action can be achieved when the school, timing, reset. With a time display, timer function, corrective action. Accurate travel time, display and intuitive, precision, stability, and so on. With a high ap
5、plication value. Key words Electronic clock;;AT89S52;Hardware DesignIII 目 录1 设计课题任务、功能要求说明及方案介绍 11.1 设计课题任务11.2 功能要求说明11.3 设计总体方案介绍及原理说明12 设计课题硬件系统的设计 22.1 设计课题硬件系统各模块功能简要介绍22.2 设计课题电路原理图、PCB图、仿真图22.3 设计课题元器件清单 43 设计课题软件系统的设计 53.1 设计课题使用单片机资源的情况53.2 设计课题软件系统各模块功能简要介绍53.3 设计课题软件系统程序流程框图63.4 设计课题软件系统程
6、序清单94 设计结论、仿真结果234.1 设计课题的设计结论及使用说明 234.2 设计课题的仿真结果 23结 束 语 24致 谢 25参考文献 26附 录 27I1 设计课题任务、功能要求说明及方案介绍1.1 设计课题任务设计一个具有特定功能的电子钟。具有时间显示功能。并有时间设定,时间调整功能1.2 功能要求说明设计一个具有特定功能的电子钟。该电子钟上电或按键复位后能自动显示系统提示符“P.”, 进入时钟准备状态;第一次按电子钟启动/调整键,电子钟从0时0分0秒开始运行,进入时钟运行状态;再次按电子钟启动/调整键,则电子钟进入时钟调整状态,此时可利用各调整键调整时间,调整结束后可按启动/调
7、整键再次进入时钟运行状态。1.3 设计课题总体方案介绍及工作原理说明本电子钟主要由单片机、4*1独立键盘、显示接口电路和复位电路构成,设计课题的总体方案如图1所示: 微型控制器atc89c52时钟电路校时输出键盘输入时钟显示图1 总体设计方案图 本电子钟的所有的软件、参数均存放在AT89S52的Flash ROM和内部RAM中,减少了芯片的使用数量简化了整体电路也降低了整机的工作电流。键盘采用动态扫描方式。利用单片机定时器及计数器产生定时效果通过编程形成数字钟效果,再利用数码管动态扫描显示单片机内部处理的数据,同时通过端口读入当前外部控制状态来改变程序的不同状态,实现不同功能。2 设计课题硬件
8、系统的设计2.1 设计课题硬件系统各模块功能简要介绍本设计的硬件系统主要采用以下基本模块来实现,单片机最小系统模块,输入模块、输出模块、电源模块。(1)单片机最小系统模块:包括低功耗、高性能CMOS8位微控制器AT89S52;复位电路;晶振电路。本本模块AT89S52系统控制核心,单片机系统复位由复位电路完成,单片机内部有一个高增益、反相放大器,其输入端为芯片引脚XTAL1,其输出端位位引脚XTAL2。通过这两个引脚在芯片外并接石英晶体振荡器和两只电容。这样就构成一个稳定的自激振荡器。 (2)输入模块:本模块共用到了5个按键,1个电源开关,一个复位键,单片机运行期间,利用按键完成复位操作。3个
9、按键独立式键盘,S1键控制电子钟的启动调整状态,S2键为加1键,S3键为减1键。且S1、S2、S3任一键都独自连一个I/O(P1.0、P1.1、P1.2)口线,说明它们可以独立实现相应的电子钟功能。(3)输出模块:本次设计显示为8位,采用两个四位一体数码管(共阳极)作为显示窗口,既可以节约成本又能简化电路。数码管用8个PNP三极管驱动。(4)电源模块:现在市面上销售的编程器有很多都是由PC机的USB口直接供电为了降低本设计的成本及节省设计时间,没有另外设计编程器,而直接购买了市场上的USB供电及下载器。2.2 设计课题电路原理图、PCB图 图2.1 电路原理图图2.2proteus仿真图图2.
10、3 PCB图2.3 设计课题元器件清单设计课题元器件清单如表2.1所示。名称数量参数电阻3个1K数码管2个4位一体电阻1个200下载口1个普通插座1个40PIN电阻16个470按键4个三极管9个PNPUSB供电线1根晶振1个12MHz电容2个30pF极性电容1个22F芯片1块AT89S52发光二极管1个六角开关1个表2.1 设计所用元器件清单3 设计课题软件系统的设计3.1 设计课题使用单片机资源的情况设计课题使用单片机资源的情况如下:P0口输出数码管段选信号,P3口输出数码管位选信号;晶振12MHz;调整选择键SET_KEY:P1.0;通过选择键选择调整位,选中位闪烁;增加键ADD_KEY:
11、P1.1;按一次使选中位加1;减少键DEC_KEY:P1.2;按一次使选中位减1;16个寄存器单元作为显示单元; 50H 用于控制秒基准时钟源的产生;51H 清零秒寄存器;52H 清零分寄存器;53H 清零时寄存器;5FH 用于秒个位;5EH 用于秒十位;5DH 用于分个位;5CH 用于分十位;5BH 用于时个位;5AH 用于时十位;54H 用于控制调时闪烁;堆栈栈底:70H。3.2 设计课题软件系统个模块功能简要介绍 本设计的软件系统主要采用以下基本模块来实现,主程序、中断服务程序、键盘输入程序模块、数码管及其驱动模块和延时模块。主程序:主要是用于对输入信号的处理、输出信号的控制和对各个功能
12、程序模块的运用及其控制。中断服务程序:主要是用于电子钟的准确运行、数据输入过程中的闪烁。键盘输入程序模块:主要是用于确定按键并得到特定的键码值。数码管及其驱动模块:主要是用于驱动数码管及利用数码管显示时间。延时模块:程序中有两种延时子程序,一种是短延时用于判键按下等,一种是长延时。3.3 设计课题软件系统程序流程框图系统软件采用汇编语言按模块化方式进行设计,然后通过Keil软件开发平台将程序转变成十六进制程序语言,接着使用Proteous 进行仿真,读出显示数据。 主程序流程框图如3.1所示;加1子程序如3.2所示;中断服务程序程序如3.3所示;键盘扫描子程序框图如3.4所示;显示子程序框图如
13、3.5所示; 图3.1 主程序流程框图 图3.2 加1子程序流程框图 图3.3 中断子程序图3.4 键盘扫描子程序 图3.5 显示子程序3.4设计课题软件系统程序清单/* 数字电子钟-查询方式要求:.显示系统提示符“P.” .定义3个功能键:分别为电子钟启动键/停止键/功能选择键;加1键;减1键 ;并且有相应指示灯指示 .在系统提示符状态下,只有按启动键/停止键才能开启电子钟,电子钟进入运行状态;再次按下启动键/停止键,电子钟进入调整状态,选择功能键,选择好想要的时或分或秒,此时,加1键,减1键才可以工作。调整结束后,按下启动键/停止键,电子钟由调整状态返回运行状态,紧跟着以调整以后的时间运行
14、。作者:王兴宇时间:2012年12月22日电路描述:crystal=12Mhz P2口位控口,P0口段控口 P1口为按键控制位 P3口为指示灯控制口*/#include #include #define uchar unsigned char#define int signed int/*共阳数码管字型码数组*/*0,1,2,3,4,5,6,7,8,9,p.,灭*/Char code dis_code=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x0c,0xff,0xBF; /*共阳数码管位控码数组(从右往左点亮,反向驱动)*/char
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
20 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 数字 电子钟 设计
