单片机课程设计

发布 2022-10-04 21:46:28 阅读 5955

《单片机原理及接口》

课程设计报告。

题目: 时钟系统设计

专业名称: 电子信息工程学

班级092班。

学号910706203

姓名李马元。

2011年 12月。

时钟系统设计。

李马元。电子信息工程学系。

摘要:本课程设计介绍了一款基于at89c51单片机的数字时钟的设计,详细叙述了整个设计的系统的硬件、软件的具体实现。硬件主要由时钟模块和相关的控制模块组成,而软件包括中断模块、调时模块、显示模块组成,采用c语言编写。

本设计实现了时钟的显示和调整功能。对比实际时钟,发现误差**并进行调整,尽可能的减少误差,使设计的时钟走时基本准确。

关键字:数字电子时钟;at89c51单片机。

第一章概述。

1.1 目的与要求。

本实验课程的目的,旨在通过上机实验,使学生加深理解单片机技术的基本方法,帮助和培养学生建立利用原理图和硬件描述语言进行电路设计的基本方法和利用单片机工具软件(keil**软件和protues**软件)设计简单数字电子系统的能力,为以后从事有关数字电子系统方面的设计和研究开发工作打下基础。

1.2 实验前预习。

每次实验前,学生须仔细阅读本实验的相关内容,明确实验目的和实验内容;明确实验原理与步骤;复习与实验内容有关的理论知识;预习仪器设备的使用方法、操作规程及注意事项。

1.3设计环境。

keil简介。

keil c51软件提供丰富的库函数和功能强大的集成开发调试工具,全windows界面。另外重要的一点,只要看一下编译后生成的汇编**,就能体会到keil c51生成的目标**效率非常之高,多数语句生成的汇编**很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。

下面详细介绍keil c51开发系统各部分功能和使用。

c51工具包的整体结构,uvision与ishell分别是c51 for windows和for dos的集成开发环境(ide),可以完成编辑、编译、连接、调试、**等整个开发流程。开发人员可用ide本身或其它编辑器编辑c或汇编源文件。然后分别由c51及c51编译器编译生成目标文件(.

obj)。目标文件可由lib51创建生成库文件,也可以与库文件一起经l51连接定位生成绝对目标文件(.abs)。

abs文件由oh51转换成标准的hex文件,以供调试器dscope51或tscope51使用进行源**级调试,也可由**器使用直接对目标板进行调试,也可以直接写入程序存贮器如eprom中。

protues简介

protues不仅具有其它eda工具软件的**功能,还能**单片机及外围器件。它是目前最好的**单片机及外围器件的工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。

proteus是世界上著名的eda工具(**软件),从原理图布图、**调试到单片机与外围电路协同**,一键切换到pcb设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路**软件、pcb设计软件和虚拟模型**软件三合一的设计平台,在编译方面,它也支持iar、keil和mplab等多种编译。

第二章整体设计方案

设计采用at89c51单片机,主要的设计思想是:整个系统采用单片机为**控制器,软件设计时间信号并通过显示模块来输出信号及相关的控制功能。软件产生的时钟信号由单片机的i/o口实现数码管的显示。

系统设有三个键可以对时间进行调整,。整体框架如图2-1所示。

图2-1 整体框架图。

2.1单片机的选择。

at89c51是一种带4k字节flash存储器(fperom—flash programmable and erasable read only memory)的低电压、高性能cmos 8位微处理器,俗称单片机。at89c2051是一种带2k字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除1000次。

该器件采用atmel高密度非易失存储器制造技术制造,与工业标准的mcs-51指令集和输出管脚相兼容。由于将多功能8位cpu和闪烁存储器组合在单个芯片中,atmel的at89c51是一种高效微控制器,at89c2051是它的一种精简版本。at89c单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

2.2 单片机的基本结构

at89c51的内部结构示意图如图2-2。

图2-2 单片机的内部结构。

下图是at89c51单片机的引脚说明:

图2-3单片机的引脚图

引脚说明:at89c51是标准的40线双列直插式封装(也有其它封装形式)的集成电路,其引脚与mcs-51系列单片机完全兼容。这40条引脚大致可分为电源(vcc、vss、vpp、vpd)、时钟(xtal1、xtal2)、专用控制线(ale、rst、prog、psen、ea)、通用多功能输入输出标准i/o口(p0~p3)等4大部分。

该单片机有6条引脚是保证基本工作所必须连接的:40脚vcc和20脚vss 为整个芯片提供电源;18脚、19脚是时钟振荡引脚,它们的内部连接一个高增益放大器,外部接一晶振选频产生振荡脉冲,并可配接一些电容、电感使振荡更精确。此振荡脉冲,为整个cpu及其定时等有效操作系统提供时钟。

另外两条引脚是ea和rst。31脚ea是程序存储器片内片外选择脚,如果ea接低电位,cpu不从片内rom中取指;ea接高电位,cpu先从片内程序存储器取指。第9脚rst的主要功能是使单片机复位。

当单片机接通以上5脚后,只要在第9脚上加一个宽度不小于24个振荡周期,也就是2个机器周期的正脉冲,它就能使系统复位。

2.3本章小结。

本章主要介绍了系统的整体构思方案,具体有几个模块组成,以及模块的连接方法。然后对本设计采用的核心部分——at89c51单片的基本资料的介绍,选择此单片机的原因。还有对单片机的内部结构及引脚的功能做了基本的介绍。

接下去开始就是系统硬件和软件的设计。

第三章数字时钟的硬件设计

3.1复位电路。

