汇编语言实现实时时钟显示
- 格式:doc
- 大小:40.50 KB
- 文档页数:5
目录1引言 (1)1.1设计内容和要 (1)1.2 工作原理 (2)2总体设计 (2)2.1 方案设计 (2)2.2 系统框图 (2)2.3 核心芯片简介 (3)2.3.1 DS1302简介 (3)2.3.2 AT89C51简介 (3)3 智能电子钟软硬件电路的设计 (4)3.1 硬件设计 (4)3.1.1 复位电路设计 (4)3.1.2 DS1302与单片机的接口设计 (5)3.1.3 LED显示设计 (5)3.1.4 电源设计 (6)3.1.5 按键开关去抖设计 (6)3.1.6 时钟电路的设计 (7)3.1.7 电路总原理图设计 (8)3.2 软件设计 (8)3.2.1 流程图 (8)4protues仿真与调试 (11)4.1 电路的仿真 (11)4.2软件调试 (11)结论……………………………………………………………………………………………错误!未定义书签。
参考文献 (14)附录 (15)源程序 (15)1 引言电子时钟主要是利用电子技术将时钟电子化、数字化,拥有时钟精确、体积小、界面友好、可扩展性能强等特点,被广泛应用于生活和工作当中。
另外,在生活和工农业生产中,也常常需要温度,这就需要电子时钟具有多功能性。
本设计主要为实现一款可正常显示时钟/日历、带有定时闹铃的多功能电子时钟。
本文对当前电子钟开发手段进行了比较和分析,最终确定了采用单片机技术实现多功能电子时钟。
本设计应用AT89C51芯片作为核心,6位LED数码管显示,使用DS1302实时时钟日历芯片完成时钟/日历的基本功能。
这种实现方法的优点是电路简单,性能可靠,实时性好,时间精确,操作简单,编程容易。
该电子时钟可以应用于一般的生活和工作中,也可通过改装,提高性能,增加新功能,从而给人们的生活和工作带来更多的方便。
1.1设计内容和要求以AT89C51单片机为核心,制作一个LCD显示的智能电子钟:(1) 计时:秒、分、时、天、周、月、年。
题目名称:秒表电路设计姓名:班级:学号:指导教师:日期:2016年7月13日《单片机原理及接口技术课程设计》教学大纲课程代码:课程名称:单片机原理及接口技术课程设计周数: 2 学分:1.0学分一、课程设计的性质、任务与目的单片机原理及接口技术课程设计是在学生学习完理论课和实验课的基础上开设的,通过完成一个涉及MCS-51或其他系列单片机多种资源应用并具有综合功能的设计与编程应用,使学生能够将课堂上学到的理论知识与实际应用结合起来,同时在软件编程、仿真调试及相关仪器设备的使用技能等方面得到较全面的锻炼和提高,为今后能够独立进行某些单片机应用系统的设计开发工作打下一定的基础。
本课程设计的主要目的如下:1、增进对单片机的感性认识,加深对单片机理论知识的理解,掌握单片机内部功能模块(如定时/计数器、中断、片内外存贮器、I/O口、串行口等)的应用;2、掌握单片机应用系统的软硬件设计过程及实现方法,为以后设计和实现单片机应用系统打下良好基础;3、提高综合应用所学理论知识独立分析和解决实际问题的能力。
二、本课程设计的基本理论本课程设计的基本理论是单片机原理及接口技术的基本理论,主要包括单片机的硬件结构原理、指令系统、汇编语言、中断系统、定时/计数器、串行接口、I/O接口等。
在学习掌握单片机原理及接口技术课程的前提下,利用实验室提供的单片机实验条件或基于仿真软件,采用汇编语言或C51编程,设计实现一个具体的单片机应用系统项目,熟悉单片机系统设计开发的完整过程。
三、课程设计的方式与基本要求课程设计的方式:每个班级学生按2~3人分为一组,以组为单位进行课程设计(也可一人独立进行),课程设计的题目从教师给定的题目中选取,也可以是指导教师审核通过的学生自选题目。
基本要求:每组选定题目后,按题目要求,首先进行方案论证,通过查阅资料、集体讨论,确定设计方案;然后进行具体的硬件和软件设计;完成设计后,进行硬件/软件调试;最后撰写课程设计报告。
电子时钟[摘要] 本设计是基于STC单片机的电子时钟技术,由STC12C5A16S2芯片和LCD1602液晶显示屏,DS18B20进行温度测量,辅以必要的的电路,构成一个单片机定时闹钟。
电子钟可采用数字电路实现,也可以采用单片机来完成.LCD显示“时”,“分”,LED闪动来做秒计数,定时时间到能发出警报声或者启动继电器,从而控制电器的启停。
现在是自动化高度发达的时代,特别是电子类产品都是靠内部的控制电路来实现对产品的控制,达到自动运行的目的,这就需要我们这里要做的设计中的电器元件及电路的支持。
在这次设计中主要是用STC12C5A16S2来进行定时,也结合着其他辅助电路实施控制,在定时的时候,按一下控制小时的键对小时加一;按一下控制分钟的键对分钟加一;到达预设的时间,此电路就会发出报警声音提示已经到点。
[关键词] 定时闹钟STC12C5A16S2 LCD1602Time clock[Abstract] The regular alarm clock designers design, by the microcontroller STC12C5A16S2 chip and LCD1602 display、 DS18B20 , combined with the necessary circuitry to form a single—chip timer alarm clock. Clock can be digital circuit,the microcontroller can also be used to complete。
LCD display "when”, "sub”,LED flash to do the second count, regular time to be able to sound an alarm or start relay to control the electrical start and stop. Now is the era of highly developed automation, especially electronic products are relying on the internal control circuitry to achieve control of the product to achieve the purpose of automatic operation, which requires us to do the design of electrical components and circuits to support 。
课程设计说明书姓名:学号:院系:专业:题目:实时时钟程序设计指导教师:职称:课程设计说明书院系:专业:姓名:学号:课程设计题目:实时时钟程序设计起迄日期:课程设计地点:指导教师:系主任:课程设计任务书课程设计任务书目录第一章课题设计目的容及要求 (6)1.1 目的................ ... . . . . . . . . .61.2 容 (6)1.3 要求 (6)第二章程序流程图设计 (2)2.1主流程图设计 (2)2.2子流程图设计.............. 错误!未定义书签。
第三章程序段落的说明 (8)3.1光标的设立和隐藏 (8)3.2调用系统的时间 (5)3.3判断是否有键盘的输入 (6)第四章程序调试说明、结果记录与分析 (7)4.1程序调试的过程 (7)4.2调试结果 (7)4.3分析结果 (8)第五章总结与体会 (8)参考文献 (8)附录 (9)1.程序流程图 (9)2.程序清单 (11)第一章课题设计目得容及要求1.1 目得1)培养学生文献检索的能力,特别是如何利用Internet检索需要的文献资料。
2)培养学生综合分析问题、发现问题和解决问题的能力。
3)培养学生运用知识的能力和工程设计的能力。
4)提高学生课程设计报告撰写水平。
1.2 容设计一个根据所学汇编语言课程的知识,熟练8086汇编语言的编程原理,和程序设计思想,编写一个实时时钟程序进一步提高综合运用知识的能力。
1.3 要求每隔一秒显示系统时钟;可以重复输入,有退出键功能。
第二章程序流程图设计2.1主流程图设计由方案设计分析可知,此次设计比较简单,先初始化程序,然后设立光标,在光标移动时,不断地取时,取分,取秒,并不断的循环。
在循环的过程中,当按下ESC键时退出程序;当按下其它键时,程序继续运行,并显示时间界面,再按下ESC键时,程序又将退出。
流程图设计:当初始化后,设定一个光标用来显示时间的时、分、秒,并将光标隐藏。
目录摘要 (Ⅰ)1 电子秒表与闹钟系统概述 (1)1.1 课程设计基本要求 (1)1.2 系统实现功能 (1)1.3 系统应用价值展望 (2)2 仿真软件Proteus和Keil简介 (3)2.1 Proteus简介 (3)2.2 Keil简介 (3)3 系统工作原理分析 (4)3.1AT89C2051模块 (4)3.2 显示驱动模块 (6)3.3 数码管显示模块 (8)4 程序流程图设计 (9)5 Proteus仿真原理图 (12)6 课程设计体会 (14)参考文献 (15)附:源程序代码 (16)摘要随着科学技术的不断发展 , 人们对时间计量的要求越来越高。
在当今社会,电子时钟已经得到相当广泛的应用,产品多样,发展更是多元化。
本作品是以STC89C51单片机作为主控芯片,使用12MHZ的晶振,使用专用时钟日历芯片DS12C887产生时间信息,时间精确。
软件部分以C语言为主体,用1602LCD 液晶屏显示输出信息,输出信息量多,更直观、人性化。
该时钟可实现人机交互,可通过提供的键盘对其进行调整。
系统具有以下功能:年、月、日、时、分、秒显示;12小时/24小时模式切换,在12小时模式中,用AM和PM区分上午和下午;秒表功能;整点闹铃和报时功能,且闹钟可设置多组。
本次设计的电子时钟系统由单片机最小系统,1602LCD液晶屏,时钟芯片,调整按键,蜂鸣器,电源五大部分组成。
关键词:定时器中断闹钟电子时钟1 电子秒表与闹钟系统概述1.1 课程设计基本要求(1) 用并行口设计一个具有显示功能的秒表,显示准确的北京时间(时、分、秒),可用24小时制式;(2) 有时间校准功能;(3) 允许通过转换功能键转换显示时间,用定时器实现一个电子闹钟,能设定和修改定时的时间,并能到时响铃通知;(4) 所有按键需要通过串口自发自收来调校各种功能。
1.2 系统实现功能本系统是基于单片机AT89S52制作的数字电子钟。
根据实验要求,在完成实验所要求的基本功能外,扩展了几个功能。
单片机技术课程设计数字电子钟学院:班级:姓名:学号:教师:摘要电子钟在生活中应用非常广泛,而一种简单方便的数字电子钟则更能受到人们的欢迎。
所以设计一个简易数字电子钟很有必要。
本电子钟采用AT89C52单片机为核心,使用12MHz 晶振与单片机AT89C52 相连接,通过软件编程的方法实现以24小时为一个周期,同时8位7段LED数码管(两个四位一体数码管)显示小时、分钟和秒的要求,并在计时过程中具有定时功能,当时间到达提前定好的时间进行蜂鸣报时。
该电子钟设有四个按键KEY1、KEY2、KEY3、KEY4和KEY5键,进行相应的操作就可实现校时、定时、复位功能。
具有时间显示、整点报时、校正等功能。
走时准确、显示直观、运行稳定等优点。
具有极高的推广应用价值。
关键词:电子钟 AT89C52 硬件设计软件设计目录NO TABLE OF CONTENTS ENTRIES FOUND.一、数字电子钟设计任务、功能要求说明及方案介绍1.1 设计课题设计任务设计一个具有特定功能的电子钟。
具有时间显示,并有时间设定,时间调整功能。
1.2 设计课题的功能要求说明设计一个具有特定功能的电子钟。
该电子钟上电或按键复位后能自动显示系统提示符“d.1004-22”,进入时钟准备状态;第一次按电子钟启动/调整键,电子钟从12时59分0秒开始运行,进入时钟运行状态;按电子钟S5键,则电子钟进入时钟调整状态,此时可利用各调整键调整时间,调整结束后可按S5键再次进入时钟运行状态。
1.3 设计课的设计总体方案介绍及工作原理说明本电子钟主要由单片机、键盘、显示接口电路和复位电路构成,设计课题的总体方案如图1所示:图1-1总体设计方案图本电子钟的所有的软件、参数均存放在AT89C52的Flash ROM和内部RAM 中,减少了芯片的使用数量简化了整体电路也降低了整机的工作电流。
键盘采用动态扫描方式。
利用单片机定时器及计数器产生定时效果通过编程形成数字钟效果,再利用数码管动态扫描显示单片机内部处理的数据,同时通过端口读入当前外部控制状态来改变程序的不同状态,实现不同功能。
编号单片机课程设计(2013 级)题目:基于52单片机电子时钟的设计学院:物理与机电工程学院专业:电子信息科学与技术作者姓名:陈✘✘党✘✘杜✘✘指导教师:张✘✘职称:教授完成日期:2016 年7 月 2 日二〇一六年七月基于52单片机电子时钟的设计摘要本次设计的多功能时钟系统采用STC89C52单片机为核心器件,利用其定时器/计数器定时和记数的原理,结合液晶显示电路、时钟芯片DS1302电路、电源电路以及按键电路来设计计时器。
将软硬件有机地结合起来,使得系统能够实现液晶显示,显示有年、月、日、时、分、秒以及星期,还可以设置闹钟和整点报时。
其中软件系统采用单片机汇编语言编写程序,包括显示程序、闹钟程序、中断、延时程序,按键消抖程序等,并在keil中调试运行,硬件系统利用PROTEUS 强大的功能来实现,简单且易于观察,在仿真中就可以观察到实际的工作状态。
关键词:STC89C52芯片;时钟芯片DS1302;单片机汇编语言;液晶显示电路1 设计任务及要求分析1.1 设计任务:基于单片机的电子时钟设计1.2 要求:1.2.1 用LCD液晶作为显示设备1.2.2 可以分别设定小时、分钟和秒,复位后时间为 00 00 001.2.3 能实现日期的设置年、月、日1.3 扩展要求:如闹钟功能、显示星期、整点音乐报时等2 系统方案2.1 系统整体方案的论证电路原理设计是基于小系统板包括电源电路、复位电路、按键电路、DS1302时钟电路、液晶显示驱动电路、输出控制电路。
电源部分是用电池来提供的3v-5v,晶体振荡器采用的是12MHz的石英晶体振荡器。
整个系统用单片机为中央控制器,由单片机执行采集时钟芯片的时间信号并通过显示模块来输出信号及相关的控制功能。
时钟芯片产生时钟信号,利用单片机的I/O口传给单片机;并通过I/O口实现LCD的显示。
系统设有4个独立式按键可以对时间年、月、日和星期进行调整,还可以设置闹钟。
具体如图2.1所示:图2.1 系统整体框图3硬件设计与实现3.1单片机最小系统STC89C52是一款非常适合单片机初学者学习的单片机,它完全兼容传统的8051,8031的指令系统,他的运行速度要比8051快最高支持达33MHz的晶体震荡器,在此系统中使用12MHz的晶振。
单片机原理及应用课程设计目录1.课程设计题目与要求1.1课程设计内容利用STC89C52RC单片机设计实现实时日历/时间/温度在LCD1602上的显示1.2主要设备与器材PC机一台,HOT51增强型单片机开发板,STC89C52RC单片机一块,LCD1602液晶屏,DS1302时钟芯片,DS18B20温度传感器等,其它器材任选。
1.3设计要求<1)在LCD1602上显示年月日,星期,时分秒,温度,通过3个独立按键修改时间。
<2)显示格式:LCD第一行:年-月-日星期LCD第二行:时-分-秒温度1.4 设计人员分工伍国豪:整体电路设计,焊接电路刘青梅、何盈财:软件设计2.课设所需软件简介2.1 Keil uVision4的简要介绍2009年2月发布Keil μVision4,Keil μVision4引入灵活的窗口管理系统,使开发人员能够使用多台监视器,并提供了视觉上的表面对窗口位置的完全控制的任何地方。
新的用户界面可以更好地利用屏幕空间和更有效地组织多个窗口,提供一个整洁,高效的环境来开发应用程序。
新版本支持更多最新的ARM芯片,还添加了一些其他新功能。
1. 系统概述Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。
另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。
在开发大型软件时更能体现高级语言的优势。
下面详细介绍Keil C51开发系统各部分功能和使用。
2. Keil C51单片机软件开发系统的整体结构C51工具包的整体结构,uVision与Ishell分别是C51 for Windows和for Dos的集成开发环境(IDE>,可以完成编辑、编译、连接、调试、仿真等整个开发流程。
开发人员可用IDE本身或其它编辑器编辑C或汇编源文件。
然后分别由C51及C51编译器编译生成目标文件(.OBJ>。
MCS51开发板系列YM100_V4.0开发板实验教程教程目录YM100_V4.0 硬件参数-----------------------------------1 YM100_V4.0 实例软件包---------------------------------2 YM100_V4.0 实例教程-----------------------------------3 第一章 LED 灯实验---------------------------------3 第二章数码管实验---------------------------------4 第三章 1602 液晶显示实验--------------------------5 第四章查询式独立按键实验-------------------------6 第五章外部中断实验-------------------------------7 第六章定时器计数中断实验-------------------------8 第七章矩阵式按键实验-----------------------------9 第八章定时器定时中断实验-------------------------10 第九章四位开关输入实验---------------------------11 第十章 AD 转换实验--------------------------------12 第十一章 DA 转换实验------------------------------13 第十二章温度传感器实验---------------------------14 第十三章蜂鸣器实验-------------------------------15 第十四章 PWM 实验---------------------------------16 第十五章继电器实验-------------------------------17 第十六章串口通信实验-----------------------------18 第十七章实时时钟实验-----------------------------19 第十八章 EEPROM(24C02)读写实验--------------------20 第十九章 PS2 键盘实验-----------------------------21 第二十章步进电机实验-----------------------------22 第二十一章红外线实验-----------------------------23 第二十二章 12864(7920)液晶实验--------------------24 第二十三章 12864(ks0108)液晶实验------------------25 第二十四章 12864 电子钟实验-----------------------26 YM100_V4.0 原理图-------------------------------------27 YM100_V4.0开发板使用手册.pdf内容说明-----------------29 装箱清单----------------------------------------------28YM100_V4.0硬件参数:●16路LED灯●8位数码管●4X4矩阵键盘●LCD1602液晶●4个独立按键●1个无源蜂鸣器●4位开关量输入(拨码开关)●1路继电器输出●RS232通信接口●PS2键盘接口●18B20温度传感器●DS1302实时时钟●IIC读写(AT24C02B)●AD采集电路(ADC0832)●DA输出电路(TLC5620)●红外线接收电路●定时器计数中断(独立按键触发)●外部中断(独立按键触发)●步进电机驱动电路●MCU管脚扩展接口●LCD12864驱动接口●集成USB(兼容USB1.1和USB2.0)下载器●集成KEIL C51联机仿真功能●采用USB供电YM100_V4.0实例软件包:●LED流水灯实例●8位数码管显示实例●LCD1602液晶显示实例●4个独立按键实例●外部中断实例●定时器计数中断实例●4X4矩阵键盘实例●定时器定时中断实例●4位开关量输入实例●AD采集实例●DA输出实例●18B20温度传感器实例●蜂鸣器实例●PWM输出实例●继电器输出实例●串口通信实例●DS1302实时时钟实例●IIC读写(AT24C02B)实例●PS2键盘实例●步进电机驱动实例●红外线接收实例●LCD12864(7920)驱动实例●LCD12864(KS0108)驱动实例●LCD12864电子钟实例YM100_V4.0实例教程:本教程主要是介绍开发板上各个实验的源程序所在目录、所实现的功能、实验现象、实验操作和实验过程中的注意事项,为了使你能够顺利而快速的完成各个实验,请你遵守本教程的各个步骤和注意事项。
单片机课程设计题目:单片机实现数字钟(LED显示小时:分:秒)学院电子信息工程学院学科门类工学专业通信工程学号姓名指导教师程亮亮2015年06月16日摘要单片机模块中最常见的是数字时钟,数字时钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更长的使用寿命,因此得到了广泛的使用。
数字时钟是采用数字电路实现对时、分、秒数字显示的计时装置,广泛用于个人家庭、车站、码头办公室等公共场所,成为人们日常生活中不可少的必需品,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字时钟的精度,远远超过老式钟表, 钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。
诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。
因此,研究数字时钟及扩大其应用,有着非常现实的意义。
关键词:单片机;数字时钟;钟表数字化目录摘要 (I)目录............................................................................................................. I I 1. 引言.. (1)1.1 设计背景及意义 (1)1.2 设计目的 (2)1.3主要工作及结构安排 (2)1.4 本章小结 (3)2. 方案论证与选择 (4)2.1 系统功能框图 (4)2.2 AT89C51简介 (4)2.3 DS1302简介 (8)2.4 本章小结 (11)3. 硬件电路设计 (12)3.1 系统总原理图 (12)3.2 PCB板图 (13)3.3 器件清单 (14)3.4 本章小结 (14)4. 系统程序设计 (15)4.1 软件开发环境 (15)4.2 创建工程 (15)4.3 代码程序设计 (16)4.4 本章小结 (24)5. 软件仿真 (25)5.1 Proteus仿真原理图 (25)5.2 仿真结果 (25)5.3 本章小结 (26)6. 总结 (27)参考文献 (28)附录 (28)附录I主函数代码 (29)附录II DS1302代码 (29)1. 引言1.1研究背景及意义20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。
汇编语⾔实现电⼦闹钟思路详解2.1 设计思路⾸先使⽤8255、8254、8259 三个芯⽚实现电⼦时钟的功能,让闹钟可以正常⾛时;其次,在时钟的基础上添加闹铃功能、整点报时功能、设置当前时间功能;完成设计。
2.2 设计⽅案1. 电⼦时钟部分:此次设计是通过对计数器8254设定计数值对脉冲进⾏计数,在程序⾥,8254⼯作于计数器0,⽅式3。
接⼊的CLK为1MHz,设计数初值为10000,每100次中断计数⼀次,产⽣的记数时间正好是时钟每秒⾛过的时间。
通过对中断控制器8259设置初始化命令字初值来控制中断。
程序中通过移位指令来实现时、秒、分的个位和⼗位的独⾃存储,将分、秒的个位⼗位分别存⼊指定的寄存器中。
⽐较转移指令来完成秒和分的累加。
七段数码管由8255并⾏接⼝的A⼝进⾏位的选择,通过B⼝输出要显⽰的段码。
这样就在6个七段数码管上分别显⽰时、分和秒。
当1S时间到时,修改当前数码管数值,10秒时将秒的低位清零,⾼位加1,分和时亦是如此;到达60秒时,将秒清零,分加1,到达60分时,将分清零,⼩时加1,到达24⼩时则全部清零。
2. 闹钟响铃部分:对于闹钟部分,我们⾸先要完成数码管显⽰单元按键的连接和设计,让16个按键分别为0-F;再利⽤实验平台的单次脉冲输⼊KK1产⽣⼀次中断,这样就可以设置时间了。
将设置好的时间储存起来,时刻与当前的时间进⾏⽐较,当时间⼀样时,计数器1⼯作,蜂鸣器蜂鸣,播放⾳乐,这就完成了闹钟响铃功能。
3. 整点报时部分:整点报时,就是在整时的时候响⼀次铃,当时钟整点时,⽆论是⼏点,时钟的分和秒部分都为零,所以,只要让时钟的分和秒部分与零进⾏⽐较,当他们都相等时,就代表到达整点了,可以响铃了。
整点报时就完成了,本闹钟设置的整点报时时长为5秒。
4. 设置当前时间:本部分也⽤到了数码管显⽰单元的按键部分,只要利⽤之前的设计就好了,这次使⽤单次脉冲输⼊的KK2产⽣中断设置时间,再将设置的时间存储在时间变量中,时间就设置好了。
时钟计时器的设计目录1. 引言, (2)1.1. 设计意义 (2)1.2. 系统功能要求 (2)1.3. 本组成员所做的工作 (2)2. 方案设计 (2)3. 硬件设计 (3)4. 软件设计 (5)5. 系统调试 (7)6. 设计总结 (8)7. 附录A;源程序 ....................... 错误!未定义书签。
8. 附录B;作品实物图片.................. 错误!未定义书签。
9. 参考文献.............................. 错误!未定义书签。
时钟计时器的设计1.引言1.1. 设计意义时钟计时器在现在应用场合非常的广泛,近年来,随着科学技术的进步和时代的发展,人们对时钟的功能和精度提出了越来越高的要求,各种时钟的设计也越来越重要。
秒表/时钟计时器是在一种计时器上实现两种基本功能的一种器件。
它广泛应用于各种场所,同时,它以其小巧,价格低廉,走时精度高,使用方便,功能多,便于集成化,而受到广大消费者的喜爱引言近年来随着计算机技术的飞速发展,计算机也正式形成了通用计算机系统和嵌入式计算机系统二个分支。
单片机作为最典型的嵌入式系统,由于其微小的体积和极低的成本,广泛应用于家用电器、仪器仪表、工业控制单元以及通信产品中,成为现代电子系统中最重要的智能化工具。
同时数模电技术、微电子技术也快速发展使得大量集成芯片出现,从而实现很多简单功能代替了原来的模拟电路。
这样利用单片机、集成芯片和电子电路就可以很方便的进行设计,其中最典型、现在应用也很多的就是电子产品的设计。
本设计就是利用单片机技术将秒表和时钟两种计时器的功能集中到一种计时装置上,从而实现计时器功能的集成化,使其使用起来更加方便。
本设计的一大特点就是在硬件设计中采用实时时钟芯片来实现计时,大大简化了硬件电路,从而使设计更加简便易行。
1.2. 系统功能要求时钟计时器要求用单片机及6位数码管显示时,分,秒,以24小时计时方式运行,能整点提醒(但蜂鸣器,次数代表整点时间),使用按键开关可实现时,分调整,秒表|时钟功能转换,省电(关闭显示)及定时设定提醒(蜂鸣器)的歌功能。
汇编语言数字时钟设计福建工程学院课程设计课程:微机原理及接口课程设计题目:数字时钟专业:软件工程班级: 1101 座号: 3110305110 姓名:程康2021 年 9 月18 日一、设计任务数字时钟:实时显示时间于LED数码管,并可以修改时间,包括上调,下调,复位等。
二、总体方案设计与方案论证1、时钟,前提需要脉冲的产生,根据8253能产生稳定的方波,故时钟脉冲的产生将由8253芯片实现。
2、此实验只需要精确到秒,所以,产生的方波,将是频率为1HZ。
3、时间显示采用实验箱上的6个LED数码管分别显示时、分、秒,采用动态扫描方式实现。
3、因为涉及到时钟显示和控制两大功能,还有对到来的时钟脉冲接收和处理,在这里,将选用8255芯片,作为中间介质,对用户要求和接收到的脉冲信号进行处理,设置时间通过开关产生单脉冲8255的PC0~PC2输入,通过PC0控制时间的暂停与继续,通过PC1控制时加1,通过PC2控制分加1,通过PC4控制秒加1,通过PC5控制复位。
最终产生达到用户要求的数字时钟,在微机接口实验台上模拟调试实现24小时走时的时钟,并将时间以HH.MM.SS显示在6位数码管上。
系统硬件设计主要利用微机实验箱上的电路模块,硬件电路主要有按键电路,单脉冲产生单元、8253定时计数、8255并行接口单元、LED显示电路。
三、总框图及总体软件设计说明外部操作时钟脉冲8253定时器8255芯片LED显示电路显示时钟四、接口电路逻辑图及硬件设计说明,或系统资源使用说明1、硬件整体电路图五、局部程序框图及其设计说明1、主入口开始对8253,8255进行初始化的操作,并显示初始化的当前时间否判断有没有切换信号输入K0>0?时间正常走动,按秒计时是否判断是不是处于时钟上调状态,K0=1?时间停止走动,根据按键,进行下调是时间停止走动,根据按键,进行上调中断返回2、时钟运行正常流程图开始保护现场秒单元自加1否秒单元=60?是分钟单元自加1否分钟单元=60?是小时单元自加1小时单元=24?否六、源程序清单CODE SEGMENTASSUME CS:CODE,DS:CODE START:MOV AX,CS小时单元=0显示时间恢复现场中断返回感谢您的阅读,祝您生活愉快。
实验一清零实验一、实验目的掌握汇编语言设计和调试方法,熟悉键盘操作。
二、实验内容把7000H~70FFH的内容清零。
三、实验程序框图四、实验步骤1、当DVCC单片机仿真实验系统独立工作时(1)将固化区EPROM中实验程序目标码传送到仿真RAM区,操作如下:输入0后按F1键,再输入0FFF后按F2键,再输入0后按EPMOV稍等,系统返回初始状态,显示“P.”。
(2)根据表2—1所示,通过键盘输入实验程序的起始地址0030H,再按执行键EXEC,表示连续运行该程序,稍侯,按RESET键退出运行;如果以单步运行程序,则输入0030后,按SETP键,按一次执行一条语句,直到执行到003CH为止,按MON键退出运行;如果以断点运行程序,则先输入003CH(断点地址),再按F1键,再输入0030(起始地址),然后按EXEC键执行程序,当执行到003CH时自动停下来,此时按MON键退出。
(3)用存贮器读写方法检查7000H~70FFH中的内容应全是00H。
2、当DVCC仿真实验系统联PC机时(1)在闪动“P.”状态,按PCDBG键;(2)在PC机处于在Win95/98软件平台下,单击DVCC图标。
(3)在“系统设置”选项中设定仿真模式为内程序、内数据。
对硬件实验4、5、6、7、8、9、12、15而言,仿真模式应设定为内程序、外数据。
(4)根据屏幕提示进入51/96动态调试菜单。
(5)联接DVCC实验系统(Ctrl+H)(6)装载目标文件(Ctrl+L)(7)设置PC起始地址(8)从起始地址开始连续运行程序(F9)或单步(F8)或断点运行程序(9)单步、断点运行完后,在存贮器窗口内检查7000H~70FFH中的内容是否全为00H一、思考:假使要把7000~70FFH中的内容改成FF,如何编制程序。
实验二拆字实验一、实验目的掌握汇编语言设计和调试方法。
二、实验内容把7000H的内容拆开,高位送7001H低位,低位送7002H低位。
目录1设计要求 (1)1.1初始条件 (1)1.2设计任务 (1)2总体方案论证 (2)2.1方案一 (2)2.2方案二 (2)2.3方案论证 (2)3程序流程图 (3)3.1主程序流程图 (3)3.2中断服务子程序流程图 (3)4.程序设计步骤 (6)4.1界面设置 (6)4.2检验键盘状态 (6)4.3中断子程序 (7)4.4判断计时进位 (8)4.5暂停与继续计时 (9)5程序调试说明与分析 (10)5.1初始界面 (10)5.2按下S键开始计时界面 (10)5.3按下P键暂停计时界面 (10)5.4按下G键继续计时界面 (11)5.5按下C键清零界面 (11)5.6按下ESC键退出 (12)6心得体会 (12)参考文献 (14)附件(程序清单) (15)计时器汇编语言程序设计1设计要求1.1初始条件➢采用16位微处理器8086 CPU以及86系列微型计算机的指令系统;➢软件设计平台为多功能微型计算机实验软件MFS中的微机原理实验集成环境MF2KP。
1.2设计任务➢设计汇编语言程序,实现计时功能,具体功能要求如下:(1)设计一个计时器界面,形式为:时:分:秒;(2)单击“S”或“s”键开始计时,单击“P”或“p”停止计时,单击“G”或“g”键继续计时,单击“C”或“c”键清0;(3)单击”ESC”键退出程序。
(2)单击”ESC”键退出程序。
根据功能要求绘制程序流程图、编写完整的汇编语言程序并上机调试。
2总体方案论证2.1方案一利用8155芯片设计一个具有时、分、秒显示的电子时钟,启动按键,数码管从初始设置的时间开始显示。
从设计要求可知,需要键盘扫描部分,时间控制部分,初始值设置部分,数码管显示部分,延时部分。
时间走动部分的实现:各个时钟的个位部分逢十进一,秒和分钟的十位部分是逢六进一。
当时的十位达到2时,个位为4时,程序跳到清零部分,程序从零开始计时。
数码管显示部分的功能是实现时、分、秒的显示,可以用六个数码管从左至右一次显示时间,采用分配存储单元的形式,地址从低到高分别显示秒、分、时。
一、题目:电子实时时钟/万年日历系统二、功能要求:1.基本要求:⑴显示准确的北京时间(时、分、秒),可用24小时制式;⑵随时可以调校时间。
2.发挥要求:⑴增加公历日期显示功能(年、月、日),年号只显示最后两位;⑵随时可以调校年、月、日;⑶允许通过转换功能键转换显示时间或日期。
三、方案考虑:1、硬件方案:⑴显示器采用6位LED数码管(共阳),可分别显示时间或日期。
⑵显示器的驱动采用动态扫描电路形式,以达到简化电路的目的。
但要注意所需的驱动电流比静态驱动时要大,因此要增加驱动电路。
可采用74LS244或者晶体管;其中74ls244是用来驱动段选码,晶体管是驱动位选码。
⑶采用“一键多用方案”,以减少按键数目。
本方案采用了4按键。
⑷整体上要考虑:结构简单、布局美观、操作方便、成本低廉。
2、设计电路图如下:3、元件清单:(我们使用的是TX-1C开发板)⑴ 89C52 1个⑵IC座(40脚) 3个(其中1个用于接插89C51、2个用于接插LED段数码管)。
⑶ 74LS244 1个(用于驱动6个共阳的LED段数码管)。
⑷ IC座(20脚) 1个(用于接插74LS244)。
(5)显示器:LED_8段数码管(共阳型)6个三极管:(6)PNP(8550)6个(用于驱动6个共阳型LED段数码管)。
(7)微型开关:3个(其中1个用于复位电路、其它用于键盘)。
(8)晶体振荡器(12MHz):1个(用于振荡电路)。
(9)电阻器:⑴ 3KΩ 1个(用于系统复位电路)。
⑵ 1KΩ 6个(用作PNP三极管基极电阻)。
⑶ 100Ω 7个(驱动器用作74LS244输出限流电阻)。
(10)电容器:⑴ 10μF1个(用于系统复位电路)。
⑵ 30 pF 2个(用于系统振荡电路)。
(11)其它:⑴万能电路板(10×15):1块⑵焊锡条: 2米⑶带插头、座的电源端子: 1条⑷各种颜色外皮的导线:各1米(12)工具:1.电烙铁:1把2.剪钳:1把3.镊子:1把4.万用表:1个(13)设备:编程器(MEP300或TOP851)6个4、软件方案:(1)使用全汇编编写(2)时钟基准时间由单片机内部定时中断来提供,定时时间应该乘以一个整数得到,且不宜太长或太短,最长不能超过16位定时器的最长定时时间,最短不能少于定时中断服务程序的执行时间。
/安徽工程大学机电学院单片机课程设计题目:数字电子时钟设计指导老师:***制作人员:范超学号:************班级:自动化2132日期:7月13日-7月24日总评成绩:课程任务设计书设计题目:数字电子时钟的设计设计任务:1.设计一款时,分,秒可调数字电子时钟可整点报时;2.设计三个按键K1,K2和K3,用于调节时钟的时间;3.用8个、七段LED数码管作为显示设备,开机显示00-00-00;本设计采用AT89C51单片机为核心器件。
具有电子钟显示,时间调整,整点报时等功能。
此数字钟是一个将“时”、“分”、“秒”显示于人的视觉器官的计时装置。
根据60秒为一分、60分为1小时的计数周期,构成秒、分、时的计数,实现计时的功能。
而且能显示清晰、直观的数字符号。
针对数字钟会产生误差的现象,就设计有校准时间的功能。
AT89C51单片机控制的数字钟的硬件结构与软件设计,给出了汇编语言源程序。
此数字钟是一个将“时”、“分”、“秒”显示于人的视觉器官的计时装置。
它的计时周期为24小时,显示满刻度为24时00分00秒,另外应有校时功能。
电路由时钟脉冲发生器、时钟计数器、译码驱动电路和数字显示电路以及时间调整电路组成。
用晶体振荡器产生时间标准信号,这里采用石英晶体振荡器。
根据60秒为1分、60分为1小时、24小时为1天的计数周期,分别组成两个60进制(秒、分)、一个24进制(时)的计数器。
显示器件选用LED八段数码管。
在译码显示电路输出的驱动下,显示出清晰、直观的数字符号。
针对数字钟会产生走时误差的现象,在电路中就设计有有校准时间功能的电路。
关键字:Proteus,Keil uVision,AT89C51,电子钟,整点报时摘要 (3)第1章概述 (5)1.1 设计背景 (5)1.2系统方案论证与设计 (5)第2章系统硬件设计 (7)2.1 系统总电路的设计 (7)2.1.1系统的总框图 ................................................................................................2.1.2芯片的选择 (7)2.2最小系统设计 (9)2.2.1时钟电路的选择与设计 (10)2.2.2复位电路的选择与设计 .............................................. 错误!未定义书签。
摘要围绕电子钟系统的设计与开发工作进行研究和实践,详细介绍了电子钟系统的整体结构、硬件设计、软件设计,系统方案以及其的开发和具体实现。
介绍一种基于在系统可编程技术和C51编译器配有集成开发的新型电子钟的设计方法,阐述了其工作原理和软硬件设计。
在硬件上,用KEIL公司的C51大规模集成芯片对其外围电路进行集成,用1片8051实现了几十片分离元件才能实现的功能,几乎将整个系统下载于同一芯片中,实现了所谓的片上系统,从而大大简化了系统结构,增强了系统的可靠性和性价比。
该电子钟特别适用于家庭、办公大楼、公共场所等。
关键词电子钟;单片机;硬件设计;软件设计ABSTRACTAround the electronic clock system design and development of the study and practice, details the electronic clock system overall, hardware design, software design, system solutions as well as the development and implementation. Introduction of a new technology based on in-system programming and C51 compiler equipped with an integrated development of new electronic clock design method, explains how it works and software and hardware design. In the hardware companies with KEIL C51 large-scale integrated circuit chip on its surrounding, to integrate 1 tablet 8051 implementation of scores of tablets separation components to implement functionality, almost the entire system for download on the same chip, implementation of the so-called SOC, thereby greatly simplifies system structure, enhances system reliability and high performance/price ratio. The electronic clock is particularly relevant for home, office buildings and public place, etc.Key words electronic clock; single-chip; hardware; software design目录1 系统总体设计方案 (4)1.1 设计课题任务 (4)1.2 功能要求说明 (4)1.3 总体方案介绍及工作原理 (4)2 硬件系统的设计 (6)2.1 系统各功能模块介绍 (6)2.2 系统电路图 (7)2.3 系统元器件清单 (7)3 软件系统的设计 (8)3.1设计使用单片机资源介绍 (8)3.2 软件系统各功能模块介绍 (8)3.3 软件系统程序流程框图 (9)3.4 软件系统的程序 (10)4 系统的仿真分析及结论 (11)4.1 系统设计的使用说明 (11)4.2 系统设计的仿真结果 (11)4.3 系统的误差分析 (12)4.4 设计体会 (12)4.5 教学建议 (13)参考文献 (14)致谢 (15)附录(1) (16)附录(2) (17)1 系统总体设计方案1.1 设计课题任务设计一个具有特定功能的电子钟。
汇编语言实现实时时钟显示
data segment
msg db 'Current time is: '
hours db ?,?
db ':'
minutes db ?,?
db ':'
seconds db ?,?,0
oldint1c dd ? ;旧的入口参数
position dw 0 ;时间显示位置
color db 07h
data ends
code segment ;代码段
assume cs:code,ds:code
start:
mov ax,data
mov ds,ax
jmp run
newint1c: push ax
push bx
push cx
push dx
push si
push di
push es
mov ax,data
mov ds,ax
mov ax,0200h ;获取系统时间,ch→hours cl→minutes DH→seconds,均为BCD码格式
int 1ah ;时钟服务
mov al,ch
lea si,hours ;时
call BCD
mov al,cl
lea si,minutes ;分
call BCD
mov al,dh
lea si,seconds ;秒
call BCD
mov ax,0b800h ;显存地址,采用直接写显存的方法输出字符
mov es,ax ;es:di 指向显存地址
lea si,position ;设置时间显示位置
mov di,[si]
lea si,msg
disp: mov al,[si]
inc si
or al,al
jz exit
cld
stosb
inc di
jmp disp
exit: pop es
pop di
pop si
pop dx
pop cx
pop bx
pop ax
jmp ds:oldint1c ;执行旧的中断服务程序
BCD proc
push ax ;用于将BCD码转换为ASCII码入口al-BCD码
mov ah,al ;出口
shr ah,1
shr ah,1
shr ah,1
shr ah,1
and al,0fh
add ax,'00' ;加上0的ASCII码
xchg ah,al
mov [si],ax
pop ax
ret
BCD endp
run:
mov ax,data
mov ds,ax
mov ax,351ch ;获取原1ch的入口参数
int 21h
mov word ptr ds:oldint1c,bx ;保存旧的入口参数
mov word ptr ds:oldint1c+2,es
push ds
push cs
pop ds
lea dx,newint1c
mov ax,251ch ;设置新1ch的入口参数
int 21h
pop ds
mov dx,offset run + 10h ;1节=16字节
mov cl,4
shr dx,cl ;相当于除以16以计算节大小
call Control ;调用控制子程序
call flash
mov ah,31h ;结束并驻留, DX:保留的长度(内存大小单位为节)
int 21h
Control proc
push ax
push cx
push bx
call HideCursor ;隐藏光标
xor bx,bx ;置0,时间显示位置
getkey: mov ah,0 ;获取键盘扫描码
int 16h
cmp ax,011bh ;esc-011bh
jz return
cmp ax,4800h ;up-4800h
jz up
cmp ax,5000h ;down-5000h jz down
cmp ax,4b00h ;left-4b00h jz left
cmp ax,4d00h ;right-4d00h jz right
jmp changeColor ;
up: cmp bx,160
jc getkey
sub bx,160
jmp changePos
down: add bx,160
jmp changePos
left: cmp bx,0
jz getkey
sub bx,2
jmp changePos
right: add bx,2
changePos: call flash
mov ds:position , bx
jmp getkey
changeColor:
;sub al,30h
mov ds:color,ah
call flash
jmp getkey
return: pop bx
pop cx
pop ax
ret
Control endp
flash proc
push ax
push bx
push cx
push dx
mov ah,06h ;AH使用显示服务(INT 10H)的向上卷屏功能(06H)mov al,00h ;AL滚动行数,0为整个窗口
mov bh,ds:color ;BH显示页面(本程序均使用第0页)
mov ch,0
mov cl,0 ;CH,CL窗口左上角坐标
mov dh,24
mov dl,79 ;DH,DL窗口右下角坐标,因为清全屏所以为(0,0)~(24,79)int 10h ;调用中断
pop dx
pop cx
pop bx
pop ax
ret
flash endp
HideCursor proc
push ax
push dx
push bx
mov ah,02
mov dh,24
mov dl,00
mov bh,00
int 10H
pop bx
pop dx
pop ax
ret
HideCursor endp
code ends
end start。