单片机课程设计

发布 2022-10-04 21:27:28 阅读 7173

电子时钟。

姓名: 学号:

专业: 学院:机械与电子工程学院。

2024年12月。

目录。1设计任务。

2设计要求。

3实验电路。

4资源分配。

5程序流程图。

6程序。7程序分析。

8心得体会。

9附录。10参考文献。

一、 设计任务。

1).设计一个可以正确显示月、日、时、分的电子钟,只有四个数码管,默认时候是显示时间的。

2).可以切换显示。默认是显示时间,按切换键是转变为显示日期,显示时间的第二个数码管的小数点要闪烁,时间为半分钟灭半分钟亮,切换到显示日期时小数点一直亮。

3).要求电子时钟可以校正,校正时,校正的内容要求闪烁。

4).按键设置。

k1:时间/日期切换键。

k2:校正键。

k3:+键(校正时候增加)

k4:确定键。

二、 设计要求。

1) 具有校正功能,校正修改时,被修改的位能闪烁显示,按键要灵敏。

2) 若最高位为0,高位能灭0显示。

三、 实验电路。

(1)键盘电路采用实验箱上的9*9矩阵键盘。

2)四位数码管静态显示电路。

四、 资源分配。

1、校正/非校正标志20h.1:为0时处于非校正状态,为1时处于校正状态。

2、秒、分、时、日、月单元分别为34h、33h、32h、31h、30h。

/16s单元2fh:通过判断2fh.3来控制秒点半秒亮半秒灭。

4、时间/日期显示标志20h.0:为0时显示日期,为1时显示时间。

5、校正指针21h,通过判断21h.0来判断校正时间还是日期,通过21h.1来判断校正时内容的闪烁。

20h.1 21h.1

00 月。01 日。

10 时。11 分。

6、按键信息显示50h。

7、显示缓冲单元43h、42h、41h、40h分别用来存放时(月)的bcd码的高位、时(月)的bcd码的低位、分(天)的bcd码的高位、分(天)的bcd码的低位。

8、k1:时间/日期切换键p1.4

k2:校正键p1.5

k3:+键(校正时候增加) p1.6

k4:确定键p1.7

9、采用定时/计数器1中断,tmod设置为定时工作方式1状态,晶振用12mhz,定时1/16s,所以初值:65536-62.5*1000/2=0bdch

五、 程序流程图。

1) 主程序流程图。

2)日期时间中断服务程序流程图。

4)显示流程图。

六、 程序。

org 0000h

sjmp main

org 001bh ;设置定时器、计数器1入口地址。

ljmp itop

org 0030h

main: mov 50h,#0ffh ;按键信息。

mov 30h,#01h ;月单元置1

mov 31h,#01h ;日单元置1

mov 32h,#00h ;时单元置0

mov 33h,#00h ;分单元置0

mov 34h,#00h ;秒单元置0

mov 2fh,#00h ;计数单元清0

clr 20h.1 ;清校时标志。

setb 20h.0 ;时间,日期标志。

mov tmod,#10h ;定时器计数器1方式1

mov th1,#0bh

mov tl1,#0dch

mov ie ,#88h

setb tr1

sjmpitop:mov th1,#0bh ;重新赋初值。

mov tl1,#0dch

mov a,2fh

inc amov 2fh,a计数单元加1

cjne a,#0fh,key ;判断一秒到否?到了则进位。

mov 2fh,#00 ;重新对计数单元清0

mov a,34h进行秒单元计数。

add a,#01h

da amov 34h,a

cjne a,#60h,key ;判断1分钟是否到?

mov 34h,#00h

mov a,33h

add a,#01h

da amov 33h,a

cjne a,#60h,key ;判断一小时是否到?

mov 33h,#00h

mov a,32h进行小时单元计数。

add a,#01h

da amov 32h,a

cjne a,#24h,key

mov a,#00h

mov a,31h进行日单元计数。

add a,#01h

da amov 31h,a

cjne a,#31h,key ;判断31天是否到?

mov 31h,#01h

mov a,30h

add a,#01h

da amov 30h,a

cjne a,#12h,key ;判断12个月是否到?

mov 30h,#01h

key: jnb 20h.1,njz ;校时标志不为1,则跳转。

ljmp jiaoshi为1跳转为校时。

njz:mov a,p1读按键信息。

cjne a,50h,pxj ;判断与上一次按键是否相同。

ljmp tx1跳转到无按键处理。

pxj:mov 50h,a

jnb acc.4,pxj2 ;是否p1.4切换键,即时间日期切换键是否按下。

jnb acc.5,set1是否p1.5校正键,校正键是否按下。

ljmp tx1都不是则跳转到无按键处理。

pxj2:cpl 20h.0切换键按下,取反时间日期标志。

tx1:jnb 20h.0,dxh1 ;显示时间日期标志。

mov 3bh,32h时间送显缓。

mov 3ah,33h

ljmp disp跳转到显示程序。

dxh1:mov 3bh,30h日期送显缓。

mov 3ah,31h

ljmp disp

set1:setb 20h.1校正键按下。

mov 21h,#00校正指针清0

clr 20h.0切换到日期。

mov 3bh,30h显示日期。

mov 3ah,31h

ljmp disp跳转到显示程序。

jiaoshi:mov a,p1

cjne a,50h,key2判断与上次是否按键相同?

jnb p1.6,key2连加控制。

ljmp none2没有键按下,调用显缓。

set2: inc 21h按下校正键,校正下一个状态。

anl 21h,#03h修改校正标志。

ljmp none2

add2: mov a,#30h处于校正,按下加键。

add a,21h判断校正哪个单元。

mov r0,a

mov a,@r0

add a,#01h指针内容加1

da amov @r0,a

cjne r0,#30h,loop ;校月。

cjne @r0,#13h,none2 ;判断校月是否超出范围。

mov @r0,#01h

单片机课程设计

可变程序控制器是集微机技术 自动化技术 通讯技术于一体的通用工业控制装置。它可靠性强 性能 比高 使用方便,已在工业控制的各个领域里得到了极为广泛的应用,成为实现工业自动化的一种强有力的工具 1 plc的定义有许多种。国际电工委员会 iec 对plc的定义是 可编程控制器是一种数字运算操作的电子系统...

单片机课程设计

目录。内容提要2 关键词2引言3 一 硬件电路设计3 一 电路板原理3 二 电路元器件3 二 软件设计3 一 秒钟设计方案3 二 时钟设计方案4 结语7单片机时钟设计。内容摘要 一 在实验板上用动态扫描显示00 59秒钟,具体要求如下 一 6m晶振 二 l9 l10显示00 59十进制数并循环,间隔...

单片机课程设计

1 选题背景。1.1 家庭智能防盗报警系统设计的背景及目的。随着经济的发展,人们对防盗 防劫 防火保安设备的需求量大大增加。针对偷盗 抢劫 火灾 煤气泄漏等事故进行检测和报警的系统,其需求也越来越高。家居智能是以家为平台,兼备建筑 自动化,智能化于一体的高效 舒适 安全 便利的家居环境。自动化的家居...