1、摘要摘 要 单片微型计算机也称为单片计算机,不但集CPU,RAM,ROM,而且定时,计数和多种接口于一体的微型控制器。单片机成低,功能强,非常好的应用于智能产品和工业自动化生产之中。MC51单片机是单片机的典型代表之一,本毕业设计是利用单片机的知识,通过软件与硬件的结合来实现对MC51单片机最小系统的设计与研究,从而达到设计,开发软件与硬件的能力。本文提出了一种基于MC51单片机的最小系统设计与研究,单片机最小系统或者称为最小应用系统是指用最少的元件组成的单片机可以工作的系统.对MC51系列单片机来说,最小系统一般应该包括:单片机、晶振电路、复位电路.该单片机最小系统具有八路发光二极管显示各种
2、流水灯的功能。文中,首先,分析了单片机的背景与应用。其次,介绍了MC51单片机的最小系统的组成及模块介绍。再次,设计了系统的硬件电路,并解释了硬件电路的工作原理。最后,介绍了在Keilv801开发环境下开发系统软件的设计思路。经过最终的测试,整个系统可以很好的实现各种流水灯。关键词:单片机 MC51单片机 最小系统 Keilv801 流水灯 ABSTRACTThe single chip microcomputer also known as single-chip computer, not only has the CPU, RAM, ROM, but also make timing,
3、counting and a variety of interfaces in one of the microcontroller.Microcontroller unit is cheap and has strong function, so it is very good to used in the production of intelligence products and industrial automation.MC51 of microcontroller unit is the typical representative. In this article, I use
4、 the knowledge of the microcontroller unit , and through a combination of software and hardware to achieve the research about MC51 of microcontroller units smallest system .So as to achieve the ability to design and develop the ability to use the software and hardware. In this paper, the design and
5、research about minimum system based on the MC51 microcontroller unit. The minimum system of microcontroller unit which also called the minimumapplication system that means with the minimum of components consisting can work well. The smallest system of MC51 microcontroller unit should generally inclu
6、de: microcontroller unit ,crystal oscillator circuit and reset circuit .The smallest system of microcontroller unit with eight light-emitting diodes display the function of a variety of water lights.The paper first analyzes the background and applications ofmicrocontroller unit. Secondly, I introduc
7、ed the minimum system of MC51 microcontroller units composition and modules.And then I introduced the hardware circuit of this system, and explain the working principle of the hardware circuit.Finally, I am describe the design ideas of system softwares development in the Keilv801 development environ
8、ment.After the final test, the entire system can achieve the function of a variety water lightsKeywords: Microcontroller unit MC51 microcontroller unit smallest microcontroller unit system Keilv801 water lights.目录i目录第一章绪 论11.1单片机的概述11.2单片机的应用与前景21.2.1单片机的应用实例2第二章单片机最小系统的硬件设计52.1硬件原理图52.2系统各组成模块介绍62.
9、2.1复位电路62.2.2晶振电路72.2.3电源92.2.4输出显示电路92.3proteus软件介绍及仿真102.3.1proteus软件介绍102.3.2Proteus软件仿真图112.4主要元器件及工作原理介绍122.4.1STC89C51 的特点、功能及工作原理122.4.2三端稳压器 7805及稳压原理图202.4.3晶振的介绍及工作原理21第三章系统的软件设计233.1C语言简介与应用233.2八路发光二极管流水灯的程序模块:243.3keil51软件调试263.3.1keil51软件简介263.3.2keil51软件功能27第四章系统的调试与功能介绍294.1系统的调试294.
10、1.1系统的硬件调试与问题的解决294.1.2软件的系统调试与问题的解决314.2焊接技术314.3程序的烧写32第五章总结与展望355.1系统实现的功能355.2单片机系统的现实应用355.3结束语35致 谢37参考文献39第四章 系统的调试与功能介绍33第一章 绪 论1.1 单片机的概述单片机,国外通称它为“微控制器”(Microcontrolor),属于一种面向控制的微处理器芯片。芯片中除中央处理器外一般还包括ROM、RAM、定时计数控制器、中断控制器、串行和并行的I/O端口等,有的单片机可能拥有更多的硬件资源。所有这些资源可分为以下3类,它们均通过单片机内部的特殊功能寄存器(SFR)来
11、进行控制和管理。1) 对CPU的支持功能。指用于增强CPU控制能力、运算能力和保证它正常工作的一些功能和机制。2) 内置的外围设备。指拥有独立功能的片内设备,比如,模拟比较器、DAC、ADC、可编程计数阵列(PCA)、高速I/O,脉宽调制器(PWM)、液晶显示器(LCD)驱动电路等等。3) 数据传输接口。指链接外界的各种数据通道和通信接口。比如并口、USRT口、SPI口、CAN中线接口、红外和射频通信接口等。单片机通过嵌入到某个宿主应用系统、并成为其中心来发挥作用,具有面向控制、嵌入应用的特点,具体表现为一下一些特征:1) 价格敏感2) 强调适用对路,并不一味追求高指标。3) 面对众多的单片机
12、品种,设计者在选型应用上存在一定的惯性。除价格外,设计者考虑的其他因素有:运行速度、运算精度、片内资源、I/O能力、封装和体积、适用温度范围、抗干扰能力、功耗、围绕该芯片的开发工具以及自己的熟悉程度等。1.2 单片机的应用与前景单片机按处理字长可分4位机、8位机、16位机和32位机等。其中用途最广泛、产量最大的是8位机,它被大量用于各种智能产品和集散控制系统的前端。近年来,32位机也得到了迅猛的发展,其产值已可比肩8位产品,它的应用特点是普遍采用嵌入式操作系统,可支持复杂的人机界面和精度更高、速度更快的数据处理,主要用于各种高端场合和大型设备。1.2.1 单片机的应用实例 单片机应用面非常广,
13、使用数量非常大,带来的直接好处就是成本的降低。目前世界各大公司为了提高竞争力,在提高单片机性能的同时,十分注意降低其产品的价格。下面介绍一下单片机的主要应用领域和特点。(1)现代交通与航空航天领域 通常应用于电子综合显示系统、动力监控系统、自动驾驶系统、通信系统以及运行监视系统等。这些领域对体积、功耗、稳定性和实时性的要求往往比商用系统还要高,因此采用单片机系统更加重要。(2)商业应用领域 商业应用系统部分与家用和办公应用系统相似,但更加注重设备的稳定性、可靠性和安全性。商用系统中广泛使用的电子计量仪器、收款机、条形码阅读器、安全监测系统、空气调节系统和冷冻保鲜系统等,都采用了单片机构成的专用
14、系统。与通用计算机相比,这些系统由于比较封闭,可以更有效地防止病毒和电磁干扰等,可靠性更高。(3)家用电器领域 用单片机控制系统取代传统的模拟和数字控制电路,使家用电器(如洗衣机、空调、冰箱、微波炉、和电视机等)功能更完善,更加智能化和易于使用。(4)办公自动化领域 单片机作为嵌入式系统广泛应用于现代办公设备,如计算机的键盘、磁盘驱动、打印机、复印机、电话机和传真机等。(5)工业自动化 在工业控制和机电一体化控制系统中,除了采用工控计算机外,很多都是以单片机为核心的单片机和多机系统。(6)智能仪表与集成智能传感器 目前在各种电气测量仪表中普遍采用了单片机应用系统来代替传统的测量系统,使得测量系
15、统具有存储、数据处理、查询及联网等智能功能。将单片机和传感器相结合,可以构成新一代的智能传感器。它将传感器变换后的物理量作进一步的变化和处理,使其成为数字信号,可以远距离传输并与计算机接口。单片机最小系统组成什么是单片机的系统呢,单片机最小系统基本结构图如图所示,从图可以看出,对于一个典型的单片机系统而言,主要由单片机、晶振、输出控制电路、输出显示电路以及外围功能器件5个部分组成。晶振、复位电路外围功能器件单片机输入控制输出显示图1.1单片机系统组成除上文介绍的单片机外,单片机其他4个部分的主要作用和器件如下:(1) 晶振和复位电路:单片机系统的必要组成部分,控制单片机的机器和功能复位。(2)
16、 输入控制:是指在一定要求下,采取任何中形式的控制方式来实现单片机不同的功能的转换,以及以何种方式传送到单片机。常用的输入控制方式有按键、矩阵键盘、串行通信等方式。(3) 输出显示:是指单片机将需要显示的数据发送到LED、液晶等显示模块,并控制LED等显示模块按照一定的格式显示的功能,此外,输出对象还有电机、传感器等特殊的功能器件。(4) 外围功能器件:单片机只是控制器件,对应于一定的设计要求,需要加入特定的功能器件,例如外部储存器。单片机通过对外部存储器的读写操作,完成对数据的储存和读取,从而扩展单片机的储存单元和数据。此外。常用的外围器件还有A/D、D/A、74LS07门电路以及特定功能的
17、传感器等。单片机的最小系统是指单片机能正常工作所必须的外围元件,主要由单片机、晶振电路、复位电路构成。而输入输出部分则通过单片机的I/O口来实现。第二章 单片机最小系统的硬件设计2.1 硬件原理图本设计与研究实现了八路发光二极管的多样流水灯功能,其系统组成包括单片机,复位电路,晶振电路,电源,输出显示电路。图2.1 硬件原理图2.2 系统各组成模块介绍该设计包含单片机、晶振、电源,输出显示电路以及外围功能器件5个部分组成。单片机最小系统,或者称为最小应用系统,是指用最少的元件组成的单片机可以工作的系统。对51系列单片机来说,最小系统一般应该包括:单片机、晶振电路、复位电路.本节从单片机,复位电
18、路,晶振电路,输出显示电路和电源方面依次介绍。2.2.1 复位电路确定单片机工作的起始状态,完成单片机的启动过程。单片机接通电源时产生复位信号,完成单片机启动,确定单片机起始工作状态。手动按键产生复位信号,完成单片机启动,确定单片机的初始状态。通常在单片机工作出现混乱或“死机”时,使用手动复位可实现单片机“重启”。单片机复位的原理是在时钟电路开始工作后,在单片机的RST引脚施加24个时钟震荡脉冲(即两个机器周期)以上的高电平,单片机便可以实现复位。在复位期间,单片机的ALE引脚均输出高电平。当RST引脚从高电平跳变为低电平后,单片机便从0000H单元开始执行程序。图2.2 复位电路2.2.2
19、晶振电路晶振电路在此也为时钟电路,单片机工作的时间基准,决定单片机工作速度。晶振电路就是振荡电路,向单片机提供一个正弦波信号作为基准,决定单片机的执行速度。图2.3 晶振电路图2.4晶振的内部及外部方式采用内部时钟方式时,我们只需要提供振荡源,通常以石英晶体振荡器和两个片电容组成外部振荡源,其电路如上图所示。片内的高增益反相放大器通过XTAL1,XTAL2外接,作为反馈元件的片外晶体振荡器(呈感性)与电容组成的并联谐振回路构成一个自激振荡器,向内部时钟电路提供振荡时钟。振荡器的频率取决于晶体的振荡频率,振荡频率可在1.212MHz之间任选,电容C1,C2可在10-30PF之间选择,电容的大小对
20、振荡频率有微小的影响,可起频率微调作用。通常选30PF。2.2.3 电源图2.5电源其中有2个陶瓷电容起到滤高频杂波的作用,有两个电解电容起滤低频杂的作用, 加上三端稳压器7805将高于5V的电压稳定到5V就构成了电源.2.2.4 输出显示电路图2.6输出显示2.3 proteus软件介绍及仿真2.3.1 proteus软件介绍proteus软件是英国Labcenter electronics公司出版的。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是目前最好的仿真单片机及外围器件的工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发
21、应用的科技工作者的青睐。Proteus是世界上著名的EDA工具,从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年即将增加Cortex和DSP系列处理器,并持续增加其他系列处理器模型。在编译方面,它也支持IAR、Keil和MPLAB等多种编译器。Proteus与其它单片机仿真软件不同的是,它不仅能仿真单片机CPU的
22、工作情况,也能仿真单片机外围电路或没有单片机参与的其它电路的工作情况。因此在仿真和程序调试时,关心的不再是某些语句执行时单片机寄存器和存储器内容的改变,而是从工程的角度直接看程序运行和电路工作的过程和结果。对于这样的仿真实验,从某种意义上讲,是弥补了实验和工程应用间脱节的矛盾和现象。 (1)proteus的工作过程 运行proteus的ISIS程序后,进入该仿真软件的主界面。在工作前,要设置view菜单下的捕捉对齐和system下的颜色、图形界面大小等项目。通过工具栏中的p(从库中选择元件命令)命令,在pickdevices窗口中选择电路所需的元件,放置元件并调整其相对位置,元件参数设置,元器
23、件间连线,编写程序;在source菜单的Definecodegenerationools菜单命令下,选择程序编译的工具、路径、扩展名等项目;在source菜单的Add/removesourcefiles命令下,加入单片机硬件电路的对应程序;通过debug菜单的相应命令仿真程序和电路的运行情况。 (2)Proteus软件所提供的元件资源Proteus软件所提供了30多个元件库,数千种元件。元件涉及到数字和模拟、交流和直流等。 (3)Proteus软件所提供的仪表资源 对于一个仿真软件或实验室,测试的仪器仪表的数量、类型和质量,是衡量实验室是否合格的一个关键因素。在Proteus软件包中,不存在同
24、类仪表使用数量的问题。Proteus还提供了一个图形显示功能,可以将线路上变化的信号,以图形的方式实时地显示出来,其作用与示波器相似但功能更多。 (4)Proteus软件所提供的调试手段 Proteus提供了比较丰富的测试信号用于电路的测试。这些测试信号包括模拟信号和数字信号。对于单片机硬件电路和软件的调试,Proteus提供了两种方法:一种是系统总体执行效果,一种是对软件的分步调试以看具体的执行情况。 对于总体执行效果的调试方法,只需要执行debug菜单下的execute菜单项或F12快捷键启动执行,用debug菜单下的pauseanimation菜单项或pause键暂停系统的运行;或用de
25、bug菜单下的stopanimation菜单项或shift-break组合键停止系统的运行。其运行方式也可以选择工具栏中的相应工具进行。 对于软件的分步调试,应先执行debug菜单下的start/restartdebugging菜单项命令,此时可以选择stepover、stepinto和stepout命令执行程序(可以用快捷键F10、F11和ctrl+F11),执行的效果是单句执行、进入子程序执行和跳出子程序执行。在执行了start/restartdebuging命令后,在debug菜单的下面要出现仿真中所涉及到的软件列表和单片机的系统资源等,可供调试时分析和查看。2.3.2 Proteus软
26、件仿真图图2.7实现八路发光二极管的流水灯仿真图 2.4 主要元器件及工作原理介绍2.4.1 STC89C52 的特点、功能及工作原理计选用的是STC89C52单片机。STC89C52是一个低功耗高性能单片机,40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,2个16位可编程定时计数器,2个全双工串行通信口,STC89C52可以按照常规方法进行编程,也可以在线编程。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。(1)STC89C52的特点:STC89C52 完全兼容MCS-51 系列单片机的所有功能,并且本身带有
27、2K 的内存储器,可以在编程器上实现闪烁式的电擦写达几万次以上,比以往惯用的8031CPU 外加EPROM为核心的单片机系统具有更加简单方便等优点,具体如下:STC89C52 单片机是最早期也最典型的产品,低功耗、高性能、采用CHMOS 工艺的8位单片机。它在硬件资源和功能、软件指令及编程上与Intel 80C3X 单片机完全相同。在应用中可直接替换。在STC89C52 内部有FLASH 程序存储器,既可用常规的编程器编程,也可用在线使之处于编程状态对其编程。编程速度很快,擦除时也无需紫外线,非常方便。STC89C5X 系列可认为是Intel 80C3X 的内核与STC FLASH 技术的结合
28、体。它为许多嵌入式控制系统提供了灵活、低成本的解决方案。(2)STC89C52主要功能如下所示。表2.2 STC89C52主要功能主要功能特性兼容MCS51指令系统8K可反复擦写Flash ROM32个双向I/O口256x8bit内部RAM3个16位可编程定时/计数器中断时钟频率0-24MHz2个串行中断可编程UART串行通道2个外部中断源共6个中断源2个读写中断口线3级加密位低功耗空闲和掉电模式软件设置睡眠和唤醒功能(3)STC89C52的工作原理:MCS-5系列单片机中的8031、8051及8751均采用40Pin封装的双列直接DIP结构,右图是它们的引脚配置,40个引脚中,正电源和地线两
29、根,外置石英振荡器的时钟线两根,4组8位共32个I/O口,中断口线与P3口线复用。现在对这些引脚的功能加以说明:图2.8单片机的管脚1主要特性:与MCS-52 兼容 4K字节可编程闪烁存储器 寿命:1000写/擦循环数据保留时间:10年全静态工作:0Hz-24Hz三级程序存储器锁定128*8位内部RAM32可编程I/O线两个16位定时器/计数器5个中断源 可编程串行通道低功耗的闲置和掉电模式片内振荡器和时钟电路 2管脚说明:电源引脚:电源引脚主要负责单片机的供电,有两根引脚。VCC:供电电压。 GND:接地。外接晶振或外部振荡器引脚:外接晶振或外部振荡器引脚主要负责为单片机的运行提供时钟振荡器
30、,主要有两根引脚。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。输入输出(I/O)端口引脚:AT89C51提供了4个8位并行I/O端口P0口:P0口为一个8位开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。 P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,
31、可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八
32、位地址信号和控制信号。 P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口同时具有AT89C51的多种特殊功能,具体如下表所示:表2.1 P3口的第二功能端口引脚第二功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2INT0(外部中断0)P3.3INT1(外部中断1)P3.4T0(定时器0)P3.5T1(定时器1)P3.6WR(外部数据存储器写选通)P3.7RD(外部数据存储器都选通)复位、控制和选通引脚
33、:复位、控制和选通引脚主要负责单片机程序复位、编程控制及外部程序存储器的选通。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。 ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的低位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略
34、微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。 EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。本设计中:XTAL1、XTAL2两条引脚连接晶振电路,用以提供时钟振荡器,测量待测信号的周期和频率。振荡器特性
35、表现:TAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。芯片擦除为:整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10ms 来完成。在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。此外,STC89C52设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下
36、,CPU停止工作。但RAM,定时器,计数器,串口和中断系统仍在工作。在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。8052单片机包含中央处理器、程序存储器(ROM)、数据存储器(RAM)、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线:中央处理器:中央处理器(CPU)是整个单片机的核心部件,是8位数据宽度的处理器,能处理8位二进制数据或代码,CPU负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。数据存储器(RAM):8052内部有128个8位用户数据存储单元和128个专用寄
37、存器单元,它们是统一编址的,专用寄存器只能用于存放控制指令数据,用户只能访问,而不能用于存放用户数据,所以,用户能使用的RAM只有128个,可存放读写的数据,运算的中间结果或用户定义的字型表。图2.9 单片机8052的内部结构程序存储器(ROM):8052共有4096个8位掩膜ROM,用于存放用户程序,原始数据或表格。定时/计数器(ROM):8052有两个16位的可编程定时/计数器,以实现定时或计数产生中断用于控制程序转向。并行输入输出(I/O)口:8052共有4组8位I/O口(P0、 P1、P2或P3),用于对外部数据的传输。全双工串行口:8052内置一个全双工串行通信口,用于与其它设备间的
38、串行数据传送,该串行口既可以用作异步通信收发器,也可以当同步移位器使用。中断系统:8052具备较完善的中断功能,有两个外中断、两个定时/计数器中断和一个串行中断,可满足不同的控制要求,并具有2级的优先级别选择。单片机的结构有两种类型,一种是程序存储器和数据存储器分开的形式,即哈佛(Harvard)结构,另一种是采用通用计算机广泛使用的程序存储器与数据存储器合二为一的结构,即普林斯顿(Princeton)结构。INTEL的MCS-52系列单片机采用的是哈佛结构的形式,而后续产品16位的MCS-96系列单片机则采用普林斯顿结构。下图是MCS-51系列单片机的内部结构示意图。图2.10MCS-52系
39、列单片机的内部结构示意图2.4.2 三端稳压器 7805及稳压原理图图2.11三端稳压器 78057805为三端正稳压器电路,TO-220F封装,能提供多种固定的输出电压,应用范围广。内含过流、过热和过载保护电路。带散热片时,输出电流可达1A。虽然是固定稳压电路,但使用外接元件可获得不同的电压和电流主要特点: 输出电流可达1A,输出电压有:5V、6V、8V、9V、10V、11V、12V、15V、18V、24V,过热保护,短路保护,输出晶体管SOA的保护。图2.12三端稳压器7805的内部结构图下图为三端稳压器7805的稳压原理图图2.13三端稳压器7805的稳压原理图2.4.3 晶振的介绍及工
40、作原理每个单片机系统里都有晶振,全程是叫晶体震荡器,在单片机系统里晶振的作用非常大,他结合单片机内部的电路,产生单片机所必须的时钟频率,单片机的一切指令的执行都是建立在这个基础上的,晶振的提供的时钟频率越高,那单片机的运行速度也就越快。晶振用一种能把电能和机械能相互转化的晶体在共振的状态下工作,以提供稳定,精确的单频振荡。在通常工作条件下,普通的晶振频率绝对精度可达百万分之五十。高级的精度更高。有些晶振还可以由外加电压在一定范围内调整频率,称为压控振荡器(VCO)。晶振的作用是为系统提供基本的时钟信号。通常一个系统共用一个晶振,便于各部分保持同步。有些通讯系统的基频和射频使用不同的晶振,而通过
41、电子调整频率的方法保持同步。晶振的工作原理:计算机都有个计时电路,尽管一般使用“时钟”这个词来表示这些设备,但它们实际上并不是通常意义的时钟,把它们称为计时器可能更恰当一点。计算机的计时器通常是一个精密加工过的石英晶体,石英晶体在其张力限度内以一定的频率振荡,这种频率取决于晶体本身如何切割及其受到张力的大小。有两个寄存器与每个石英晶体相关联,一个计数器和一个保持寄存器。石英晶体的每次振荡使计数器减1。当计数器减为0时,产生一个中断,计数器从保持计数器中重新装入初始值。这种方法使得对一个计时器进行编程,令其每秒产生60次中断(或者以任何其它希望的频率产生中断)成为可能。每次中断称为一个时钟嘀嗒。
42、图2.14应用的晶振电路图第三章 系统的软件设计3.1 C语言简介与应用C语言是一种计算机程序设计语言。它既具有高级语言的特点,又具有汇编语言的特点。它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。因此,它的应用范围广泛,不仅仅是在软件开发上,而且各类科研都需要用到C语言,具体应用比如单片机以及嵌入式系统开发。C语言是一种面向过程的计算机程序设计语言,它是目前众多计算机语言中举世公认的优秀的结构程序设计语言之一。它由美国贝尔研究所的D.M.Ritchie于1972年推出。1978后,C语言已先后被移植到大、中、小及微型机上。 C语言发展
43、如此迅速,而且成为最受欢迎的语言之一,主要因为它具有强大的功能。许多著名的系统软件,如DBASE 都是由C 语言编写的。用C 语言加上一些汇编语言子程序,就更能显示C 语言的优势了,像PC- DOS 、WORDSTAR等就是用这种方法编写的。 语言特点. C是中级语言。它把高级语言的基本结构和语句与低级语言的实用性结合起来。C 语言可以像汇编语言一样对位、字节和地址进行操作, 而这三者是计算机最基本的工作单元。 .C是结构式语言。结构式语言的显著特点是代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。这种结构化方式可使程序层次清晰,便于使用、维护以及调试。C 语言是以函数形式提
44、供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。 .C语言功能齐全。具有各种各样的数据类型,并引入了指针概念,可使程序效率更高。而且计算功能、逻辑判断功能也比较强大,可以实现决策目的的游戏。 . C语言适用范围大。适合于多种操作系统,如Windows、DOS、UNIX等等;也适用于多种机型。 3.2 八路发光二极管流水灯的程序模块:#include #define DELAY_TIME 200 /流动间隔时间/12M下每单位延时约1msvoid Delayms(unsigned int t)unsigned int a,b;for (a=0; at
45、; a+) for (b=0; b112; b+);int main(void) unsigned char i; while(1) /8个灯从左到右逐个点亮 for (i=0; i8; i+) P0 = (1 i); Delayms(DELAY_TIME); /关闭 P0 = 0xFF; Delayms(DELAY_TIME); /8个灯从右到左依次点亮 for (i=0; i i; Delayms(DELAY_TIME); / 8个灯从左到右依次熄灭 for (i=0; i8; i+) P0 = (0xFE i); Delayms(DELAY_TIME); /两边向中间依次点亮for (i=0; i4; i+) P0 = (0xFE i); Delayms(DELAY_TIME); /两边向中间依次熄灭for (i=0; i4; i+) P0 = (0xFE i); Delayms(DELAY_TIME)