单片机课程设计

发布 2022-10-05 00:17:28 阅读 5411

数字钟。

目录。第一章、综述 1

1.1 at89系列单片机 1

1.2 课题研究背景及其意义 1

1.3 硬件环境 2

1.4 软件环境 2

第二章、课程设计说明 2

2.1课程设计目的 2

2.2课程设计要求 2

2.3课程设计内容 3

第三章、时钟显示的工作原理 3

3.1 单片机最小系统的硬件电路原理图 3

3.2数码管硬件电路原理图 4

3.3 复位电路原理图 5

3.4 开关电路原理图 5

3.5 晶振电路原理图 6

第四章、设计的部分内容说明 6

4.1计时功能的实现与中断服务程序 6

4.2设计中运用的指令说明 7

第五章、心得体会 7

第六章、参考文献 8

附录(源程序): 9

第一章、综述。

1.1 at89系列单片机。

该课程设计中我们选用的芯片是at89c51。at89c51是一种带4k字节闪烁可编程可擦除只读存储器(fperom—falsh programmable and erasable read only memory)的低电压,高性能cmos8位微处理器,俗称单片机。at89c2051是一种带2k字节闪烁可编程可擦除只读存储器的单片机。

单片机的可擦除只读存储器可以反复擦除100次。该器件采用atmel高密度非易失存储器制造技术制造,与工业标准的mcs-51指令集和输出管脚相兼容。由于将多功能8位cpu和闪烁存储器组合在单个芯片中,atmel的at89c51是一种高效微控制器,at89c2051是它的一种精简版本。

at89c单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

at89c51是一个低电压,高性能cmos 8位单片机,片内含4k bytes的可反复擦写的flash只读程序存储器和128 bytes的随机存取数据存储器(ram),器件采用atmel公司的高密度、非易失性存储技术生产,兼容标准mcs-51指令系统,片内置通用8位**处理器和flash存储单元,内置功能强大的微型计算机的at89c51提供了高性价比的解决方案。

at89c51是一个低功耗高性能单片机,40个引脚,32个外部双向输入/输出(i/o)端口,同时内含2个外中断口,2个16位可编程定时计数器,2个全双工串行通信口,at89c51可以按照常规方法进行编程,也可以**编程。其将通用的微处理器和flash存储器结合在一起,特别是可反复擦写的flash存储器可有效地降低开发成本。

1.2 课题研究背景及其意义。

数字钟是采用数字电路实现对。时,分,秒。数字显示的计时装置,广泛用于个人家庭,车站, 码头办公室等公共场所,成为人们日常生活中不可少的必需品,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表, 钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。

诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。因此,研究数字钟及扩大其应用,有着非常现实的意义。

本作品采用atmel公司的at89c51单片机,以汇编语言为程序设计的基础,设计一个用四位数码管显示时、分的时钟。在实物图中,左边靠近电源的绿色发光二极管(长亮)是电源指示灯,表示的是5v稳定电源工作正常;单片机左下角红色发光二极管是秒灯,每闪烁一次表示时间走动一秒钟;按键正上方绿色发光二极管是设置灯,当时间正常走动时此时不亮,当第一次按下设置键(右键)时,此绿灯亮,同时秒时熄灭,且分钟的两位数码管出现闪烁,时间停止走动,进入校时状态,表示此时可以进行分钟的调整,当按一次加一键(左键)可实现分钟的加一功能,分钟以60分为极限,超出60分则返回数值0,从0再重新算起;如果再次按下设置键时,这时秒灯和设置灯仍旧保持熄灭和点亮状态,表示分钟的数码管停止闪烁,反过来表示小时的两位数码管则开始闪烁,此时可进行小时的调整,按加1键可实现小时的加1功能,小时调整以24为上限,同样超出24小时则从新回0;当第三次按下设置键时,数码管停止闪烁,设置灯熄灭,秒灯重新闪烁,时间以设定值计时。

1.3 硬件环境。

一台完整的电脑,包括键盘、鼠标,最小硬盘空间1ghz,386,486,586及兼容机。640k基本内存,1m以上扩充内存,10m以上的显示内存,时钟电路显示板,usb串行口接线。

1.4 软件环境。

采用的是windows操作系统,keilc51系统软件,用汇编语言进行开发。

第二章、课程设计说明。

2.1课程设计目的。

1.利用所学过的知识,初步分析单片计算机控制系统的能力;

2.综合运用本专业方向所学知识,构成以单片机为核心控制系统的能力;

3.单片计算机控制系统实时软件的设计、 编制与调试的能力;

4.单片计算机控制系统中模拟部件(包括电压及功率放大部件) 以及常规传感部件的使用、调试的能力;

5.单片计算机控制系统综合调整及性能测试的能力;

6.实验结果分析、总结及撰写技术报告的能力。

2.2课程设计要求。

1.掌握单片机最小系统的电路原理图;

2.熟知单片机的工作原理;

3.分小组共同编辑、编译软件;

4.调试要求: 1)数码管显示当前的时间值;

2)时间精度为0.5秒,由时、分、秒之间的分隔点闪烁体现;

3)四个按钮,p1.0用作“时”的设定、p1.1用作“分”的设定、p1.2用作“秒”的设定;p1.3用作复位的设定。

