毕业设计(论文)基于单片机的m=999的计数器的设计与实现

上传人:仙*** 文档编号:31898539 上传时间:2021-10-13 格式:DOC 页数:42 大小:2.22MB
返回 下载 相关 举报
毕业设计(论文)基于单片机的m=999的计数器的设计与实现_第1页
第1页 / 共42页
毕业设计(论文)基于单片机的m=999的计数器的设计与实现_第2页
第2页 / 共42页
毕业设计(论文)基于单片机的m=999的计数器的设计与实现_第3页
第3页 / 共42页
点击查看更多>>
资源描述
摘要摘 要在当今社会飞速发展的格局下,越来越多的流水线上的产品和各种商业场合的人员需要进行计数.基于单片机构成的计数器有直观和计数精确等优点,目前已在各种行业中普遍使用。计数器是一个用以实现计数功能的时序部件,它不仅可用来计数,还常用作数字系统的定时、分频和执行数字运算以及其它特定的逻辑功能。单片机体积小,功耗小,价格低,用途灵活,无处不在,属专用计算机。是一种特殊器件,需经过专门学习方能掌握应用,应用中要设计专用的硬件和软件。单片机在计数器领域的应用也十分广泛,计数器种类很多,根据构成计数器中各触发器的时钟脉冲引入方式,可分为同步计数器和异步计数器。根据计数制的不同,可分为二进制计数器和非二进制计数器。根据计数的增减趋势,又分为加法、减法和可逆计数器,还有可预置数和可编程序功能计数器等等。数字式电子计数器有多种计数触发方式,它是由实际使用条件和环境决定的。有采用机械方式的接触式触发的,有采用电子传感器这类非接触式触发的。本文所设计的计数器是接触式触发。关键字: 计数器 单片机 价格廉 功耗小 触发器ABSTRACTABSTRACTABSTRACTIn todays society under the pattern of rapid development, more and more on the lines of products and various business settings need to automatically count. MCU-based products pose a direct and automatic counters have the advantage of accurate count, is already in the Species commonly used in industry.To counter is a function of the temporal component count, it not only can be used to count, also used as digital system, frequency and execution timing digital computing, and other special logic function.Application of microcomputer in the counter is very extensive, counter is a lot of more phyletic, the rootAccording to the composition of each counter flip-flop clock pulse, can be divided into synchronous counterImplement and asynchronous counter. According to the different numeration system, and can be divided into binary counterBinary counter. According to the trend of increase, and divided into addition, subtraction, and reversible Counter. And preset count and programmable functions counter etc. The digital electronic counter trigger a number of counts, it is from the actual conditions of use and environmental decisions. The use of a mechanical contact the trigger, use electronic sensors to trigger the non-contact, infrared sensors is one of them, it is a non-contact electronic sensors. Using infrared sensors produced by electronic counters. This paper is designed to counter the use of infrared sensors produced.Keywords:Keywords: Counting SCM Low power consumption Price is cheap trigger目录i目目 录录第第一一章章 绪绪 论论.11.1 选题背景.11.2 数字单片机的技术发展.11.3 以单片机为核心的嵌入式系统.31.4 本研究课题的发展趋势.31.5 设计研究的要求及主要内容应解决的问题 .4第二章第二章 整体设计方案整体设计方案 .52.1 设计方案选择.52.2 单片机的选择.52.3 其他器件简介.9第三章第三章 计数器的硬件设计计数器的硬件设计 .133.1 最小系统设计.133.2 LED 显示电路 .163.3 键盘控制电路.183.4 电路总图 .193.4 实物图.20第四章第四章 计数器计数器的的软件设计软件设计 .214.1 系统软件设计流程图.214.2 程序设计.22第五章第五章 系统仿真系统仿真 .255.1 PROTEUS软件介绍.255.2 M=999 的计数器的仿真 .255.3 KEIL软件介绍 .265.4 PROTEL软件简介.27结结 论论 .29目录ii参参 考考 文文 献献 .31致致 谢谢 .33绪论1第一章 绪 论本章介绍了本研究课题的背景及意义,阐述了其发展状况。对当前各种计数器的特点及其计数器的未来发展趋势作了概况。另外,简要说明了本文所做的工作。1.1 选题背景随着计数器技术的不断发展与进步,计数器的种类越来越多,应用的范围越来越广,随之而来的竞争也越来越激烈。过硬的技术也成为众多生产厂商竞争的焦点之一。厂商为了在竞争中处于不败之地,从而不断地改进技术,增加产品的种类。现计数器的种类以增加到:电磁计数器、电子计数器、机械计数器(拉动机械计数器、转动机械计数器、按动机械计数器、测长机械计数器) 、液晶计数器等。 计数器的应用范围也遍布印刷、纺织、印染、针织、电缆、电讯、军工、轻工、机械、开关、断路器、矿山、实行多班制的纺织行业的织布机、织带机、制线、制带、造纸、制革、薄膜、高压开关电器产品、试验设备,印刷设备、短路器、医疗、纺织、机械、仓库和码头的货运、行人及车辆过往的数量计数、冶金、食品、国防、包装、配料、石油、化工、发电、机床、仪表、自动化控制等行业。1.2 数字单片机的技术发展1.2.1 内部结构的进步 单片机在内部已集成了越来越多的部件,这些部件包括一般常用的电路,例如:定时器,比较器,A/D 转换器,D /A 转换器,串行通信接口,Watchdog 电路,LCD 控制器等。 有的单片机为了构成控制网络或形成局部网,内部含有局部网络控制模块CAN。例如,Infineon 公司的 C 505C,C515C,C167CR,C167CS-32FM,81C90。目录2因此,这类单片机十分容易构成网络。特别是在控制,系统较为复杂时,构成一个控制网络十分有用。 为了能在变频控制中方便使用单片机,形成最具经济效益的嵌入式控制系统。有的单片机内部设置了专门用于变频控制的脉宽调制控制电路,这些单片机有Fujitsu 公司的 MB89850 系列、MB89860 系列;Motorola 公司的MC68HC08MR16、MR24 等。在这些单片机中,脉宽调制电路有 6 个通道输出,可产生三相脉宽调制交流电压,并内部含死区控制等功能。 特别引人注目的是:现在有的单片机已采用所谓的三核(TrCore)结构。这是一种建立在系统级芯片(System on a chip)概念上的结构。这种单片机由三个核组成:一个是微控制器和 DSP 核,一个是数据和程序存储器核,最后一个是外围专用集成电路(ASIC)。这种单片机的最大特点在于把 DSP 和微控制器同时做在一个片上。把它和传统单片机结合集成大大提高了单片机的功能。这是目前单片机最大的进步之一。这种单片机最典型的有 Infineon 公司的TC10GP;Hitachi 公司的 SH7410,SH7612 等。1.2.2 功耗、封装及电源电压的进步现在新的单片机的功耗越来越小,特别是很多单片机都设置了多种工作方式,这些工作方式包括等待,暂停,睡眠,空闲,节电等工作方式。现在单片机的封装水平已大大提高,随着贴片工艺的出现,单片机也大量采用了各种合符贴片工艺的封装方式出现,以大量减少体积。扩大电源电压范围以及在较低电压下仍然能工作是今天单片机发展的目标之一。目前,一般单片机都可以在 3.35.5V 的条件下工作。而一些厂家,则生产出可以在 2.26V 的条件下工作的单片机。1.2.3 工艺上的进步现在的单片机基本上采用 CMOS 技术,但已经大多数采用了 0.6?m 以上的光刻工艺,有个别的公司,如 Motorola 公司则已采用 0.35?m 甚至是 0.25?m 技术。这些技术的进步大大地提高了单片机的内部密度和可靠性。 第一章 绪论31.3 以单片机为核心的嵌入式系统 单片机的另外一个名称就是嵌入式微控制器。目前,把单片机嵌入式系统和Internet 连接已是一种趋势。要实现嵌入式设备和 Internet 连接,就需要把传统的 Internet 理论和嵌入式设备的实践都颠倒过来。为了使复杂的或简单的嵌入式设备,例如单片机控制的机床、单片机控制的门锁,能切实可行地和Internet 连接,就要求专门为嵌入式微控制器设备设计网络服务器,使嵌入式设备可以和 Internet 相连,并通过标准网络浏览器进行过程控制。 EmWare 公司提出嵌入式系统入网的方案-EMIT 技术。这个技术包括三个主要部分:即 emMicro, emGateway 和网络浏览器。 目前,单片机应用中提出了一个新的问题:这就是如何使 8 位、16 位单片机控制的产品,也即嵌入式产品或设备能实现和互联网互连? TASKING 公司目前正在为解决这个问题提供了途径。该公司已把 emWare 的EMIT 软件包和有关的软件配套集成,形成一个集成开发环境,向用户提供开发方便。嵌入互联网联盟 ETI(embed the Internet Consortium)正在紧密合作,共同开发嵌入式 Internet 的解决方案 。1.4 本研究课题的发展趋势自单片机出现至今,单片机技术已走过了近 20 年的发展路程。纵观 20 年来单片机发展历程可以看出,单片机技术的发展以微处理器(MPU)技术及超大规模集成电路技术的发 展为先导,以广泛的应用领域拉动,表现出较微处理器更具个性的发展趋势。单片机的应用在后 PC 时代得到了前所未有的发展,但对处理器的综合性能要求也越来越高。综观单片机的发展,以应用需求为目标,市场越来越细化,充分突出以“单片”解决问题,而不像多年前以 MCS51/96 等处理器为中心,外扩各种接口构成各种应用系统。单片机系统作为嵌入式系统的一部分,主要集中在中、低端应用领域(嵌入式高端应用主要由 DSP、ARM、MIPS 等高性能处理器构成),在这些应用中,目前也出现了一些新的需求,主要体现在以下几个方面:M=999 的计数器的设计与实现4(1)以电池供电的应用越来越多,而且由于产品体积的限制,很多是用钮扣电池供电,要求系统功耗尽可能低,如手持式仪表、水表、玩具等。(2)随着应用的复杂,对处理器的功能和性能要求不断提高。既要外设丰富、功能灵活,又要有一定的运算能力,能做一些实时算法,而不仅仅做一些简单的控制。(3)产品更新速度快,开发时间短,希望开发工具简单、廉价、功能完善。特别是仿真工具要有延续性,能适应多种 MCU,以免重复投资,增加开发费用。(4)产品性能稳定,可靠性高,既能加密保护,又能方便升级。1.5 设计研究的要求及主要内容应解决的问题1.4.1 要求1.整个系统有较强的抗干扰能力.2.计数范围:000999.3.将计数值准确显示出来.1.4.2 应解决问题基于单片机构成的产品自动计数器研究的主要内容包括:如果构成检测电路、MCS-51 单片机用何种方式对外部计数脉冲进行计数显示控制、LED 显示驱动模块的选择、MCS-51 单片机的扩展。在这个设计中主要需要解决的问题便是如何提高MCS-51 单片机的抗干扰能力以及稳定性。M=999 的计数器的设计与实现5第二章 整体设计方案2.1 设计方案选择方案一采用多种数字逻辑电路来实现逻辑控制、主门、门控、计数单元的设计要求,这样设计的电路整体比较复杂,而且不宜完成发挥部分的功能要求。所以方案一不采用。方案二可以采用 FPGA 来实现逻辑控制、主门、门控、计数单元的设计要求,并且设计方便,但由于对 FPGA 的技术原理掌握不够熟练,所以放弃方案二。方案三系统采用 8051 为核心的单片机控制系统,实现原理图中的逻辑控制、主门、门控、计数的设计要求单片机计数器的方式控制寄存器 TMOD 中的 GATE 位=1 时,可以很方便的进行INT0 引脚的外部输入信号的时间间隔测量。且单片机的控制电路很容易实现扩展,比如语音模块、测温 I2C 模块、时钟模块、A/D 模块等。故采用方案三。2.2 单片机的选择2.2.1 MCS-51 系列单片机简介 8051 是 MCS-51 系列单片机的典型产品,以这一代表性的机型进行系统的讲解。 8051 单片机包含中央处理器、程序存储器(ROM)、数据存储器(RAM)、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线,现在我们分别加以说明:中央处理器:中央处理器(CPU)是整个单片机的核心部件,是 8 位数据宽度的处理器,能M=999 的计数器的设计与实现6处理 8 位二进制数据或代码,CPU 负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。数据存储器(RAM):8051 内部有 128 个 8 位用户数据存储单元和 128 个专用寄存器单元,它们是统一编址的,专用寄存器只能用于存放控制指令数据,用户只能访问,而不能用于存放用户数据,所以,用户能使用的 RAM 只有 128 个,可存放读写的数据,运算的中间结果或用户定义的字型表。图 2-1 8051 内部结构图程序存储器(ROM):8051 共有 4096 个 8 位掩膜 ROM,用于存放用户程序,原始数据或表格。定时/计数器(ROM):8051 有两个 16 位的可编程定时/计数器,以实现定时或计数产生中断用于控制程序转向。并行输入输出(I/O)口:8051 共有 4 组 8 位 I/O 口(P0、 P1、P2 或 P3),用于对外部数据的传输。全双工串行口:8051 内置一个全双工串行通信口,用于与其它设备间的串行数据传送,该串行口既可以用作异步通信收发器,也可以当同步移位器使用。中断系统:8051 具备较完善的中断功能,有两个外中断、两个定时/计数器中断和一个串行中断,可满足不同的控制要求,并具有 2 级的优先级别选择。M=999 的计数器的设计与实现7时钟电路:8051 内置最高频率达 12MHz 的时钟电路,用于产生整个单片机运行的脉冲时序,但 8051 单片机需外置振荡电容。单片机的结构有两种类型,一种是程序存储器和数据存储器分开的形式,即哈佛(Harvard)结构,另一种是采用通用计算机广泛使用的程序存储器与数据存储器合二为一的结构,即普林斯顿(Princeton)结构。INTEL 的 MCS-51 系列单片机采用的是哈佛结构的形式,而后续产品 16 位的 MCS-96 系列单片机则采用普林斯顿结构。下图是 MCS-51 系列单片机的内部结构示意图 2-2。图 2-2 MCS-51 结构图MCS-51 的引脚说明:MCS-51 系列单片机中的 8031、8051 及 8751 均采用 40Pin 封装的双列直接DIP 结构,右图是它们的引脚配置,40 个引脚中,正电源和地线两根,外置石英振荡器的时钟线两根,4 组 8 位共 32 个 I/O 口,中断口线与 P3 口线复用。现在我们对这些引脚的功能加以说明:MCS-51 的引脚说明:MCS-51 系列单片机中的 8031、8051 及 8751 均采用 40Pin 封装的双列直接DIP 结构,右图是它们的引脚配置,40 个引脚中,正电源和地线两根,外置石英M=999 的计数器的设计与实现8振荡器的时钟线两根,4 组 8 位共 32 个 I/O 口,中断口线与 P3 口线复用。现在我们对这些引脚的功能加以说明:如图 2-3图 2-3 双列直插式封装引脚图Pin9:RESET/Vpd复位信号复用脚,当 8051 通电,时钟电路开始工作,在RESET 引脚上出现 24 个时钟周期以上的高电平,系统即初始复位。初始化后,程序计数器 PC 指向 0000H,P0-P3 输出口全部为高电平,堆栈指针写入 07H,其它专用寄存器被清“0” 。RESET 由高电平下降为低电平后,系统即从 0000H 地址开始执行程序。然而,初始复位不改变 RAM(包括工作寄存器 R0-R7)的状态,8051 的初始态。8051 的复位方式可以是自动复位,也可以是手动复位。此外,RESET/Vpd还是一复用脚,Vcc掉电其间,此脚可接上备用电源,以保证单片机内部 RAM 的数据不丢失。见下图 2-4 为两种复位方式和两种时钟方式: Pin30:ALE/当访问外部程序器时,ALE(地址锁存)的输出用于锁存地址的低位字节。而访问内部程序存储器时,ALE 端将有一个 1/6 时钟频率的正脉冲 M=999 的计数器的设计与实现9信号,这个信号可以用于识别单片机是否工作,也可以当作一个时钟向外输出。更有一个特点,当访问外部程序存储器,ALE 会跳过一个脉冲。如果单片机是 EPROM,在编程其间,将用于输入编程脉冲。Pin29:当访问外部程序存储器时,此脚输出负脉冲选通信号,PC 的 16位地址数据将出现在 P0 和 P2 口上,外部程序存储器则把指令数据放到 P0 口上,由 CPU 读入并执行。Pin31:EA/Vpp程序存储器的内外部选通线,8051 和 8751 单片机,内置有4kB 的程序存储器,当 EA 为高电平并且程序地址小于 4kB 时,读取内部程序存储器指令数据,而超过 4kB 地址则读取外部指令数据。如 EA 为低电平,则不管地址大小,一律读取外部程序存储器指令。显然,对内部无程序存储器的 8031,EA端必须接地。在编程时,EA/Vpp脚还需加上 21V 的编程电压。2.3 其他器件简介2.3.1 数码管显示在本任务中用 3 位数码管显示当前数值的百,十,个,由于数码管个数多,如采用静态显示方式,则占用单片机的 I/O 口线太多,如果用定时器/计数器的串行移位寄存器工作方式及外接串入并出移位寄存器 74LS164 的方式,则电路复杂。所以,在数码管个数较多时,常采用动态显示方式。3 位数码管的相同段并联在一起,由一个 6 位 I/O(P1 口)输出字形码控制显示某一字形,每个数码管的公共端由另外一个 I/O 口(P0 口)输出的字位码控制,即数码管显示的字形是由单片机 I/O 口输出的字形码确定,而哪个数码管点亮是由单片机 I/O 口输出的字位码确定的。3 个数码管分时轮流循环点亮,在同一时刻只有 1 个数码管点亮,但由于数码管具有余辉特性及人眼具有视觉暂留特性,所以适当地选取循环扫描频率,看上去所有数码管是同时点亮的,察觉不出闪烁现象。动态显示方式所接数码管不能太多,否则会因每个数码管所分配的实际导通时间太少,使得数码管的亮度不足。在本任务中,为了简便,字形码和字位码都没由加驱动电路,在实际应用中应加驱动电路。数码管有共阴极和共阳极两种,对于共阳数码管,字形驱动输出 0 有效,字位驱动输出 1 有效;而对于共M=999 的计数器的设计与实现10阴数码管则相反,即:字形驱动输出 1 有效,字位驱动输出 0 有效。2.3.2 PCD 简介PCB(PrintedCircuitBoard),中文名称为印制电路板,又称印刷电路板、印刷线路板,简单的说就是置有集成电路和其他电子组件的薄板,是重要的电子部件,是电子元器件的支撑体,是电子元器件电气连接的提供者,是低能耗、低污染的,由于它是采用电子印刷术制作的,故被称为“印刷”电路板。印制电路板的设计是以电路原理图为根据,实现电路设计者所需要的功能。印刷电路板的设计主要指版图设计,需要考虑外部连接的布局、内部电子元件的优化布局、金属连线和通孔的优化布局、电磁保护、热耗散等各种因素。优秀的版图设计可以节约生产成本,达到良好的电路性能和散热性能。简单的版图设计可以用手工实现,复杂的版图设计需要借助计算机辅助设计(CAD)实现。根据电路层数分类:分为单面板、双面板和多层板。常见的多层板一般为 4层板或 6 层板,复杂的多层板可达十几层。PCB 板有以下三种主要的划分类型:1.单面板单面板(Single-Sided Boards) 在最基本的 PCB 上,零件集中在其中一面,导线则集中在另一面上。因为导线只出现在其中一面,所以这种 PCB 叫作单面板(Single-sided)。因为单面板在设计线路上有许多严格的限制(因为只有一面,布线间不能交叉而必须绕独自的路径),所以只有早期的电路才使用这类的板子。2.双面板双面板(Double-Sided Boards) 这种电路板的两面都有布线,不过要用上两面的导线,必须要在两面间有适当的电路连接才行。这种电路间的“桥梁”叫做导孔(via)。导孔是在 PCB 上,充满或涂上金属的小洞,它可以与两面的导线相连接。因为双面板的面积比单面板大了一倍,而且因为布线可以互相交错(可以绕到另一面),它更适合用在比单面板更复杂的电路上。3.多层板多层板(Multi-Layer Boards) 为了增加可以布线的面积,多层板用上了更多单或双面的布线板。用一块双面作内层、二块单面作外层或二块双面作内层、M=999 的计数器的设计与实现11二块单面作外层的印刷线路板,通过定位系统及绝缘粘结材料交替在一起且导电图形按设计要求进行互连的印刷线路板就成为四层、六层印刷电路板了,也称为多层印刷线路板。板子的层数就代表了有几层独立的布线层,通常层数都是偶数,并且包含最外侧的两层。大部分的主机板都是 4 到 8 层的结构,不过技术上理论可以做到近 100 层的 PCB 板。不过因为这类计算机已经可以用许多普通计算机的集群代替,超多层板已经渐渐不被使用了。因为 PCB 中的各层都紧密的结合,一般不太容易看出实际数目,不过如果仔细观察主机板,还是可以看出来。M=999 的计数器的设计与实现12M=999 的计数器的设计与实现13第三章 计数器的硬件设计3.1 最小系统设计图 3-1 单片机最小系统的结构图单片机的最小系统是由电源、复位、晶振、/EA=1 组成,下面介绍一下每一个组成部分。1.电源引脚Vcc40电源端GND20接地端M=999 的计数器的设计与实现14工作电压为 5V,另有 AT89LV51 工作电压则是 2.7-6V,引脚功能一样。M=999 的计数器的设计与实现152.外接晶体引脚图 3-2 晶振连接的内部、外部方式图XTAL119XTAL218XTAL1 是片内振荡器的反相放大器输入端,XTAL2 则是输出端,使用外部振荡器时,外部振荡信号应直接加到 XTAL1,而 XTAL2 悬空。内部方式时,时钟发生器对振荡脉冲二分频,如晶振为 12MHz,时钟频率就为 6MHz。晶振的频率可以在 1MHz-24MHz 内选择。电容取 30PF 左右。系统的时钟电路设计是采用的内部方式,即利用芯片内部的振荡电路。AT89 单片机内部有一个用于构成振荡器的高增益反相放大器。引脚 XTAL1 和 XTAL2 分别是此放大器的输入端和输出端。这个放大器与作为反馈元件的片外晶体谐振器一起构成一个自激振荡器。外接晶体谐振器以及电容 C1 和 C2 构成并联谐振电路,接在放大器的反馈回路中。对外接电容的值虽然没有严格的要求,但电容的大小会影响震荡器频率的高低、震荡器的稳定性、起振的快速性和温度的稳定性。因此,此系统电路的晶体振荡器的值为12MHz,电容应尽可能的选择陶瓷电容,电容值约为 22F。在焊接刷电路板时,晶体振荡器和电容应尽可能安装得与单片机芯片靠近,以减少寄生电容,更好地保证震荡器稳定和可靠地工作。3.复位RST9在振荡器运行时,有两个机器周期(24 个振荡周期)以上的高电平出现在此引腿时,将使单片机复位,只要这个脚保持高电平,51 芯片便循环复位。复位后P0P3 口均置 1 引脚表现为高电平,程序计数器和特殊功能寄存器 SFR 全部清零。当复位脚由高电平变为低电平时,芯片为 ROM 的 00H 处开始运行程序。复位是由M=999 的计数器的设计与实现16外部的复位电路来实现的。片内复位电路是复位引脚 RST 通过一个斯密特触发器与复位电路相连,斯密特触发器用来抑制噪声,它的输出在每个机器周期的S5P2,由复位电路采样一次。复位电路通常采用上电自动复位和按钮复位两种方式,此电路系统采用的是上电与按钮复位电路。当时钟频率选用 6MHz 时,C 取22F,Rs 约为 200,Rk 约为 1K。复位操作不会对内部 RAM 有所影响。常用的复位电路如下图所示:图 3-3 常用复位电路图4.输入输出引脚(1) P0 端口P0.0-P0.7 P0 是一个 8 位漏极开路型双向 I/O 端口,端口置1(对端口写 1)时作高阻抗输入端。作为输出口时能驱动 8 个 TTL。对内部 Flash 程序存储器编程时,接收指令字节;校验程序时输出指令字节,要求外接上拉电阻。在访问外部程序和外部数据存储器时,P0 口是分时转换的地址(低 8 位)/数据总线,访问期间内部的上拉电阻起作用。(2) P1 端口P1.0P1.7 P1 是一个带有内部上拉电阻的 8 位双向 I/0 端口。输出时可驱动 4 个 TTL。端口置 1 时,内部上拉电阻将端口拉到高电平,作输入用。对内部 Flash 程序存储器编程时,接收低 8 位地址信息。M=999 的计数器的设计与实现17(3) P2 端口P2.0P2.7 P2 是一个带有内部上拉电阻的 8 位双向 I/0 端口。输出时可驱动 4 个 TTL。端口置 1 时,内部上拉电阻将端口拉到高电平,作输入用。对内部 Flash 程序存储器编程时,接收高 8 位地址和控制信息。在访问外部程序和 16 位外部数据存储器时,P2 口送出高 8 位地址。而在访问 8 位地址的外部数据存储器时其引脚上的内容在此期间不会改变。(4) P3 端口P3.0P3.7 P2 是一个带有内部上拉电阻的 8 位双向 I/0 端口。输出时可驱动 4 个 TTL。端口置 1 时,内部上拉电阻将端口拉到高电平,作输入用。3.2 LED 显示电路显示器普遍地用于直观地显示数字系统的运行状态和工作数据,按照材料及产品工艺,单片机应用系统中常用的显示器有: 发光二极管 LED 显示器、液晶LCD 显示器、CRT 显示器等。LED 显示器是现在最常用的显示器之一, 发光二极管(LED)由特殊的半导体材料砷化镓、磷砷化镓等制成,可以单独使用,也可以组装成分段式或点阵式 LED 显示器件(半导体显示器) 。分段式显示器(LED 数码管)由 7 条线段围成 8 字型,每一段包含一个发光二极管。外加正向电压时二极管导通,发出清晰的光。只要按规律控制各发光段亮、灭,就可以显示各种字形或符号。LED 数码管有共阳、共阴之分。图是共阳式、共阴式 LED 数码管的原理图和符号.M=999 的计数器的设计与实现18图 3-4 共阳式、共阴式 LED 数码管的原理图和数码管的符号图显示电路显示模块需要实时显示当前的时间,即时、分、秒,因此需要 6 个数码管,另需两个数码管来显示横。采用动态显示方式显示时间,硬件连接如下图所示,时的十位和个位分别显示在第一个和第二个数码管,分的十位和个位分别显示在第四个和第五个数码管,秒的十位和个位分别显示在第七个和第八个数码管,其余数码管显示横线。LED 显示器的显示控制方式按驱动方式可分成静态显示方式和动态显示方式两种。对于多位 LED 显示器,通常都是采用动态扫描的方法进行显示,其硬件连接方式如下图所示。图 3-5 数码管的硬件连接示意图数码管使用条件:a、使用电压:段:根据发光颜色决定; 小数点:根据发光颜色决定c、使用电流:静态:总电流 80mA(每段 10mA);动态:平均电流 4-5mA 峰值电流 100mA数码管使用注意事项说明:()数码管表面不要用手触摸,不要用手去弄引角;()焊接温度:度;焊接时间:1s()表面有保护膜的产品,可以在使用前撕下来。第三章 计数器的硬件设计193.3 键盘控制电路该设计需要对 60 秒计时、24 秒计时、5 秒计时、3 秒计时,正反计时进行控制,所以用六个按键来实现。按 s1 控制 60 秒计时;s2 控制 24 秒计时;s3 控制5 秒计时;s4 控制 3 秒计时;s5 正数计时;s6 反数计时。下图为按键仿真连接图。图 3-6 按键的硬件连接图当用手按下一个键时,往往按键在闭合位置和断开位置之间跳几下才稳定到闭合状态的情况;在释放一个键时,也回会出现类似的情况。这就是抖动。抖动的持续时间随键盘材料和操作员而异,不过通常总是不大于 10ms。很容易想到,抖动问题不解决就会引起对闭合键的识别。用软件方法可以很容易地解决抖动问题,这就是通过延迟 10ms 来等待抖动消失,这之后,再读入键盘码。M=999 的计数器的设计与实现20图 3-7 按键抖动信号功能第三章 计数器的硬件设计213.4 电路总图图 3-8 电路总图M=999 的计数器的设计与实现223.4 实物图图 3-9 实物图第四章 计数器的软件设计23第四章 计数器的软件设计系统的软件设计也是工具系统功能的设计。单片机软件的设计主要包括执行软件(完成各种实质性功能)的设计和监控软件的设计。单片机的软件设计通常要考虑以下几个方面的问题:(1)根据软件功能要求,将系统软件划分为若干个相对独立的部分,设计出合理的总体结构,使软件开发清晰、简洁和流程合理;(2)培养良好的编程风格,如考虑结构化程序设计、实行模块化、子程序化。既便于调试、链接,又便于移植和修改;(3)建立正确的数学模型,通过仿真提高系统的性能,并选取合适的参数;(4)绘制程序流程图;(5)合理分配系统资源;(6)为程序加入注释,提高可读性,实施软件工程;(7)注意软件的抗干扰设计,提高系统的可靠性。4.1 系统软件设计流程图主程序先是开始,然后赋初值,本设计采用的是动态显示,所以在赋玩初值后显示程序不断被调用。开始初始化计数显示图 4-1 主程序流程图M=999 的计数器的设计与实现244.2 程序设计#include code unsigned char tab=0 x28,0 xEB,0 x32,0 xA2,0 xE1,0 xA4,0 x24,0 xEA,0 x20,0 xA0,0 x60,0 x25,0 x3C,0 x23,0 x34,0 x74; /共阳数码管 0-9 unsigned char Dis_baiwei;/定义十位unsigned char Dis_shiwei; /定义个位unsigned char Dis_gewei;void delay(unsigned int cnt) while(-cnt);main()TMOD |=0 x01;/定时器设置 10ms in 12M crystalTH0=0 xd8;TL0=0 xf0;IE= 0 x82; /打开中断TR0=1;while(1) P0=Dis_baiwei;/显示十位 P2=0 x7f; delay(300);/短暂延时 P0=Dis_shiwei; /显示个位 P2=0 xbf; delay(300); P0=Dis_gewei; P2=0 xdf; delay(300); /*/第四章 计数器的软件设计25/* 定时中断 */*/void tim(void) interrupt 1 using 1static unsigned int second,count;TH0=0 xd8;/重新赋值TL0=0 xf0;count+;if (count=100) count=0; second+;/秒加 1if(second=1000) second=0;Dis_baiwei=tabsecond/100;/百位显示值处理 Dis_shiwei=tab(second%100)/10; /十位显示处理Dis_gewei=tab(second%100)%10;/各位 M=999 的计数器的设计与实现26M=999 的计数器的设计与实现27第五章 系统仿真5.1 Proteus 软件介绍Proteus 软件是 Labcenter Electronics 公司的一款电路设计与仿真软件,它包括 ISIS、ARES 等软件模块,ARES 模块主要用来完成 PCB 的设计,而 ISIS 模块用来完成电路原理图的布图与仿真。Proteus 的软件仿真基于 VSM 技术,它与M=999 的计数器的设计与实现28其他软件最大的不同也是最大的优势就在于它能仿真大量的单片机芯片,比如MCS-51 系列、PIC 系列等等,以及单片机外围电路,比如键盘、LED、LCD 等等。通过 Proteus 软件的使用我们能够轻易地获得一个功能齐全、实用方便的单片机实验室。5.2 M=999 的计数器的仿真用 PROTUES 软件,画出 M=999 的计数器仿真图,得到的图如下所示。图 5-1 仿真图5.3 keil 软件介绍Keil 软件是目前最流行开发 MCS-51 系列单片机的软件,这从近年来各仿真机厂商纷纷宣布全面支持 Keil 即可看出。Keil 提供了包括 C 编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个M=999 的计数器的设计与实现29集成开发环境(uVision)将这些部分组合在一起。运行 Keil 软件需要 Pentium或以上的 CPU,16MB 或更多 RAM、20M 以上空闲的硬盘空间、WIN98、NT、WIN2000、WINXP 等操作系统。掌握这一软件的使用对于使用 51 系列单片机的爱好者来说是十分必要的,如果你使用 C 语言编程,那么 Keil 几乎就是你的不二之选(目前在国内你只能买到该软件、而你买的仿真机也很可能只支持该软件),即使不使用 C 语言而仅用汇编语言编程,其方便易用的集成环境、强大的软件仿真调试工具也会令你事半功倍。1. 系统概述目前流行的 51 系列单片机开发软件是德国 Keil 公司推出的 Keil C51 软件,Keil C51 软件提供丰富的库函数和功能强大的集成开发调试工具,全 Windows 界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到 Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。与汇编相比,C 语言在功能上、结构性、可读性、可维护性上有明显的优势。下面详细介绍 Keil C51 开发系统各部分功能和使用。 2. 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 中。Keil C51 生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。M=999 的计数器的设计与实现305.4 protel 软件简介PROTEL 是 PORTEL 公司在 80 年代末推出的 EDA 软件,在电子行业的 CAD 软件中,它当之无愧地排在众多 EDA 软件的前面,是电子设计者的首选软件,它较早就在国内开始使用,在国内的普及率也最高,有些高校的电子专业还专门开设了课程来学习它,几乎所有的电子公司都要用到它。Protel 软件列举 Protel99 SE 共分 5 个模块,分别是原理图设计、PCB 设计(包含信号完整性分析)、自动布线器、原理图混合信号仿真、PLD 设计。 以下介绍一些Protel99SE 的部分最新功能: 可生成 30 多种格式的电气连接网络表; 强大的全局编辑功能; 在原理图中选择一级器件,PCB 中同样的器件也将被选中; 同时运行原理图和 PCB,在打开的原理图和 PCB 图间允许双向交叉查找元器件、引脚、网络 既可以进行正向注释元器件标号(由原理图到 PCB),也可以进行反向注释(由 PCB 到原理图),以保持电气原理图和 PCB 在设计上的一性; 满足国际化设计要求(包括国标标题栏输出,GB4728 国标库),方便易用的数模混合仿真(兼容 SPICE 3f5); 支持用 CUPL 语言和原理图设计 PLD,生成标准的 JED 下载文件;提供大量的工业化标准电路板做为设计模版; 可以输入和输出 DXF、DWG 格式文件,实现和 AutoCAD 等软件的数据换; 独特的 3D 显示可以在制板之前看到装配事物的效果; 经过充分验证的传输线特性和仿真精确计算的算法,信号完整性分析直接从PCB 启动; 反射和串扰仿真的波形显示结果与便利的测量工具相结合;Altium Designer 6.0,它是完全一体化电子产品开发系统的一个新版本,也是业界第一款也是唯一一种完整的板级设计解决方案。Altium Designer 是业界首例将设计流程、集成化 PCB 设计、可编程器件(如 FPGA)设计和基于处理器设计的嵌入式软件开发功能整合在一起的产品,一种同时进行 PCB 和 FPGA 设计以及嵌入式设计的解决方案,具有将设计方案从概念转变为最终成品所需的全M=999 的计数器的设计与实现31部功能。除了全面继承包括 99SE,Protel2004 在内的先前一系列版本的功能和优点以外,还增加了许多改进和很多高端功能。Altium Designer 6.0 拓宽了板级设计的传统界限,全面集成了 FPGA 设计功能和 SOPC 设计实现功能,从而允许工程师能将系统设计中的 FPGA 与 PCB 设计以及嵌入式设计集成在一起。在 PCB 部分,除了 Protel2004 中的多通道复制;实时的、阻抗控制布线功能;SitusTM 自动布线器等新功能以外,Altium Designer 6.0 还着重在:差分对布线,FPGA 器件差分对管脚的动态分配, PCB 和 FPGA 之间的全面集成,从而实现了自动引脚优化和非凡的布线效果。还有 PCB 文件切片,PCB 多个器件集体操作,在 PCB 文件中支持多国语言(中文、英文、德文、法文、日文),任意字体和大小的汉字字符输入,光标跟随在线信息显示功能,光标点可选器件列表,复杂 BGA 器件的多层自动扇出,提供了对高密度封装(如 BGA)的交互布线功能, 总线布线功能,器件精确移动,快速铺铜等功能。 交互式编辑、出错查询、布线和可视化功能,从而能更快地实现电路板布局,支持高速电路设计,具有成熟的布线后信号完整性分析工具. Altium Designer 6.0 对差分信号提供系统范围内的支持,可对高速内连的差分信号对进行充分定义、管理和交互式布线。支持包括对在 FPGA 项目内部定义的 LVDS 信号的物理设计进行自动映射结 论这次毕业设计让我受益匪浅。通过这次设计我对自己在大学三年时间里所学M=999 的计数器的设计与实现32的知识得到了全面的回顾,并充分发挥对所学知识的理解和对毕业设计的思考及书面表达能力,最终完成了这份论文。撰写论文的过程也是专业知识的学习过程,它使我运用已有的专业基础知识,对其进行设计,分析和解决一个理论问题或实际问题,把知识转化为能力的实际训练。培养了我运用所学知识解决实际问题的能力。通过这次毕业设计我发现,只有理论水平提高了,才能够将课本知识与实践相整合,理论知识服务于教学实践,以增强自己的动手能力。这个设计十分有意义 我获得很深刻的经验。通过这次毕业设计,我们知道了理论和实际的距离,也知道了理论和实际想结合的重要性, ,也从中得知了很多书本上无法得知的知识。我们的学习不但要立足于书本,以解决理论和实际教学中的实际问题为目的,还要以实践相结合,理论问题即实践课题,解决问题即课程研究,学生自己就是一个专家,通过自己的手来解决问题比用脑子解决问题更加深刻。学习就应该采取理论与实践结合的方式,理论的问题,也就是实践性的课题。这种做法既有助于完成理论知识的巩固,又有助于带动实践,解决实际问题,加强我们的动手能力和解决问题的能力。M=999 的计数器的设计与实现33M=999 的计数器的设计与实现34参 考 文 献 1 单片机系统设计及工程应用 雷思孝等 西安电子科技大学出版社 2 电路基础 吴大正 西安电子科技大学出版社 3 c+程序与设计语言 揣锦华等 西安电子科技大学出版社 4 电子线路 CAD 实用教程 潘永雄等 西安电子科技大学出版社 5 MCS51/96 系列单片机原理及应用 孙涵芳 北京航空航天大学出版社参考文献35M=999 的计数器的设计与实现36致 谢论文的完成标志着我的大学四年即将结束,也意味着,新的生活又将开始了。最近的半年则并行着找工作和写论文。其间的起起伏伏、悲喜得失,今天想来仍旧唏嘘不已。所幸我没有被失败击垮。自信、坚强、乐观的态度让我坚持到了最后,并且争取了最好的结局。通过几个月的悉心设计,在指导教师的耐心指导下,我完成了毕业设计的工作。此次的毕业设计是我们四年来专业知识的综合运用,是对我们能力的综合考核。这不仅涉及到对基本原理的理解,也涉及到对问题的分析能力。通过本次毕业设计,让我对我国电子软件有了新的认识。这也使我认识到了自己知识的匮乏和能力的有限。从而激励我在今后的学习和工作中更要努力的学习和不断的充实自己。在这里我尤其感谢老师。在他的耐心指导下,我才能成功的完成这次的毕业设计,在写论文时老师严格的要求我们,培养我们强烈的责任心和工作学习的积极性,并且耐心的解答论文中出现的问题。他还为我们指明了论文方向,校定论文方向。在他的要求下,我不仅完成了整个设计和论文,更重要的是锻炼了我分析问题和独立思考的能力。最后,我再一次表达我对领导以及教过我所有的老师最衷心的感谢,是你们在我前进的道路上给以引导,并无私的教给我许多专业知识以及做人的道理。再次,让我对所有的老师及所有帮助过我的同学们致以最崇高的敬意。“长风破浪会有时,直挂云帆济沧海。 ”这是我最喜欢的诗句。就用这话作为这篇论文的一个结尾,也是一段生活的结束。希望自己能够记取少年时的梦想,永不放弃。
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!