没有合适的资源?快使用搜索试试~ 我知道了~
单片机电子时钟课程设计报告设计报告.pdf
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 162 浏览量
2023-05-19
13:01:02
上传
评论
收藏 1002KB PDF 举报
温馨提示
试读
21页
单片机电子时钟课程设计报告设计报告.pdf
资源推荐
资源详情
资源评论
.
-
单片机电子时钟设计
一、作品功能介绍
该作品是个性化电子钟设计,技术上主要用单片机〔AT89S52〕主控,6 位 LED 数码显
示,分别显示"小时:分钟:秒〞。该作品主要用于 24 小时计时显示,能整时报时,能作为
秒表使用,能定时闹铃 1 分钟。
功能介绍:
〔1〕上电以后自动进入计时状态,起始于00:00:00。
〔2〕设计键盘调整时间,完成时间设计,并设置闹钟。
〔3〕定时时间为 1/100 秒,可采用定时器实现。
〔4〕采用 LED 数码管显示,时、分,秒采用数字显示。
〔5〕采用 24 小时制,具有方便的时间调校功能。
〔6〕具有时钟和秒表的切换功能。
使用方法:
开机后时钟在 00:00:00 起开场计时。
(1)〔2〕
〔3〕按下 P3.4 进入秒表状态:再按 P3.4 秒表又启动,按 P3.4 暂停,再按 P3.4 秒表清零,
按 P3.4 退出秒表回到时钟状态。
二、电路原理图
如原理图所示,硬件系统主要由单片机最小应用系统、LED 数码管显示模块、电源模
块、晶振模块、按键模块等组成。
电子时钟原理图
各个模块设计
1.单片机系统 AT89S52AT89S52 概述:是一款非常适合单片机初学者学习的单片机,它完全
兼容传统的 8051,8031 的指令系统,他的运行速度要比 8051 快最高支持达 33MHz 的晶体
震荡器,在此系统中使用12MHz 的晶振。
AT89S52 具有以下标准功能: 8k 字节 Flash,256 字节 RAM,32 位 I/O 口线,看门狗
定时器,2 个数据指针,三个 16 位定时器/计数器,一个 6 向量 2 级中断构造,全双工串
行口,片内晶振及时钟电路。另外,AT89S52 可降至 0Hz 静态逻辑操作,支持 2 种软件可
选择节电模式。空闲模式下,CPU 停顿工作,允许 RAM、定时器/计数器、串口、中断继续
工作。掉电保护方式下,RAM 内容被保存,振荡器被冻结,单片机一切工作停顿,直到下一
个中断或硬件复位为止……
主要性能:与 MCS-51 单片机产品兼容 、8K 字节在系统可编程 Flash 存储器、 1000
次擦写周期、 全静态操作:0Hz~33Hz 、 三级加密程序存储器 、 32 个可编程 I/O 口线 、
三个 16 位定时器/计数器 八个中断源 、全双工 UART 串行通道、低功耗空闲和掉电模式 、
掉电后中断可唤醒、看门狗定时器 、双数据指针 、掉电标识符 。
. 优选-
.
-
2、显示模块
LED 数码管是由发光二极管构成的,亦称半导体数码管。将条状发光二极管按照共阴极
(负极)或共阳极(正极)的方法连接,组成"8”字,再把发光二极管另一电极作笔段电极,
就构成了 LED 数码管。假设按规定使*些笔段上的发光二极管发光,就能显示从 0~9 的…
系列数字。同荧光数码管(VFD)、辉光数码管(NRT)相比,它具有:体积小、功耗低、耐震
动、寿命长、亮度高、单色性好、发光响应的时间短,能与 TTL、CMOS 电路兼容等的数显
器件。+、-分别表示公共阳极和公共阴极。a~g 是 7 个笔段电极,DP 为小数点。另有一种
字高为 7.6mm 的超小型 LED 数码管,管脚从左右两排引出,小数点则是独立的。
本系统利用 6 位 LED 数码管显示时间,共阴极构造。LED 数码管由 7 段发光二极管组成,
当要显示*个数字时只要将数字所对应的引脚送入低电平。
3.按键模块
本设计中主要有三个控制按键,按键功能为:
〔1〕
〔2〕
〔3〕按下 P3.4 进入秒表状态:再按 P3.4 秒表又启动,按 P3.4
暂停,再按 P3.4 秒表清零,按 P3.4 退出秒表回到时钟状态。
4.晶振模块
在 AT89S51 芯片内部有一个高增益反相放大器,其输入端
为芯片引脚*TAL1,输出端为引脚*TAL2。而在芯片内部,*TAL1 和*TAL2 之间跨接晶体振荡
器和微调电容,从而构成一个稳定的自激振荡器。时钟电路产生的振荡脉冲经过触发器进
展二分频之后,才成为单片机的时钟脉冲信号。
晶振电路
三、程序设计
源程序代码
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; AT89S52时钟程序 ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
*****************************************************************定时器 T0、T1
溢出周期为 50MS,T0 为秒计数用, T1 为调整时闪烁及秒表定时用,
P3.2、P3.3、P3.4 为调整按钮,P0 口为字符输出口,P2 为扫描口,P1.2 为蜂呜器口,采
用共阳显示管。
50H-55H 为闹钟定时单元,60H-65H 为秒表计时单元,70H-75H 为显示时间单元,76H-79H
为分时计时单元。
03H 标志=0 时钟闪烁,=1 秒表, 05H=0,不闹铃,=1 要闹铃. 07H 每秒改变一次,
用作间隔呜叫.
*****************************************************************
. 优选-
.
-
DISPFIRST EQU 30H ;显示首址存放单元
BELL EQU P1.2
CONBS EQU 2FH ;存放报时次数
CLOCK EQU 2DH
****************************************
中断入口程序
****************************************
ORG 0000H ;程序执行开场地址
LJMP START ;跳到标号 START 执行
ORG 0003H ;外中断 0 中断程序入口
RETI ;外中断 0 中断返回
ORG 000BH ;定时器 T0 中断程序入口
LJMP INTT0 ;跳至 INTTO 执行
ORG 0013H ;外中断 1 中断程序入口
RETI ;外中断 1 中断返回
ORG 001BH ;定时器 T1 中断程序入口
LJMP INTT1 ;跳至 INTT1 执行
ORG 0023H ;串行中断程序入口地址
RETI ;串行中断程序返回
****************************************
以下程序开场 ;;
****************************************
整点报时用
QQQQ: MOV A,*10H
MOV B,79H
MUL AB
ADD A,78H
MOV CONBS,A
BSLOOP: LCALL DS21MS
LCALL DL1S
LCALL DL1S
LCALL DL1S
DJNZ CONBS,BSLOOP
CLR 08H ;清整点报时标志
AJMP START1
****************************************
主程序开场 ;;
****************************************
. 优选-
.
-
START: LCALL ST ;上电显示 00:00:00
MOV R0,*00H ;清 00H-7FH 内存单元
MOV R7,*80H ;
CLEARDISP: MOV R0,*00H ;
INC R0 ;
DJNZ R7,CLEARDISP ;
MOV 20H,*00H ;清 20H〔标志用〕
MOV 55H,*1
MOV 54H,*2
MOV 7AH,*0AH ;放入"熄灭符"数据
MOV TMOD,*11H ;设 T0、T1 为 16 位定时器
MOV TL0,*0B0H ;50MS 定时初值〔T0 计时用〕
MOV TH0,*3CH ;50MS 定时初值
MOV TL1,*0B0H ;50MS 定时初值〔T1 闪烁定时用〕
MOV TH1,*3CH ;50MS 定时初值
SETB EA ;总中断开放
SETB ET0 ;允许 T0 中断
SETB TR0 ;开启 T0 定时器
MOV R4,*14H ;1秒定时用计数值〔50MS×20〕
MOV DISPFIRST,*70H ;显示单元为 70-75H
;以下主程序循环
START1: LCALL DISPLAY ;调用显示子程序
JNB P3.2,SETMM1 ;P3.2口为 0 时转时间调整程序
JNB P3.3,TSFUN ;定时闹铃设定
JNB P3.4,FUNPT ;秒表功能〔STOP,RUN,CLR〕
08H, QQQQ
AJMP START1 ;P3.2口为 1 时跳回 START1
FUNPT: LJMP FUNPTT
START12: LJMP START1
以下闹铃时间设定程序,按 P3.3 进入设定
TSFUN: LCALL DS20MS
P3.3,START1 ;
WAIT113: JNB P3.3,WAIT113 ;等待键释放
05H,CLOSESP ;闹铃已开的话,关闹铃
MOV DISPFIRST,*52H ;进入闹铃设定程序,显示52-55H 闹钟定时
单元
DSWAIT: SETB EA
LCALL DISPLAY
. 优选-
剩余20页未读,继续阅读
资源评论
hhappy0123456789
- 粉丝: 59
- 资源: 5万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- pta题库答案c语言之排序4统计工龄.zip
- pta题库答案c语言之树结构7堆中的路径.zip
- pta题库答案c语言之树结构3TreeTraversalsAgain.zip
- pta题库答案c语言之树结构2ListLeaves.zip
- pta题库答案c语言之树结构1树的同构.zip
- 基于C++实现民航飞行与地图简易管理系统可执行程序+说明+详细注释.zip
- pta题库答案c语言之复杂度1最大子列和问题.zip
- 三维装箱问题(Three-Dimensional Bin Packing Problem,3D-BPP)是一个经典的组合优化问题
- 以下是一些关于Linux线程同步的基本概念和方法.txt
- 以下是一个简化的示例,它使用pygame库来模拟烟花动画的框架.txt
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功