at89c51单片机引脚的九号引脚是复位信号复用脚在振荡器运行时,有两个机器周期(24个振荡周期)以上的高电平出现在此引腿时,将使单片机复位,只要这个脚保持高电平,51芯片便循环复位。复位后p0-p3口均置1引脚表现为高电平,程序计数器和特殊功能寄存器sfr全部清零。当复位脚由高电平变为低电平时,芯片为rom的00h处开始运行程序。

复位是由外部的复位电路来实现的。片内复位电路是复位引脚rst通过一个斯密特触发器与复位电路相连,斯密特触发器用来抑制噪声,它的输出在每个机器周期的s5p2,由复位电路采样一次。复位电路通常采用上电自动复位和按钮复位两种方式,此电路系统采用的是按钮复位电路。

复位操作不会对内部ram有所影响。本设计的复位电路如图3-1.

图3-1 复位电路。

3.2led显示电路。

led显示器是由发光二极管显示字段的显示器件。在单片机应用系统中通常使用的是七段led,这种显示器有共阴极与共阳极两种。

图3-2 数码管引脚说明。

共阴极led显示器的发光二极管阴极共地,当某个发光二极管的阳极为高电平时,该发光二极管则点亮;共阳极led显示器的发光二极管阳极并接。

七段led数码管与单片机连接时,只要将一个8位并行输出口与显示器的发光二极管引脚相连即可。8位并行输出口输出不同的字节数据即可获得不同的数字或字符,通常将控制发光二极管的8位字节数据称为段选码。8位并行输出口输出不同的字节数据即可获得不同的数字或字符,如下表所示。

表一段选码。

多位七段led数码管与单片机连接时将所有led的段选线并联在一起,由一个八位i/o口控制,而位选线分别由相应的i/o口线控制。如:8位led动态显示电路只需要两个八位i/o口。

其中一个控制段选码,另一个控制位选。n位led显示器有n根位选线和8×n根段选线。根据显示方式不同,位选线与段选线的连接方法不同。

段选线控制字符选择,位选线控制显示位的亮、灭。led显示器有静态显示与动态显示两种方式:

led静态显示方式:各位led的位选线连在一起接地或接+5v;每位led的段选线(a-dp)各与一个八位并行口相连。在同一时间里每一位显示的字符可以各不相同。

图3-3 四位静态led显示电路。

led动态显示方式:将所有led的段选线并联在一起,由一个八位i/o口控制,而位选线分别由相应的i/o口线控制。如:

8位led动态显示电路只需要两个八位i/o口。其中一个控制段选码,另一个控制位选。动态显示三部曲。

图3-4 八位led动态显示电路。

由于所有位的段选码皆由一个i/o控制,因此,在每个瞬间,多位led只可能显示相同的字符。要想每位显示不同的字符,必须采用动态扫描显示方式。即在每一瞬间只使某一位显示相应字符。

在此瞬间,位选控制i/o口在该显示位送入选通电平(共阴极送低电平、共阳极送高电平)以保证该位显示相应字符,段选控制i/o口输出相应字符段选码。如此轮流,使每位显示该位应显示字符,并保持延时一段时间,以造成视觉暂留效果。不断循环送出相应的段选码、位选码,就可以获得视觉稳定的显示状态。

由人眼的视觉特性,每一位led在一秒钟内点亮不少于30次,其效果和一直点亮相差不多。

显示电路显示模块需要实时显示当前的时间,即时、分、秒,因此需要6个数码管,另需。

两个数码管来显示横。选择的数码管型号为7seg-mpx8-cc-blue。采用动态显示方式显示时间,硬件连接如下图所示,时的十位和个位分别显示在第一个和第二个数码管,分的十位和个位分别显示在第四个和第五个数码管,秒的十位和个位分别显示在第七个和第八个数码管,其余数码管显示横线。

led显示器的显示控制方式按驱动方式可分成静态显示方式和动态显示方式两种。对于多位led显示器,通常都是采用动态扫描的方法进行显示,其硬件连接方式如下图所示。

图3-5 数码管的硬件连接示意图。

3.3 键盘控制电路。

该设计需要校对和调整时间,所以用三个按键来实现。按 p1_0来调节小时的时间,按 p1_1

来调节分针的时间,按 p1_2来调节秒的时间。下图是按键硬件连接图。

图3-6 按键控制电路的硬件连接图。

当用手按下一个键时,如图 3-6所示,往往按键在闭合位置和断开位置之间跳几下才稳。

定到闭合状态的情况;在释放一个键时,也回会出现类似的情况。这就是抖动。抖动的持续。

时间随键盘材料和操作员而异,不过通常总是不大于10ms。很容易想到,抖动问题不解决就。

会引起对闭合键的识别。用软件方法可以很容易地解决抖动问题,这就是通过延迟程序来等。

待抖动消失,这之后,在读入键盘码。

3.4 本章小结。

本章介绍了数字时钟的硬件模块组成。详细介绍了各个模块的组成及功能,介绍了复位电路模块、显示模块及调时按键模块的设计制作。基本完成了作为电子时钟所需的硬件结构。

第四章数字时钟的软件设计。

4.1 系统软件设计内容

这次的数字电子时钟设计用包括主程序、中断子程序、时钟显示子程序、延时子程序及调时子程序。

在整个系统中,p0口控制段选,p2控制位选,p0_0显示时十位,p0_1显示时个位,p0_3显示分十位,p0_4显示分个位,p0_6秒十位,p0_7显示秒个位。p0_2、p0_5显示分隔符“-”

单片机课程设计

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

单片机课程设计

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

单片机课程设计

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