单片机原理及应用。
课程设计报告(样本)
设计课题: 基于单片机的时钟秒表设计
专业班级。学生姓名。
指导教师。2009 年 8 月。
1)在综合单片机实验箱的硬件结构上编写软件完成设计。
2)程序的首地址应使目标机可以直接运行,即从0000h开端。在主程序的开端部分必须设置一个合适的栈底。程序放置的地址须持续且靠前,不要在中间留下大批的空间地址,以使目标机可以应用较少的硬件资源。
3)6位显示器数码管从左到右分辨显示时。 分。 秒(各占用2位),采用24小时标准计时制。开端计时时为000000,到235959后变成000000。
4)在4*4矩阵键盘上选定3个键分辨作为小时。 分。 秒的调校键。
每按一次键,对应的显示值便加1。分。 秒加到59后变为00;小时加到23后再按键即变为00.
再调校时均不向上一单位进位(例如分加到59后变为00;但小时不产生转变)。
5)软件设计必须应用8031片内定时器,采用定时中断结构,不得应用软件延时法。
1、另设三个键,分别作小时、分、秒的减1调校。
2、在以上设计的基础上,修改程序制作一个电子秒表。分、秒各占用2位显示,1/10秒、1/100秒各占用1位显示。设定二个键分别作启动/ 停止、清零。
3、在做完(2)后,将时钟与秒表合二为一,并且在同时使用时互不影响。即可在时钟与秒表之间任意切换,而不影响走时、计秒。
用zy15mcu12bd型综合单片机实验箱及串口电路设计实现显示时间并能够调校时间的时钟,还能够实现秒表的启动/暂停,复位功能。
说明设计中包含的内容。
1) 在zy15mcu12bd型综合单片机实验箱的硬件结构上编写软件完成设计。
2) 程序的首地址应使目标机可以直接运行,即从0000h开端。在主程序的开端部分必须设置一个合适的栈底。程序放置的地址须持续且靠前,不要在中间留下大批的空间地址,以使目标机可以应用较少的硬件资源。
(3) 6位显示器数码管从左到右分别显示时。 分。 秒(各占用2位),采用24小时标准计时制。开端计时时为000000,到235959后变成000000.
(4) 在键盘上选定6个键分别作为小时。 分。 秒的调校键。
每按一次键,对应的显示值便加1或减1。分。 秒加到59后变为00;小时加到23后再按键即变为00.
再调校时均不向上一单位进位(例如分加到59后变为00;但小时不产生转变)再选一个键用作时钟的复位键。另外选一个键作为秒表的启动/暂停键,再选一个键作为秒表的复位键。
5) 软件设计必须应用8031片内定时器,采用定时中断结构,不得应用软件延时法。
6) 上机调试程序。
7) 写出设计报告。
(1) 硬件:盘算机一台、zy15mcu12bd型综合单片机实验箱一台、通信电缆一根。
(2) 软件:windows操纵系统、keil c51软件。
电子时钟程序由显示模块、校时模块和时钟运算模块三大部分组成。其中校时模块和时钟运算模块要对时、分、秒的数值进行操作,并且秒算到60时,要自己清零并向分进1;分算到60时,要自己清零并向时进1;时算到24时,要清零。这样,才能循环记时。
秒表程序也由显示模块,启动/暂停复位模块和时钟运算模块组成。其中校时模块和时钟模块要对1/100秒,1/10秒,秒,分的数值进行操作并且1/100秒算到10时,要自己清零并向1/10秒进1;1/10秒算到10时,要自己清零并向秒进1;秒时算到60时,要自己清零并向分进1,秒时算到60时,要自己清零。用按键决定是进入时钟程序还是秒表程序。
图1 系统整体框图。
设计出最小单片机系统电路,简单说明工作原理。电路图。
设计出键盘电路,说明工作原理。电路图。
…….等等,电路图。
把系统整体图放在这里,并说明工作原理。
例如:硬件由8031芯片、74ls373锁存器、8255a串口芯片、74ls240驱动器、显示器数码显示管和4*4键盘组成。由8031片内定时器定时中断,并取一存储单元作为计数器应用,每中断一次,在中断服务程序中使计数器加1、用8031片内定时器t0定时中断服务程序完成秒、分、时的运算即计时功效,t1定时中断服务程序完成1/100秒、1/10秒、秒,分的运算即秒表功效。
8255a负责将内存里的时位、分位和秒位数值或1/100秒、1/10秒、秒,分位数值输出到数码管。同时按键01键、02键、03键是分别对时、分、秒的加1校订;05键、06键、07键时分别对时、分、秒的减1校订;00键是清零键。并且开机时时钟时从000000开端计时的,到235959时在回到000000.
09键实现秒表的启动/暂停,0a0键实现秒表的复位。
此时钟秒表的设计与实现,主要采用了6只显示器数码管,8031内部二进制16位定时器/计数器,可编程并行i/o接口8255芯片和矩阵键盘等,包含显示模块,运算模块和校时模块三大功效模块。
用8255,数码管的显示功效来设计。显示部分硬件用六只显示器为显示管,这些显示器发光二极管的阳极是互相连接在一起的,所以称为共阳极数码管。通过在这8只发光二极管的阴极加-5 v或0 v的电压使不同的二极管发光,形成不同的数字。
该模块重要是将运算模块和校时模块运算出来并存放在内存单元里的十六进制表现的时位、分位和秒位或或1/100秒、1/10秒、秒,分数值转化为十进制,并通过6只数码管显示出来。该模块实现的硬件是实验箱中的显示器单元,采用软件译码,即在程序中设置一个段选码表。cpu直接往显示器输出八段**,省去了硬件译码器。
只要做到每送一次段选码时也送一次位扫描码,并且每送一次位扫描码后,位码中的0右移一位作为下一次的位扫描码,即可实现由左向右使6只显示器依次呈现数字显示。
该模块的重要功效是对时、分、秒或或1/100秒、1/10秒、秒,分的运算,并把运算出的终极成果存到事先已经开辟的内存单元里,以便显示模块即时地显示出来。该模块可以细分为定时模块和运算模块。定时模块负责供给中断信号,由于cpu运算模块中的指令耗费必定的时间,所以中断信号最好通过硬件来实现。
本实验中用8031定时器/计数器,但由于8031供的信号的周期是毫秒级的,因此必须通过软件的方法在运算模块中设置一个统计中断次数的变量,并且这一变量必须事先在内存里开辟存储单元。中断信号是8031工作方法为方法1,产生一个50ms的脉冲信号。运算模块负责时、分、秒或或1/100秒、1/10秒、秒,分的计算,在中断服务程序里,必须对秒、分和时的单元内的数值进行判断,当秒加到60时,分必须加1 、秒清零;当分加到60时,时加1、分清零。
当时加到24时,直接清零,然后转到调用处。秒表也是如此。
该模块重要功效是修正时、分、秒内存单元的数值。每按一次键,对应的显示值便加1。分、 秒加到59后变为00;小时加到23后再按键即变为00.
再调校时均不向上一单位进位(例如分加到59后变为00;但小时不产生转变)。要注意在主程序中对时间进行调校前应封闭中断,以防在调校过程中定时中断服务程序也对时间进行修正而造成混杂。
该模块的功能是实现秒表的启动/暂停,复位。本实验中第一次按下09键进入秒表程序,开始跑时,第二次按下09键暂停秒表,按下0a0键秒表清零并返回到主程序。
在6块显示器数码管上能实现数字时钟的时、分、秒显示和秒表,并能对时、分、秒进行加1校订、减1校订和清零。本实验中01键、02键、03键是分别对时、分、秒的加1校订;05键、06键、07键时分别对时、分、秒的减1校订;00键是清零键。并且开机时时钟时从000000开端计时的,到235959时在回到000000.
主程序流程图如图2所示,加相应的说明语言。
图2 程序流程图。
org 0000h
ljmp start
org 000bh
ljmp intt0
org 001bh
ljmp intt1
主程序。start: mov sp, #60h
mov r0, #
loop1: mov r1, #
loop2: mov r2, #
djnz r2, $
单片机课程设计报告格式
设计报告装订顺序 一 课程设计封面 二 课程设计任务书 三 摘要。四 目录。例 1 绪论1 1.1课题背景1 1.2交会对接技术发展概况3 1.2.1俄罗斯空间交会对接发展概况 5 1.2.2美国空间交会对接发展概况7 2 空间飞行器20 2.1引言20 2.2空间飞行器姿态表示23 结论50主要参...
单片机课程设计报告格式
题目 16 16点阵led电子显示屏的设计。姓名 学号 专业 电子信息科学与技术。指导老师 徐武雄。设计时间 2011年 4 月。说明 姓名处第一人为小组长,学号顺序与姓名对应。上交文档时,此行删除 目录。1.引言 字体4号,黑体,居中 1 1.1.设计意义 字体小4号,黑体 1 1.2.系统功能要...
单片机课程设计报告格式
重庆科创职业学院。课程设计报告。课程名称 51单片机课程设计 智能小车。设计题目。系别。专业。班级。学生姓名。学号。起止日期。指导教师。目录 自动生成 1.引言 字体4号,黑体,居中 1 1.1.设计意义 字体小4号,黑体 11.2.系统功能要求 字体小4号,黑体 12.方案设计 字体4号,黑体,居...