5.独立完成课程设计报告(必须有完整的源程序。

2.3课程设计内容。

利用单片机定时器制作数字时钟并可以实现时钟的控制。

1)制作数字时钟系统。

2)可以控制时钟电路,p1.0选择控制时,分,秒,p1.1对时,分,秒进行自加。

3)灯的亮灭显示控制端,p3.7口黄灯亮表示控制时,p3.3口红灯亮表示控制分,红灯、黄灯一起亮表示控制秒。

4)闪烁显示时钟。

5)调试数字时钟。

2)撰写课程设计报告。

第三章、时钟显示的工作原理。

3.1 单片机最小系统的硬件电路原理图。

图1 单片机电路原理图。

发光二极管导通时,产生一个正向的工作电流if,工作电流根据发光二极管的材料、功率等不同,额定电流一般在10~40ma左右,发光二极管导通时的正向压降vf比较大,一般为1.5~3v(普通硅二极管约为0.7v)。

因此在正常使用中,为了保证发光二极管在电源电压v的作用下管子的工作电流不超过额定值,必须给发光二极管串联一只限流电阻r,r的阻值可由下式算出:r=(v-vf)/if。其中v为工作电源电压,vf为发光二极管的正向压降,if为额定工作电流。

从上面原理图1可知,当单片机的p1.7输出低电平(0v)时,有正向工作电流流过发光二极管,发光二极管就亮;相反,当p1.7输出高电平(5v)时,发光二极管没有足够电压差产生工作电流,此时发光二极管不亮。

因此,程序中只需交替让单片机的p1.7输出低电平“0”和高电平“1”就可以让发光二极管闪烁发光。

3.2数码管硬件电路原理图。

图2 数码管及配件电路图。

数码管管脚图说明:

0.5寸单联共阴高亮红色数码管。

数字对应数码管显示控制转换字节(共阴编码)

显示--hgfe,dcba--编码。

0 --0011,1111--0x3f;

1 --0000,0110--0x06;

2 --0101,1011--0x5b;

3 --0100,1111--0x4f;

4 --0110,0110--0x66;

5 --0110,1101--0x6d;

6 --0111,1101--0x7d;

7 --0000,0111--0x07;

8 --0111,1111--0x7f;

9 --0110,1111--0x6f;

共阳为编码取反即可,接线为高低端口对应接法。

备注:第一脚的识别很简单,看管脚的底部,有一个方块型的就是第一脚。或者正面(就是显示那面)朝你,左下角第一个为第一脚。

3.3 复位电路原理图。

图3 复位电路原理图。

当8051的ale及/psen两引脚输出高电平,rst引脚高电平到时,单片机复位。rst/vpd端的高电平,若直接由启动瞬间产生,则为启动复位,若通过按动按钮产生高电平复位称手动复位。图中,上电时,接通电源,电容器c相当于瞬间短路,+5v加到了rst/vpd端,该高电平使8051全机复位。

若运行过程中,需要程序从头执行,只需按动按钮s,则直接把+5v加到了rst/vpd端,从而复位。显然,该电路即可以上电复位,也可以手动复位,是常用复位电路之一。

3.4 开关电路原理图。

图4 开关电路原理图。

图为一开关电路,按键sb1是系统开机键,当其按下,使v15导通,v14基极被拉低,v14导通,系统通电。单片机两个管脚与power_on、power_keep两处相连,当单片机上电后,power_keep上输出高电平,保持v15处于导通状态,整个系统供电正常。power_on管脚用于定时检测sb1按键按下的时间长度,1s、2s、3s对应不同的工作状态,此时sb1作为功能键。

sb2作为系统关机键,按下后v15截止,系统断电整个电路其实也挺简单的了,不过总觉得按键sb2有些浪费,作为一个产品结构空间有限时,不允许这样的设计浪费,所以想把sb2解放出来另作功能键,而用sb1作为开关机键。在目前的电路上,如果直接去掉sb2,用sb1定时按下使单片机。

在power_keep处输出一个低电平,让系统断电。但有人说这样系统关机不可靠,大家分析一下是否真的不可靠?我觉得这个关机电平是低电平,所以单片机断电后管脚上电平不会突变,低电平关机应该是可靠的吧。

3.5晶振电路原理图。

图5 晶振电路原理图。

第四章、设计的部分内容说明。

4.1计时功能的实现与中断服务程序。

时间的运行依靠定时中断子程序对时钟单元数值进位调整来实现的。计数器t0打开后,进入计时,满100毫秒后,重装定时。中断一次,满一秒后秒进位,满60秒后即为1分钟,分钟单元进位,60分到了后,时单元进位,24小时满后,天单元进位。

这样然后根据进率,得到时、分、秒存储单元的值,并经译码后,通过扫描程序送led中显示出来,实现时钟计时功能。

累加是用指令inc来实现的。进入中断服务程序以后,执行push psw和push a将程序状态寄存器psw的内容和累加器a中的数据保存起来,这便是所谓的保护现场? .

以保护现场和恢复现场时存取关键数据的存储区叫做堆栈。在软件的控制之下,堆栈可在片内ram中的任一区间设定,而堆栈的数据存取与一般的ram存取又有区别,对它的操作,要遵循“后进先出”的原则。

单片机课程设计

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

单片机课程设计

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

单片机课程设计

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