北京交通大学单片机原理及应用课程设计报告

上传人:枫** 文档编号:487129818 上传时间:2022-10-13 格式:DOC 页数:24 大小:2.77MB
返回 下载 相关 举报
北京交通大学单片机原理及应用课程设计报告_第1页
第1页 / 共24页
北京交通大学单片机原理及应用课程设计报告_第2页
第2页 / 共24页
北京交通大学单片机原理及应用课程设计报告_第3页
第3页 / 共24页
北京交通大学单片机原理及应用课程设计报告_第4页
第4页 / 共24页
北京交通大学单片机原理及应用课程设计报告_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《北京交通大学单片机原理及应用课程设计报告》由会员分享,可在线阅读,更多相关《北京交通大学单片机原理及应用课程设计报告(24页珍藏版)》请在金锄头文库上搜索。

1、单片机原理及应用课程设计报告基于单片机的电子时钟设计 摘要:单片机是集中央处理器CPU、数据存储器RAM、程序存储器ROM、定时器/计数器T0/T1和多种接口于一体的微控制器。它体积小、成本低、功能强,特别适用于控制领域,已广泛应用于工业测控、计算机通信、各类仪器仪表和工业自动化中。传统的数字电子时钟采用了较多的分立元器件,不仅占用了很大的空间而且利用率也比很低,随着系统设计复杂度的不断提高,用传统时钟系统设计方法很难满足设计需求。利用单片机设计的电子时钟则可以克服传统电子时钟的弊端。本设计拟实现的基本功能为时钟显示,加入定时及秒表拓展功能。关键词:单片机;电子时钟;闹钟;秒表; C语言一背景

2、:1.1数字电子钟的背景: 20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。 时间对人们来说总是那么宝贵,工作的忙碌性和繁杂性容易使人忘记当前的时间。忘记了要做的事情,当事情不是很重要的时候,这种遗忘无伤大雅。但是,一旦重要事情,一时的耽误可能酿成大祸。目前,单片机正朝着高性能和多品种方向发展趋势将是进一步向着CMOS化、低功耗、小体积、大容量、高性能、低价格和外围电路内装化等几个方面发展。下面是单片机的主要发展趋势。单片机应用的重要意义

3、还在于,它从根本上改变了传统的控制系统设计思想和设计方法。从前必须由模拟电路或数字电路实现的大部分功能,现在已能用单片机通过软件方法来实现了。这种软件代替硬件的控制技术也称为微控制技术,是传统控制技术的一次革命。单片机模块中最常见的是数字钟,数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更更长的使用寿命,因此得到了广泛的使用。1.2数字电子钟的意义:数字钟是采用数字电路实现对时,分数字显示的计时装置,广泛用于个人家庭,车站, 码头办公室等公共场所,成为人们日常生活中不可少的必需品,由于数字集成电路的发展和石英晶体振荡器的广泛应用

4、,使得数字钟的精度,远远超过老式钟表, 钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。因此,研究数字时钟及扩大其应用有着非常现实的意义。1.3数字电子钟的应用: 数字钟已成为人们日常生活中:必不可少的必需品,广泛用于个人家庭以及车站、码头、剧场、办公室等公共场所,给人们的生活、学习、工作、娱乐带来极大的方便。由于数字集成电路技术的发展和采用了先进的石英技术,使数字钟具有走时准确、性能稳定、携带方

5、便等优点,它还用于计时、自动报时及自动控制等各个领域。 二,时钟设计分析2.1总体设计构思针对要实现的功能,采用SST89E58RDA单片机进行设计,SST89E58RDA 单片机是一款低功耗,高性能CMOS8位单片机,器件采用高密度、非易失性存储技术制造,兼容标准MCS- 51指令系统及80C51引脚结构。SST89E58RDA既能够直接烧写程序也能与与keil连接进行在线实时连调,这是其他同款的单片机无法做到的,这样既减少了程序修改一次烧写一次的麻烦,节约了时间效率较高,也大大延长的单片机的使用寿命,做到了经济合理又能实现预期的功能。在程序方面,采用分块设计的方法,这样既减小了编程难度、使

6、程序易于理解,又能便于添加各项功能。程序可分为按键扫描程序、闹钟的声音程序(闹钟程序)、时间显示程序、秒表显示程序,时间调整程序、闹钟调整程序、延时程序、时间比对程序、中断子程序等。运用这种方法,关键在于各模块的兼容和配合,若各模块不匹配会出现意想不到的错误。首先,在编程之前必须了解硬件结构尤其是各引脚的用法,以及内部寄存器、存储单元的用法以及单片I/O口的定义与用法,否则,编程无从下手,更无法理解DJ51的设计思想,这是前期准备工作。第二部分是硬件部分:依据想要的功能分块设计设计,比如输入需要开关电路,输出需要显示驱动电路和数码管电路等。第三部分是软件部分:先学习理解汇编语言的编程方法再根据

