毕业设计----基于单片机的方波信号发生器.doc_第1页
毕业设计----基于单片机的方波信号发生器.doc_第2页
毕业设计----基于单片机的方波信号发生器.doc_第3页
毕业设计----基于单片机的方波信号发生器.doc_第4页
毕业设计----基于单片机的方波信号发生器.doc_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

毕 业 设 计 毕 业 设 计课题名称 基于单片机的方波信号发生器 姓 名 学 号 所在系 电子系 专业年级 指导教师_ _职 称_副教授_二o一o 年 月 日 目 录摘 要iiiabstractiv第1章 引言1第2章 单片机概述1第3章 芯片简介13.1 msc-52芯片简介13.2 8255芯片简介53.3 74ls373简介6第4章. 系统硬件设计64.2方波发生器设计方案7421 系统总框图如下:7422 交通灯硬件线路图8423 系统工作原理10第5章控制器的软件设计105.1每秒钟的设定105.2计数器硬件延时105.2.1 计数器初值计算105.2.2 计算公式105.2.3 秒的方法115.2.4相应程序代码115.3 软件延时125.4 时间及信号灯的显示125.4.1 8051并行口的扩展125.4.3 8255pa口输出信号接信号灯:135.4.4 8255输出信号与数码管的连接:135.4.5 8255与8051的连接:135.5 程序设计145.5.1流程图如图所示145.5.2 程序源代码15结 束 语20参考文献20致 谢21摘 要近年来随着科技的飞速发展,单片机的应用正在不断地走向深入。在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构,以及针对具体应用对象特点的软件结合,加以完善。本文首先对智能交通灯的研究意义和智能交通灯的研究现状进行了分析,指出了现状交通灯存在的缺点,并提出了改进方法。智能交通灯控制系统通常要实现自动控制。本文还对at89s51单片机的结构特点和重要引脚功能进行了介绍,同时对智能交通灯控制系统的设计进行了详细的分析。关键词:;微处理器模块at89s52;程序设计abstractalong with science and technology is updating in recent years , the application of mcu is going deeper. in the application of the automatic control and detection of real time, the mcu is used to use as a key parts. but if you want to design a system , only learn the knowledge of mcu is insufficient . you should perfect the system on the basis of the structure of the hardware and it is link to the characteristic of the application object of the software.first, in this paper, we discuss the studying significance and studying situation of the intelligent transportation system(its) ,then point out the drawback of the current situation and give the improve method. automatic control is the most important function of the its. this paper describe the character of structure and the function of pin of at89s51 scm.it also give detailed analysis of its design .keywords: at8951 mcu; its; program design - iv -图1程序存储器(rom):8051共有4096个8位掩膜rom,用于存放用户程序,原始数据或表格。定时/计数器(rom):8051有两个16位的可编程定时/计数器,以实现定时或计数产生中断用于控制程序转向。并行输入输出(i/o)口:8051共有4组8位i/o口(p0、 p1、p2或p3),用于对外部数据的传输。全双工串行口:8051内置一个全双工串行通信口,用于与其它设备间的串行数据传送,该串行口既可以用作异步通信收发器,也可以当同步移位器使用。中断系统:8052具备较完善的中断功能,有两个外中断、两个定时/计数器中断和一个串行中断,可满足不同的控制要求,并具有2级的优先级别选择。时钟电路:8052内置最高频率达12mhz的时钟电路,用于产生整个单片机运行的脉冲时序,但8052单片机需外置振荡电容。单片机的结构有两种类型,一种是程序存储器和数据存储器分开的形式,即哈佛(harvard)结构,另一种是采用通用计算机广泛使用的程序存储器与数据存储器合二为一的结构,即普林斯顿(princeton)结构。intel的mcs-51系列单片机采用的是哈佛结构的形式,而后续产品16位的mcs-96系列单片机则采用普林斯顿结构。下图是mcs-51系列单片机的内部结构示意图2。 图2mcs-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个引脚中,正电源和地线两根,外置石英振荡器的时钟线两根,4组8位共32个i/o口,中断口线与p3口线复用。现在我们对这些引脚的功能加以说明:如图3 图3pin9:reset/vpd复位信号复用脚,当8051通电,时钟电路开始工作,在reset引脚上出现24个时钟周期以上的高电平,系统即初始复位。初始化后,程序计数器pc指向0000h,p0-p3输出口全部为高电平,堆栈指针写入07h,其它专用寄存器被清“0”。reset由高电平下降为低电平后,系统即从0000h地址开始执行程序。然而,初始复位不改变ram(包括工作寄存器r0-r7)的状态,8051的初始态。8051的复位方式可以是自动复位,也可以是手动复位,见下图4。此外,reset/vpd还是一复用脚,vcc掉电其间,此脚可接上备用电源,以保证单片机内部ram的数据不丢失。图4pin30:ale/当访问外部程序器时,ale(地址锁存)的输出用于锁存地址的低位字节。而访问内部程序存储器时,ale端将有一个1/6时钟频率的正脉冲信号,这个信号可以用于识别单片机是否工作,也可以当作一个时钟向外输出。更有一个特点,当访问外部程序存储器,ale会跳过一个脉冲。如果单片机是eprom,在编程其间,将用于输入编程脉冲。pin29:当访问外部程序存储器时,此脚输出负脉冲选通信号,pc的16位地址数据将出现在p0和p2口上,外部程序存储器则把指令数据放到p0口上,由cpu读入并执行。pin31:ea/vpp程序存储器的内外部选通线,8051和8751单片机,内置有4kb的程序存储器,当ea为高电平并且程序地址小于4kb时,读取内部程序存储器指令数据,而超过4kb地址则读取外部指令数据。如ea为低电平,则不管地址大小,一律读取外部程序存储器指令。显然,对内部无程序存储器的8031,ea端必须接地。在编程时,ea/vpp脚还需加上21v的编程电压。3.2 8255芯片简介8255可编程并行接口芯片简介: 8255可编程并行接口芯片有三个输入输出端口,即a口、b口和c口,对应于引脚pa7pa0、pb7pb0和pc7pc0。其内部还有一个控制寄存器,即控制口。通常a口、b口作为输入输出的数据端口。c口作为控制或状态信息的端口,它在方式字的控制下,可以分成4位的端口,每个端口包含一个4位锁存器。它们分别与端口a配合使用,可以用作控制信号输出或作为状态信号输入。8255可编程并行接口芯片方式控制字格式说明:8255有两种控制命令字;一个是方式选择控制字;另一个是c口按位置位复位控制字。其中c口按位置位复位控制字方式使用较为繁难,说明也较冗长,故在此不作叙述,需要时用户可自行查找有关资料。方式控制字格式说明如表1: 表1d7d6d5d4d3d2d1d0 d7:设定工作方式标志,1有效。 d6、d5:a口方式选择 0 0 方式0 0 1 方式1 1 方式2 d4:a口功能 (1=输入,0=输出) d3:c口高4位功能 (1=输入,0=输出) d2:b口方式选择 (0=方式0,1=方式1) d1:b口功能 (1=输入,0=输出)d0:c口低4位功能 (1=输入,0=输出) 8255可编程并行接口芯片工作方式说明: 方式0:基本输入输出方式。适用于三个端口中的任何一个。每一个端口都可以用作输入或输出。输出可被锁存,输入不能锁存。 方式1:选通输入输出方式。这时a口或b口的8位外设线用作输入或输出,c口的4条线中三条用作数据传输的联络信号和中断请求信号。 方式2 :双向总线方式。只有a口具备双向总线方式,8位外设线用作输入或输出,此时c口的5条线用作通讯联络信号和中断请求信号。3.3 74ls373简介74ls373 是一种带三态门的8d锁存器,其管脚示意图如下示:423 系统工作原理(1)开关键盘输入交通灯初始时间,通过8051单片机p1输入到系统 (2) 由8051单片机的定时器每秒钟通过p0口向8255的数据口送信息,由8255的pa 口显示红、绿、黄灯的燃亮情况;由8255的pc口显示每个灯的燃亮时间。 (3)8051通过 设置 各个信号等的燃亮时间、通过8031设置,绿、红时间分别为60秒、80秒循环由8051的 p0口向8255的数据口输出。(4) 通过8051单片机的p3.0位来控制系统是工作或设置初值,当.牌位0就对系统进行初始化,为1系统就开始工作。(5)红灯倒计时时间,当有车辆闯红灯时,启动蜂鸣器进行报警,3s后然后恢复正常。(6)增加每次绿灯时间车流量检测的功能,并且通过查询p2.0端口的电平是否为低,开关按下为低电平,双位数码管显示车流量,直到下一次绿灯时间重新记入。(7)绿灯时间倒计时完毕,重新循环。第5章控制器的软件设计5.1每秒钟的设定 延时方法可以有两种一中是利用mcs-51内部定时器才生溢出中断来确定1秒的时间,另一种是采用软延时的方法。5.2计数器硬件延时5.2.1 计数器初值计算 定时器工作时必须给计数器送计数器初值,这个值是送到th和tl中的。他是以加法记数的,并能从全1到全0时自动产生溢出中断请求。因此,我们可以把计数器记满为零所需的计数值设定为c和计数初值设定为tc 可得到如下计算通式: tc=m-c式中,m为计数器摸值,该值和计数器工作方式有关。在方式0时m为213 ;在方式1时m的值为216;在方式2和3为285.2.2 计算公式 t=(mtc)t计数 或t计数t计数是单片机时钟周期的倍;为定时初值如单片机的主脉冲频率为,经过分频方式213微秒毫秒方式216微秒毫秒显然秒钟已经超过了计数器的最大定时间,所以我们只有采用定时器和软件相结合的办法才能解决这个问题5.2.3 秒的方法我们采用在主程序中设定一个初值为的软件计数器和使定时毫秒这样每当到毫秒时就响应它的溢出中断请求,进入他的中断服务子程序。在中断服务子程序中,先使软件计数器减,然后判断它是否为零。为零表示秒已到可以返回到输出时间显示程序。5.2.4相应程序代码()主程序定时器需定时毫秒,故工作于方式。初值: t计数ms/1us=15536=3cboh org 1000h start: mov tmod, #01h ; 令为定时器方式 mov th0, #3ch ;装入定时器初值 mov tl0, #boh; mov ie,#82h ;开中断 sebt to;启动计数器 mov ro,#14h;软件计数器赋初值loop:sjmp $;等待中断()中断服务子程序 :djnz ,ajmp time ; 跳转到时间及信号灯显示子程序 djnz:,;恢复值 mov th0, #3ch ;重装入定时器初值 mov tl0, #boh; mov ie,#82h 5.3 软件延时 mcs-51的工作频率为2-12mhz,我们选用的8031单片机的工作频率为6mhz。机器周期与主频有关,机器周期是主频的12倍,所以一个机器周期的时间为12*(1/6m)=2us。我们可以知道具体每条指令的周期数,这样我们就可以通过指令的执行条数来确定1秒的时间。 具体的延时程序分析: delay:mov r4,#08h 延时1秒子程序 de2:lcall delay1 djnz r4,de2 retdelay1:mov r6,#0 延时125ms 子程序 mov r5,#0de1: djnz r5,$ djnz r6,de1 ret mov rn,#data 字节数数为2 机器周期数为1所以此指令的执行时间为2ms delay1 为一个双重循坏 循环次数为256*256=65536 所以延时时间=65536*2=131072us 约为125us delay r4设置的初值为8 主延时程序循环8次,所以125us*8= 1秒 由于单片机的运行速度很快其他的指令执行时间可以忽略不计。5.4 时间及信号灯的显示5.4.1 8051并行口的扩展 3 驱动代码表5.4.5 8255与8051的连接:用8051的p0 口的 p0.7 连接8255的片选信号cs 我们用8031的地址采用全译码方式,当p0.7 =0 时片选有效, 其他无效, p0.1 p0.1 用于选择8255端口 p0.7 p0.6 p0.5 p0.4 p0.3 p0.2 p0.1 p0.0a7 a6 a5 a4 a3 a2 a1 a01 x x x x x 0 0 00h为8255 的pa口1 x x x x x 0 1 01h 为8255的pb口1 x x x x x 1 0 02h 为8255的pc口1 x x x x x 1 1 03h 为8255的控制口由于8051是分时对8255和储存器进行访问所以8051的p0口不会发生冲突5.5 程序设计方波信号发生器设计一、概述单片机集成度高、功能强、可靠性高、体积小、功耗地、使用方便、价格低廉等一系列优点,目前已经渗入到人们工作和生活的方方面面,几乎“无处不在,无所不为”。单片机的应用领域已从面向工业控制、通讯、交通、智能仪表等迅速发展到家用消费产品、办公自动化、汽车电子、pc机外围以及网络通讯等广大领域。 单片机有两种基本结构形式:一种是在通用微型计算机中广泛采用的,将程序存储器和数据存储器合用一个存储器空间的结构,称为普林斯顿结构。另一种是将程序存储器和数据存储器截然分开,分别寻址的结构,一般需要较大的程序存储器,目前的单片机以采用程序存储器和数据存储器截然分开的结构为多。 本课题讨论的方波发生器的核心是目前应用极为广泛的 51系列单片机。1.1、设计内容本课程设计是设计一个方波发生器,用4位数码管显示方波的频率。1.2、设计的基本要求频率可调,用一个变阻器来调整波形的频率,频率调节范围为20hz2000hz;占空比可调,采用两个按键来实现增加、减小波形的占空比作用,占空比调节步长为1%,即每按键一次,占空比增加或减少1%。占空比用另外两位数码管显示。系统上电时频率依变阻器的阻值设定,占空比设定为50%。而我们在此设计的方波发生器与要求要设计的有点区别,所设计的频率调节范围为1hz15000hz,以调节变阻器的阻值来实现频率的调节相对来说要麻烦些。因此,频率也使用按键来进行调节,不同的频率及占空比可以使用不同的按键来实现,而以键盘扫描来实现各键的不同功能;显示部分可以使用zlg7290芯片及数码管来实现。由此即可构成一个最小单片机应用系统。 二、方波发生器设计方案在电子技术领域中,实现方波发生器的方法有很多种,可以采用不同的原理及器件构成不同的电路,但可以实现相同的功能。在此次设计中,有些地方与课题原本的具体要求有点不同。如实现频率调节时,不是按要求利用调整变阻器的阻值来完成的,而是用按键来实现的。2.1、方案介绍微处理器模块at89s52,频率与占空比信息显示模块,24矩阵键盘模块,74ls164移位寄存器显示驱动模块。本设计中用到两个定时器,定时器0和定时器1,其中定时器0工作在定时方式下,决定方波的频率;定时器1同样工作在定时方式下,用于设定占空比。用led显示器来显示频率与占空比,键盘的操作是通过外中断与单片机共同来控制的,键盘操作来完成按要求对频率与占空比进行调节。.2、设计的基本要求频率可调,用一个变阻器来调整波形的频率,频率调节范围为20hz2000hz;占空比可调,采用两个按键来实现增加、减小波形的占空比作用,占空比调节步长为1%,即每按键一次,占空比增加或减少1%。占空比用另外两位数码管显示。系统上电时频率依变阻器的阻值设定,占空比设定为50%。而我们在此设计的方波发生器与要求要设计的有点区别,所设计的频率调节范围为1hz15000hz,以调节变阻器的阻值来实现频率的调节相对来说要麻烦些。因此,频率也使用按键来进行调节,不同的频率及占空比可以使用不同的按键来实现,而以键盘扫描来实现各键的不同功能;显示部分可以使用zlg7290芯片及数码管来实现。由此即可构成一个最小单片机应用系统。 2.2、方波发生器的原理与功能方波发生器的原理方框图如图1所示键盘单片机89s52led 显 示频率与占空比数据频率与占空比数据图1 方波发生器原理框图 由于系统的要求不高,比较单一的,再加上我们是通过定时器来调节频率的,而非电阻,因此实现起来就相对简化了。仅用键盘、at89s52及串行显示便可完成设计,达到所要求实现的功能。方波发生器工作原理与功能:简单的流程为:主程序扫描键盘,将设置信息输入,处理后,输出到led显示器显示。单片机的晶振为11.0592mhz,用到了两个定时器,即定时器0与定时器1,分别进行频率与占空比的定时,两个定时器都是工作在方式1。根据计算定时器初值的公式: 计算出定时器0与定时器1所要装入的初值。频率及占空比的显示电路由74ls164构成的驱动电路和led数码显示管组成,利用八个数码管来显示,有五位是用来显示频率的,有两位是显示占空比的,在频率与占空比显示管中间有一个led数码管是用来显示“”的,用以区分频率显示与占空比显示的。此电路的键盘是由一个状态键,四个功能键(调节频率与占空比的增减)组成,其特殊之处在于利用外部中断实现键盘扫描。状态键有三种状态,当其处于状态0时,则其它的键会处于无用状态,当其处于状态1时,可通过按四个调节键来调节频率,处于第三种状态时,按四个调节键中的前两个便可对占空比进行调节了。三、系统的硬件设计3.1、单片机最小系统单片机各功能部件的运行都是以时钟频率为基准的,有条不紊地进行工作。因而时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统的稳定性。常用的时钟电路方式有两种:一种是内部时钟方式,一种是外部时钟方式,这里采用的是内部时钟方式,外接晶振。时钟电路由片外晶体、微调电容和单片机的内部电路组成。选取频率为11.0592mhz的晶振,微调电容是瓷片电容。89s52单片机的p0.7口作为波形输出口,若接示波器,则可通过示波器来观察波形,是一个矩形波。图2 单片机最小系统此单元电路包括时钟电路、复位电路,具体电路如图2所示:3.2、小键盘接口电路小键盘如图3所示。它包括8个键,系统中用到的键只有5个,分别为0号、1号、2号、3号、4号键。其中0号键是状态键,采用外部中断控制,用它来确定其它几个键的按键功能,具体作用在前述的系统功能中已做介绍了;另外4个键为功能键,调节频率与占空比的。小键盘中引出的6根线依次分别接单片机的p1.0、p1.1、p1.2、p1.3、p1.4、p1.5口。.3、led显示电路采用静态显示来实现显示功能,如图4所示。移位寄存器74ls164,实现串行输入,并行输出。串行数据由rxd输出,从74ls164的a、b端口输入寄存器,移位时钟由txd提供。在移位时钟作用下,存放显示器段码的串行发送缓冲器数据逐位由a、b端移入到74ls164中,再由q0到q7并行输出到显示数码管相应的led上。8片74ls164首尾相串,而时钟端则接在一起。这部分的最终功能是显示频率与占空比。显示部分具体电路如图4所示:3.3、led显示电路采用静态显示来实现显示功能,如图4所示。移位寄存器74ls164,实现串行输入,并行输出。串行数据由rxd输出,从74ls164的a、b端口输入寄存器,移位时钟由txd提供。在移位时钟作用下,存放显示器段码的串行发送缓冲器数据逐位由a、b端移入到74ls164中,再由q0到q7并行输出到显示数码管相应的led上。8片74ls164首尾相串,而时钟端则接在一起。这部分的最终功能是显示频率与占空比。显示部分具体电路如图4所示:四、系统的软件设计显示子程序入口分离频率和占空比的各位数字高位灭零处理查表,串口发送各位数字字型码软件延时结束图6 显示子程序流程图方波发生器的软件设计包括主程序、延时子程序、系统初始化程序、显示子程序、键盘扫描程序、定时器中断子程序。其中主程序用来控制整个程序的执行,它与各子程序紧密相联,共同实现方波发生器各种功能的执行。4.1、主程序开始系统初始化显示图5 主程序流程图主程序包括系统初始化及显示程序,是一个死循环系统。其流程图如图5所示: 4.2、系统初始化子程序在此程序中,给所有变量赋初值,有键盘扫描口、选择串行口工作方式scon、状态标志位flag、初始频率与占空比及其定时、定时器0与定时器1的工作方式等。初始化时启动了定时器0与定时器1。4.3、显示子程序 利用分离频率的各位数值,将各位数值分别显示出来。在程序中利用了频率显示的高位灭零的方法以致最高位为0时就不显示,以致显示效果美观化。一共有五位是显示频率的,若频率小于10000时,则万位不显示;若频率小于1000时,则万位与千位都不显示,依次类推。占空比的显示规律与频率的一样。显示子程序流程图如图6所示:显示子程序入口分离频率和占空比的各位数字高位灭零处理查表,串口发送各位数字字型码软件延时结束图6 显示子程序流程图5.5.2 程序源代码 void delay1ms(uchar n) /延时n ms uchar j; while(n-) for(j=0;j122;j+) ; /* 系统初始化*/void system_init(void ) key_port=0x0f; scon=0x00; flag=0; pl=1000; zkb=50; tl0=0x66; /初始频率1khz定时1ms th0=0xfc; tl1=0x33; /初始占空比50定时0.5ms th1=0xfe; tmod=0x11; /定时器1和定时器0工作在方式1,的定时模式 it0=0; /选择int0为低电平触发方式 ex0=1; /外部中断0允许 et0=1; /定时器1和定时器0中断允许 et1=1; ea=1; /系统中断允许 tr0=1; /定时器1和定时器0开始定时 tr1=1;/* 发送数据*/void send(uchar d) sbuf=d; while(!ti); ti=0; /* 显示子程序*/void display(uint pl,uchar zkb) uchar a,b,c,d,e,m,n; a=pl/10000; /分离频率的各位数值 b=pl/1000; b=b%10; c=pl/100; c=c%10; d=pl%100; d=d/10; e=pl%10; if(a=0) /频率显示的高位灭零 a=10; if(b=0) b=10;if(c=0) c=10; if(d=0) d=10; if(e=0)e=10; m=zkb/10; /分离占空比各位数值 n=zkb%10; if(m=0) m=10; /占空比显示的高位灭零 if(n=0)n=10; send(tabla); send(tablb); send(tablc); send(tabld); send(table); send(0x02); /频率和占空比中间加一横线“-”以示区别 send(tablm); send(tabln); delay1ms(200); delay1ms(200);/延时开键盘中断,处理好(避免又利用)连击问题/* 键盘扫描(线反法)*/void key_scan() interrupt 0 /键盘扫描用外中断0 uchar scancode,keycode,i; float tc0,tc1; ex0=0; /关中断 delay1ms(5); scancode=0xef; /键盘扫描码,采用逐行扫描的方法 while(scancode!=0xff) key_port=scancode; /输入扫描码,扫描p1.4对应的行 keycode=key_port; /读出数据,看是否在此行上的某列键盘被按下 if(keycode&0x0f)!=0x0f) break; /扫描到按下的键,则退出 scancode=(keycode1)|0x0f; /否则,更新扫描码继续扫描 keycode=keycode; for(i=0;i15000) pl=15; if(i=2) /按键为2号,频率减1 pl-; if(pl15000) pl=15; if(i=4) /按键为4号,频率减100 pl=pl-100; if(pl99) zkb=1; if(i=2) /按键为2号,占空比减1 zkb-; if(zkb1) zkb=99; if(flag=3) /状态返回,正常工作 flag=0; /清状态标志tc0=(length-fosc/(12*pl)+0.5); /频率定时初值tc1=(length-(fosc*zkb)/(12*100*pl)+0.5); /占空比定时初值timer0_l=(uint)tc0/256; /计算定时器0和定时器1的初值timer0_h=(uint)tc0%256; timer1_l=(uint)tc1/256;timer1_h=(uint)tc1%256; display(pl,zkb); key_port=0x0f;/给键盘扫描口赋初值,以便下次按键正确读入 ex0=1; /开中断/* 定时器中断子程序*/void timer0_pl() interrupt 1 /频率定时器0中断 tr1=1;/启动定时器1,占空比定时 tl0=timer0_l; th0=timer0_h; output=1; /输出高电平void timer1_pl() interrupt 3 /占空比定时器1中断 tr1=0;/定时器1停止 tl1=timer1_l; th1=timer1_h; output=0; /输出高电平/* 主函数*/void main() uint pl0=0; uchar zkb0=0; system_init(); /系统初始化 while(1)/死循环,显示频率和占空比 if(flag=0) /状态0时,正常显示频率和占空比 display(pl,zkb); if(flag=1) /状态1时,频率调整状态,频率闪烁 display(pl0,zkb); display(pl,zkb); if(flag=2) /状态2时,占空比调整状态,占空比闪烁 display(pl,zkb0); display(pl,zkb); 结 束 语本系统就是充分利用了8051和8255芯片的i/o引脚。系统统采用msc-51系列单片机intel8051和可编程并行i/o接口芯片8255a为中心器件来设计交通灯控制器,实现了能根据实际车流量通过8031芯片的p1口设置红、绿灯燃亮时间的功能;红

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论