7、设计的硬件电路进行分块的编程调试,最终完成程序设计。第四部分是软件画图部分:设计好电路后进行画图,包括电路图和仿真图的绘制。第五部分是软件仿真部分:软硬件设计好后将软件载入芯片中进行仿真,仿真无法完成时检查软件程序和硬件电路并进行修改直到仿真成功。第六部分是硬件实现部分:连接电路并导入程序检查电路,若与设计的完全一样一般能实现想要的功能。最后进行功能扩展,在已经正确的设计基础上,添加额外的功能!22各部分模块工作原理:2.2.1存储空间:单片机的结构有两种类型,一种是程序存储器和数据存储器分开的形式,即哈佛(Harvard)结构,另一种是采用通用计算机广泛使用的程序存储器与数据存储器合二为一的

8、结构,即普林斯顿(Princeton)结构。(1) 程序存储空间:在逻辑上,内部程序存储程序存储空间可以分为内部程序存储器和外部程序存储器。(2)数据存储空间:1)片内数据存储器共有256B,它们被分为两部分:高128字节和低128字节。低128字节的内部数据存储器是真正的RAM区,可以被用来写入或读出数据。这一部分存储容量不是很大,但有很大的作用。它可以进一步被分为3部分,如图所示:图2.4 内部数据存储器低128字节在内部数据存储器低128字节中,地址从00H1FH的最低32个字节组成4组工作寄存器,每组有8个工作寄存器(R0,R1,R2R7)。在一个具体时刻,CPU只能使用其中的一组工作

9、寄存器。当前正在使用的工作寄存器组由位于高128字节的程序状态字寄存器(PSW)中第3位(RS0)和第4位(RS1)的数据决定。程序状态字寄存器中的数据可以通过编程来改变,这种功能为保护工作寄存器的内容提供了很大的方便。如果用户程序中不需要全部使用4组工作寄存器,那么剩下的工作寄存器所对应的内部数据存储器也可以作为通用数据存储器使用。在工作寄存器区上面,内部数据存储器的地址从20H2FH的16个字节范围内,既可以通过字节寻址的方式进入,也可以通过位寻址的方式进入,位地址范围从00H到7FH。内部数据存储器地址从30H7FH部分仅可以用作通用数据存储器。内部数据存储器的高128字节被称为特殊功能

10、寄存器(SFR)区。特殊功能寄存器被用作CPU和在片外围器件之间的接口,CPU通过向相应的特殊功能存储器写入数据实现控制对应的在片外围器件的工作,从相应的特殊功能存储器读出数据实现读取对应的在片外围器件的工作结果。2)片外数据存储空间可以被映射为数据存储器、扩展的输入/输出接口、模拟/数字转换器和数字/模拟转换器等。这些外围器件统一编址,所有外围器件的地址都占用数据存储空间的地址资源,因此CPU与片外外围器件进行数据交换时可以使用与访问外部数据存储器相同的指令。CPU通过向相应的外部数据存储器地址单元写入数据实现控制对应的片外外围器件的工作,从相应的外部数据存储器地址单元读出数据实现读取对应的

11、片外外围器件的工作结果。2.22数码管:数码管是一种把多个LED显示段集成在一起的显示设备。有两种类型,一种是共阳型,一种是共阴型。共阳型就是把多个LED显示段的阳极接在一起,又称为公共端。共阴型就是把多个LED显示段的阴极接在一起,即为公共商。阳极即为二极管的正极,又称为正极,阴极即为二极管的负极,又称为负极。通常的数码管又分为8段,即8个LED显示段,这是为工程应用方便如设计的,分别为A、B、C、D、E、F、G、DP,其中DP 是小数点位段。而多位数码管,除某一位的公共端会连接在一起,不同位的数码管的相同端也会连接在一起。即,所有的A段都会连在一起,其它的段也是如此,这是实际最常用的用法。

12、数码管显示驱动方法可分为静态显示驱动和动态显示驱动两种:(1)静态显示驱动静态驱动也称直流驱动。静态驱动是指每个数码管的每一个段码都由一个单片机的I/O端口进行驱动,或者使用如BCD码二-十进制译码器译码进行驱动。静态驱动的优点是编程简单,显示亮度高,缺点是占用I/O端口多。(2)动态显示驱动数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划a,b,c,d,e,f,g,dp的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决

13、于单片机对位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的COM端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位数码管的点亮时间为12ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的I/O端口,而且功耗更低。如下图所示数码管内部结构图:2.2.3 :I/0口:(1)P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8T

14、TL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的低八位。 (2) P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作 输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。 (3) P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部

15、程序存储器或16位地址外部数据存 储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。 (4) P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL),。这是由于上拉的缘故。另外P3口还具有第二功能P3口的第二功能如下表所示:口管脚第二功能P3.0RXD(串行输入口)P3.1 TXD(串行输出口)P3.2INT0(外部中断0)P3.3INT1(外部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6WR(外部数据存储器写选通)P3.7RD(外部数据存储器读选通)2.2.4 其他引脚:(1)RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。(2)EA/VPP:当/EA保持低电平时,则在此期间外部程序存储(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时, /EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。(3)VCC:电源。(4)GND:接地。三时钟的硬件设计3

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号