欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOC文档下载  

    可编程脉冲信号发生器的设计毕业设计.doc

    • 资源ID:3937118       资源大小:1.18MB        全文页数:71页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    可编程脉冲信号发生器的设计毕业设计.doc

    毕业设计论文可编程脉冲信号发生器的设计摘 要 基于单片机的可编程脉冲信号发生器,通过4x4的非编码矩阵键盘键入脉冲信号的指标参数频率、占空比和脉冲个数,在单片机的控制处理下发出满足信号指标的脉冲信号,并在液晶显示屏的制定位置显示出相关参数。复位电路采用上电复位和手动复位的复合复位方式,保证单片机在上电和程序运行进入死循环时,单片机均能正常复位。利用在工作方式1下的定时器和计数输出低频脉冲信号,以及在工作方式2下能够自动重复赋初值的定时器输出高频脉冲信号,从而使频率和占空比满足指标要求。通过程序设计,使单片机每次发出信号后等到重置信号进行下一次脉冲信号的输出,有效的提高了单片机的使用效率。本课题设计利用单片机技术,通过相应的软件编程和较简易的外围硬件电路来实现,其产生的脉冲信号干扰小,输出稳定,可靠性高,人机界面友好,操作简单方便,成本低,携带方便,扩展性强。关键的是,脉冲信号频率、脉冲个数和脉冲占空比可调节,可通过键盘输入并由显示器显示出来。本课题设计所要达到的指标要求:(1)脉冲信号频率0.1HZ到50KHZ可调并在液晶显示屏指定位置显示。(2)脉冲信号个数0到9999可调并在液晶显示屏指定位置显示。(3)脉冲信号占空比任意可调并在液晶屏显屏指定位置示出来。关键词:单片机,脉冲信号,频率,脉冲个数,占空比 Programmable pulse signal generator designABSTRACTThe programmable pulse signal generator based on single chip, through the 4x4 non-coding matrix keyboard inputing pulse signal parameters of frequency, duty cycle and pulse number, pulse signal is sent to meet the targets of signal processing chip.The related parameters are displayed on the setting position on the liquid crystal. The reset circuit by power-on reset and manual reset, ensure the SCM in power and run into dead circulation can be reset. Use in work mode 1 timer and counter output low frequency pulse signal, and in work mode 2 to timer output high frequency pulse signal ,automaticly repeat initialization, so as to make the frequency and duty ratio meet the requirements. Through the program design, the microcontroller each signal and then wait for the reset signal, the signal at the output of the pulse next time, effectively improve the efficiency in the use of single-chip microcomputer.The subject of the use of single-chip technology, which achieved through the corresponding software and the simple peripheral hardware circuit. The advantages of which are the small interference of the pulse signal, output stability, high reliability, friendly man-machine interface, easy operation, low cost, portability, scalability strong. The keys, pulse frequency, pulse number and pulse duty ratio are adjustable, which can be inputed through the keyboard and displayed through LCD.The requirements of this topic design:(1) The pulse signal frequency of 0.1HZ to 50KHZ is adjustable and can be displaied on the specify location in the LCD screen.(2) Pulse signal number of 0 to 9999 is adjusted and can be displaied on the specify location in the LCD screen.(3) Pulse duty ratio is adjustable and can be displaied on the specify location in the LCD screen.KEY WORDS: single chip computer,pulse,hardware circuit,pulse number,duty ratio目录前言1第1章可编程脉冲发生器的相关模块41.1 AT89C51单片机41.1.1 AT89C51单片机的结构41.1.2 AT89C51单片机的引脚功能51.1.3 AT89C51单片机的中断系统91.1.4 AT89C51单片机的定时/计数器111.2 SMC 1602A LCD液晶显示屏12第2章 可编程脉冲信号发生器的硬件设计142.1 硬件系统的总体设计142.1.1 系统的总体框图142.1.2 原理阐述142.2 硬件系统各部分构成142.2.1电源电路142.2.2矩阵键盘152.2.3脉冲信号输出电路162.3系统电路原理图19第3章 可编程脉冲信号发生器的软件设计203.1矩阵键盘的程序设计203.2液晶屏显示的程序设计213.3脉冲生成的程序设计233.3程序流程图243.3.1主程序流程图243.3.2键盘分析子程序流程图253.3.3显示子程序流程图263.3.3数值处理子程序流程图273.3.3脉冲信号生成子程序流程图283.3.源程序28第4章 可编程脉冲信号发生器的程序编译、调试及仿真294.1系统程序的编译294.2系统调试304.2.1硬件调试304.2.2软件调试304.3系统仿真324.3.1系统仿真图324.3.2系统的改善35结论36谢 辞37参考文献38附录39外文资料翻译57前言信号发生器是一种能产生标准信号的电子仪器,是工业生产和电工、电子实验中经常使用的电子仪器之一。信号发生器的种类比较多,性能也千差万别,但它们都可以产生不同频率的调频波信号、调幅波、正弦波,以及各种锯齿波、三角波、方波和正负脉冲波等信号。脉冲信号发生器作为一种常见的应用电子仪器设备,一般可以完全由硬件电路搭建而成,如采用555振荡电路发生方波的电路即是可行的方法之一,而不依靠单片机来实现。但是这种电路存在波形质量差,控制难度大,调整范围小,电路结构复杂以及体积大等缺点。在科学研究和生产实践中,如工业生产过程控制、生物医学、地震模拟、机械振动等领域,也常常需要用到低频信号源。而由硬件电路构成的低频信号发生器性能难以令人满意,而且由于低频信号源所需的RC要很大,体积大,漏电,大电阻、大电容在制作上亦有很大的难度,损耗显著更是其致命的弱点。一旦工作需求功能有增加,则电路复杂程度也会大大增加。 在现代测试与控制中常常需要频率可调的脉冲发生器,利用单片机内可编程定时/计数器即可实现。脉冲信号发生器是电子测量中的一种重要仪器,随着微电子技术的高速发展,脉冲信号发生器向着集成化、数字化、智能化的方向发展。利用单片机采用程序设计方法来产生信号,其频率底线很低,具有线路相对简单,结构紧凑,价格低廉,频率稳定度高,抗干扰能力强,用途广泛等优点,并且能够对波形进行细微调整。改良波形,使其满足系统的要求。只要对电路稍加修改,调整程序,即可完成功能的升级。在数字电路或系统中常常需要各种脉冲波形,例如时钟脉冲、控制过程中的定时信号等。单片机是实现各种控制策略和算法的载体。在现代测试与控制中常常需要频率可调的脉冲信号发生器,利用单片机内可编程定时/计数器可以实现。本课题设计运用单片机技术,通过相应的软件编程和较简易的外围硬件电路设计来实现,和用分立式元件设计的脉冲发生器相比而言,其产生的脉冲信号干扰小,输出稳定,可靠性高,人机界面友好,操作简单方便,成本低,携带方便,扩展性强。关键的是,脉冲信号频率、占空比和脉冲个数可以调节,可通过键盘输入并由显示器显示出来。本课题运用单片机技术解决以下问题:1.清楚单片机的中断、定时/计数等常用功能,产生频率、个数、占空比可调整的脉冲信号。 2.画出以单片机为核心,以矩阵键盘为输入设备,以液晶显示屏为显示设备产生脉冲信号的硬件原理电路图。 3画出相应的软件流程图,并写出键盘驱动、液晶显示屏驱动以及产生频率、个数、占空比可以调整的C语言源程序。 4指标要求:(1)脉冲信号频率参数由键盘输入频率范围0.1HZ到50KHZ可调并由液晶显示屏在指定位置显示。(2) 脉冲信号个数参数由键盘输入脉冲个数0到9999可调并由液晶显示屏指定位置显示。 (3) 脉冲信号占空比参数由键盘输入任意占空比的脉冲信号,并由液晶屏指定位置显示。 5 用PROTEUS软件做出硬件电路仿真调试结果,并加以说明。针对不同的问题,有针对性的采用不同的方法解决。1.查阅形成脉冲信号的相关资料,结合所学51系列单片机的基础知识,用工作方式1下的定时加计数的方法实现对低频信号指标的控制,用自动重复赋初值的工作方式2下的定时器实现对高频信号指标的控制,用计数的方法实现对生发信号个数的控制。2.查阅与单片机最小系统硬件开发相关的资料,从网上那个下载单片机应用实例,在PROTEUS软件上进行仿真实验,熟悉硬件开发环境,掌握电气原理图绘制的基本原理,对程序设计过程有更深层次的了解。3.查看与C语言程序设计相关的资料,主要研究程序设计的基本方法,掌握C语言中基本指令的使用方法,认识程序设计过程中关键指令使用时的注意事项,熟悉程序开发设计的过程。4.在完成电气原理图设计及C语言源程序设计后,通过在PROTEUS和KeiL uVision4 软件上进行联机仿真调试,发现电气原理图设计和C语言程序设计中存在的问题,查看问题出现的原因,并在此基础上进行完善;通过PROTEUS和KeiL uVision4 软件上进行联机仿真调试,查看生成的脉冲信号并与指标要求进行对比,在KeiL uVision4软件上进行单步运行找出误差出现的原因,通过对程序的结构或者所用的指令进行调整进一步完善程序,再进行联机仿真调试,直到误差在允许的范围内,通过进一步整理,完成在完成电气原理图设计及C语言源程序设计。第1章 可编程脉冲发生器的相关模块1.1 AT89C51单片机1.1.1 AT89C51单片机的结构AT89C51单片机的内部结构包括CPU、存储器、并行接口、串行接口、定时计/数器,其系统结构图如图1-1所示。在一个芯片上集成了单片机的各个组成部分,其功能如下:(1)一个八位中央处理器CPU,包括可以进行8位算术运算和逻辑运算的AIU单元、8位累加器ACC、寄存器B和程序状态寄存器PSW等。(2)片内数据存储器RAM(128B),用于存放可以读/写的数据,如运算中间的结果、最终结果或预显示的数据等。(3)片内程序存数器ROM/EPROM,用于存放原始数据、程序和表格。(4)四个8位并行I/O接口P0-P3端口,每个接端口可用于输入或输出。 T0 T1STRRAM计数/定时器时钟电路EOM并行接口CPU 内部总线中断系统串行接口 P0 P1 P2 P3 TXD RXD 图1-1 AT89C51单片机系统结构图(5)两个16位定时/计数器,其中每一个定时/计数器可以设置成为计数方式用来对外部事件计数,也可以设置成为定时方式并且可以根据定时或计数的结果去控制计算机。(6)五个中断源,具有两个优先级别的中断嵌套结构,两个外部中断源和,三个内部中断源即两个定时计数中断和一个串行口中断。(7)一个全双工通用异步接受发送器(URAT)串行接口,用于实现单片机与单片机或者单片机与其他计算机之间的串行通信。(8)片内振荡器和时钟发生电路,时钟振荡电路是控制器的核心,为控制器提供时钟脉冲信号。(9)单片机允许的最高工作频率是24MHZ。AT89C51单片机可降至0HZ的静态逻辑操作,并支持两个软件的节电工作模式3。 1.1.2 AT89C51单片机的引脚功能1. 电源引脚GND和VCC(1)VSS(20 脚):接地端。(2)VCC(40 脚):电源端。正常操作及对Flash ROM编程和验证时接+5V电源。 图1-2 AT89C51管脚图2. 外接晶体引脚XTAL1和XTAL2(1) XTAL1(19 脚):接外部晶体和微调电容的一端。在AT89C51片内,它是振荡电路反相放大器的输入端以及内部时钟发生器的输入端,这个放大器构成了片内振荡器。当采用外部振荡器时,此引脚引入外部时钟脉冲信号。要检查AT89C51的振荡电路是否能够正常工作,可以用示波器查看XTAL2端口是否有脉冲信号输出。(2) XTAL2(18 脚):接外部晶体和微调电容的另一端。在AT89C51片内,它是振荡电路反相放大器的输出端,当采用外部振荡器时,此引脚应该悬空。3. 控制信号引脚RST、ALE/ 、和/VPP(1) RST(9 脚):复位信号输入端,高电平有效。当振荡器工作时,在此引脚上出现连续两个机器周期以上的高电平,就可以使单片机完成复位。(2) ALE/ (30 脚):地址锁存允许信号。当AT89C51上电正常工作后,ALE端不断向外输出正脉冲信号,此信号频率为振荡器频率的1/6。CPU访问外存储器时,ALE输出信号作为锁存低8位地址的控制信号。AT89C51在并行扩展外部存储器(包括并行扩展I/O 口)时,P0口用于分时传送低8位地址和数据信号。当ALE 信号有效时,P0口传送的是低8位地址信号;ALE信号无效时,P0口传送的是8位数据信号。在ALE信号的下降沿,锁定P0口传送的低8位地址信号。这样,可以实现低8位地址与数据的分离。ALE信号也可以用作对外输出的时钟或定时信号。需注意的是,每当访问外部数据存储器时,都将跳过一个ALE脉冲。ALE端可以驱动(吸收或输出电流)8 个LS型TTL(低功耗甚高速TTL)负载。此引脚的第2功能是在对片内带有4KB Flash ROM的AT89C51编程写入(固化程序)时,作为编程脉冲信号的输入端。(3) (29 脚):程序存储允许输出信号端。当AT89C51由片外部程序存储器读取指令(或常数)时,每个机器周期内两次有效(即输出两个有效脉冲)。但在这段时间内,每当访问外部数据存储器时,这两次有效的信号将不再出现。端也可以驱动8个LS型TTL负载。想要检查一个AT89C51小系统上电后CPU是否能够正常工作,可以用示波器查看端口是否有脉冲信号输出。如果有,说明其基本上能够正常工作;否则,说明其不能正常工作。(4) /VPP(31 脚):外部程序存储器地址允许输入端/固化编程电压输入端。当引脚接高电平时,CPU访问片内FLASH ROM并去执行内部程序存储器中的指令;但当PC值超过4KB(1FFFH)时,将会自动跳去执行外部程序存储器中的指令。当端接低电平时,CPU只访问并执行外部程序存储器中的程序,而不管是否有片内程序存储器。需要注意的是,如果保密位LB1被编程,复位时在内部会锁存端口的状态。4. 输入/输出引脚P0口、P1口、P2口、P3口(1) P0口(P0.0- P0.7共8条引脚,即39-32 脚):P0口是一组漏极开路的8位准双向IO端口,也即地址数据总线复用口。当P0口作为输入端口使用时,应先向口锁存器(地址80H)写入全“1”,此时P0口的全部引脚悬空可当作高阻抗输入。作为输入端口使用时,要先对端口写全“1”,这就是准双向口的含义。当作为输出端口用时,每位能吸收电流的方式驱动8个TTL负载。对端口写全“1”,可以当作高阻抗输入端口使用。在CPU访问片外存储器时,P0口分时提供低8位地址和8位数据的复用总线。在此期间,P0口内部的上拉电阻有效。在Flash ROM编程时,P0口接收指令字节;而在校验程序时,则输出指令字节。校验时,要求外接上拉电阻。 (2) P1口(P1.0 - P1.7共8条引脚,即1 - 8脚):P1是一个带内部上拉电阻的8位双向IO端口。P1口的输出缓冲器可驱动(吸收或输出电流)4个LS型TTL输入。对端口写“1”,通过内部上拉电阻把端口拉升到高电平,此时可以作为输入端口使用。当P1口用作输入端使用时,因为存在内部上拉电阻,某个引脚被外部信号拉低时该引脚会输出一个电流(IIL)。在对Flash ROM编程或者程序校验时,P1口接收低8位地址。 (3) P2口(P2.0 - P2.7共8条引脚,即21 - 28脚):P2是一个带有内部上拉电阻的8位双向I/ 端口,P2的输出缓冲器可驱动4个LS型TTL输入。对端口写“1”, 通过内部上拉电阻把端口拉升到高电平,此时可以当作输入端端口使用。当作为输入端口使用时,因为存在内部上拉电阻,某个引脚被外部信号拉低时该引脚会输出一个电流(IIL)。在访问外部程序存储器或16位地址的外部数据存储器时,P2口送出高8位地址数据。在访问8位地址的外部数据存储器时,P2口引脚上的内容,在整个访问周期不会发生改变。Flash编程或程序校验期间,P2也可以可接收高位地址和一些控制信号。(4) P3口(P3.0 - P3.7 共8 条引脚,即10 - 17 脚):P3口是一组带有内部上拉电阻的8位双向IO端口。P3口输出缓冲器可驱动4个LS型TTL输入。对端口写入“1”时,它们被内部的上拉电阻把端口拉升到高电位,这时可以当作输入端口用。当作为输入端口使用时,因为存在内部上拉电阻,某个引脚被外部信号拉低时该引脚会输出一个电流(IIL)。表1-1 P3口的第二功能端口第二功能名称P3.0RXD串行数据接收端P3.1TXD串行数据发送端P3.2外部中断0申请输入端P3.3 外部中断1申请输入端P3.4T0定时器0计数输入端P3.5T1定时器1计数输入端P3.6外部RAM写选通P3.7外部RAM写选通在对Flash ROM编程或者程序校验期间,P3口还可以接收一些控制信号。在AT89C51中,P3端口的还用于一些第二功能7。P3口第二功能如上页表1-1所示。1.1.3 AT89C51单片机的中断系统单片机在某一时刻只能处理一个任务,当多个任务同时要求单片机处理时,这一要求应该怎么实现呢?通过中断系统可以实现多个任务的资源共享。所谓的中断就是,当CPU正在处理某项事务的时候,如果外界或者内部发生了紧急事件,要求CPU暂停正在执行的工作转去处理这个紧急事件,待处理完后,再回到原来停止工作的地方,继续执行原来被中止的程序,这个过程称作中断。从中断的定义我们可以看到中断应具备中断源、中断响应、中断返回三个要素。中断源发出中断请求,单片机对中断请求进行响应,当中断响应完成后进行中断返回,返回被中断的地方继续执行原来被中断的程序。当CPU查询到中断请求时,由硬件自动产生一条LCALL指令。执行LCALL指令时,首先将PC内容压入堆栈进行断点保护,再把中断入口地址装入PC,使程序跳转到相应的中断区入口地址。MCS-51单片机的中断系统有5个中断请求源,具有2个中断优先级,可实现2级中断服务程序的嵌套。MCS-51中断系统5个中断请求源分别如下:(1)INT0:外部中断请求0,由INT0引脚输入,中断请求标志为IE0;(2)INT1:外部中断请求1,由INT1引脚输入,中断请求标志为IE1;(3)T0:定时器/计数器0的溢出中断请求,中断请求标志为TF0;(4)T1:定时器/计数器1的溢出中断请求,中断请求标志为TF1;(5)TXD/RXD:串行口的中断请求,中断请求标志为TI或RI。 各中断源服务程序入口地址是固定的,如下: 中断源 入口地址 外部中断0-0003H 定时器/计数器T0-000BH 外部中断1-0013H 定时器/计数器T1-001BH 串行口中断-0023H 可以用关中断指令“CLR EA”来屏蔽所有的中断请求,也可以用开中断指令“SET EA”来允许CPU接收中断请求,每一个中断另有所指可以用编程独立地控制为允许中断或关中断状态,每一个中断源的中断级别均可用编程进行设置。中断系统结构如图1-3所示:IE0IE1+EX0 ET0EX1ET1ESPX0PT0 PX1PT1PSPS图1-3 AT89C51中断系统结构示意图AT89C51提供了5个中断源,两个中断优先级控制,可实现两个中断服务嵌套。当CPU支持中断屏蔽指令后,可将一部分或所有的中断关断,只有打开相应的中断控制位后,方可接收相应的中断请求。程序设置中断的允许或屏蔽,也可设置中断的优先等级。AT89C51 CPU在每一个机器周期按顺序去检查每一个中断源,在机器周期的S6按优先级处理所有被激活的中断请求,此时,如果CPU没有正在处理更高级别或者相同优先级的中断,或者现在的机器周期不是所执行指令的最后一个机器周期,或者CPU不是正在执行RETI指令或访问IE和IP的指令,CPU则去执行中断以外的操作。1.1.4 AT89C51单片机的定时/计数器在控制系统中,经常需要用实时时钟实现定时或延时控制,例如定时中断、定时检测、定时操作等。有的地方也要用到计数器对外部事件进行计数,例如自动化包装线中对产品进行计数。在计算机控制中,实现定时功能一般可采用软件定时、非编程的硬件定时和可编程硬件定时三种方法。可编程定时器可以通过软件来对定时时间进行修改,但定时是通过硬件来完成,以中断的方式通知CPU。因此功能强,使用方便灵活。AT89C51单片机有两个16位定时器/计数器,分别为定时器0(T0)和定时器1(T1)。它们都其有定时器和计数功能,可用作定时控制、精确延时,以及对外部事件的计数和控制,其中T1还可以作为串行口的波特率发生器。微处理器(CPU) TH1TL1TH0TL0TCONTMOD图1-4 MCS-51定时器/计数器结构框图AT89C51单片机内部的定时/计数器的结构如图1-4所示,定时器T0特性功能寄存器TL0(低8位)和TH0(高8位)构成,定时器T1由特性功能寄存器TL1(低8位)和TH1(高8位)构成。定时寄存器的工作方式由特殊功能寄存器TMOD控制,定时器T0和T1的启动和停止计数由特殊功能寄存器TCON控制。同时管理定时器T0和T1的溢出标志等由特殊功能寄存器TCON控制。程序开始运行时,需要对TL0、TH0、TL1和TH1进行初始化编程,来定义它们的工作方式和设置定时器T0和T1的计数初值。(1)计数器工作模式计数功能是对外来脉冲进行计数。AT89C51芯片T0(P3.4)和T1(P3.5)两个输入引脚,分别是这两个计数器的计数输入端。每当计数器的计数输入引脚的脉冲发生负跳变时,计数器当前值加1。(2)定时器工作模式定时功能也是通过计数器的计数来实现的,不过此时的计数脉冲来自单片机的内部,即每个机器周期产生1个计数脉冲,也就是每经过1个机器周期的时间,计数器当前值加1。AT89C51单片机的定时器/计数器具有4种工作方式(方式0、方式1、方式2和方式3),其控制字均在相应的特殊功能寄存器中,通过对它的特殊功能寄存器的编程,可方便地选择定时器2种工作模式和计数器4种工作方式。1.2 SMC 1602A LCD液晶显示屏单片机应用系统常需要连接键盘、显示器、打印机、A/D和D/A转换器等外设。其中,键盘和显示器是使用最频繁的外部设备,它们是构成人机对话的一种基本方式。 用LCD显示一个字符时比较复杂,因为一个字符由6×8或8×8点阵组成,既要找到和显示屏幕上某几个位置相对应的显示RAM区的8字节,又要使每字节的不同位为“1”,其它的为“0”,为“1”的点亮,为“0”的不亮,来组成这个特定的字符。图1-5 SMC 1602管脚图但对于内带字符发生器的控制器而说,显示字符就简单多了,可以使控制器工作在文本方式,根据在LCD上开始显示的行列号以及每行的列数找到显示RAM相对应的地址,设立光标,在此位置送上该字符对应的代码即可。 SMC 1602A LCD为16*2的液晶显示屏,支持字母和数字的ASCII码显示,即给LCD送相应数字和字母的ASCII码,保证正确时序,即可显示相应的字符。SMC 1602的管脚图如图1-5所示。 SMC 1602采用标准的16脚接口。各引脚具体说明如下:第1脚:VSS为电源地。第2脚:VDD接5V电源正极。第3脚:V0为液晶显示器对比度调整端。接地电源时,对比度是最高的;接正电源时,对比度是最低的(对比度太高时,会产生“鬼影”现象,这时对比度可以用一个10K的电位器进行调整)。第4脚:RS为寄存器选择端。高电平“1”时,选择数据寄存器;低电平“0”时,选择指令寄存器。第5脚:R/W为读写信号线。高电平“1”时,进行读操作;低电平“0”时,进行写操作。第6脚:EN端为使能端。第714脚:D0D7引脚,为8位双向数据端口。第1516脚:空脚或背灯电源。15脚为背光正极,16脚为背光负极。SMC 1602与单片机的连接图如图1-6所示。图1-6 SMC 1602与单片机连接图第2章 可编程脉冲信号发生器的硬件设计2.1 硬件系统的总体设计2.1.1 系统的总体框图基于AT89C51单片机的可编程脉冲信号发生器的系统框图如图2-1所示:MCS51控制脉冲输出及控制显示AT89C51液晶屏显示参数SMC1602驱动显示脉冲信号输出电源电路7805键盘输入图2-1 系统框图2.1.2 原理阐述可编程脉冲信号发生器以AT89C51单片机为核心,以矩阵键盘作为输入设备,以液晶显示屏SMC1602为显示设备,通过矩阵键盘将脉冲信号参数频率、个数、占空比送入AT89C51单片机,接着单片机进行数据处理,驱动液晶屏在指定的位置显示相关的参数;根据不同的脉冲信号参数指标采取不同的控制策略,生成满足指标要求的脉冲信号。为提高系统的抗干扰性,将脉冲信号通过端口P3.0经过555定时器构成的史密斯触发器输出。2.2 硬件系统各部分构成2.2.1电源电路如下页图2-2电源电路图所示,电源供电部分采用变压器降压、桥式整流电路整流、电容器滤波、三端稳压器7805稳压后供电。电源用220V市电经降压变压器TR1降压成8V交流电,然后经四个整流二极管(D1D4)组成的桥式整流电路变成直流电压,经C1滤波后送入7805芯片稳压成5V直流电源向液晶显示屏SMC1602、555定时器、单片机AT89C51等元器件供电。图2-2 电源电路图稳压器7805引脚图如图2-3所示: 图2-3 稳压器7805引脚图引脚功能为:1脚:输入。 2脚:接。 3脚:输出。 由于内部电流的限制,以及过热保护和安全工作区的保护,使它基本上不会损坏。如果能够提供足够的散热片,它们就能够提供大于1.5A输出电流。虽然是按照固定电压值来设计的,但是当接入适当的外部器件后,就能获得各种不同的电压和电流。2.2.2矩阵键盘键盘是一种输入装置,通过键盘上任一按键可以向单片机输入信息。按键开关是键盘的基本组成元件。 键盘结构的关键是如何把键盘上的每次按键动作转换成相应的ASCII码送到单片机。按编码方式的不同,可以将键盘分为全编码键盘和非全编码键盘。所谓全编码键盘,是每一个按键,通过全编码电路产生唯一对应的编码信息。这种全编码键盘响应速度快,但是以复杂的硬件电路为代价的,而且其复杂性随着按键数的增加而大大增加,价格贵。所谓非编码键盘,是利用简单的电路和软件配合来识别按键的位置(位置码),然后由单片机通过软件查表将位置码转换成需要的编码信息。虽然这种键盘响应速度不如全键盘快,但可以由CPU的处理速度来弥补9。这种键盘的优点是通过软件编码为键盘某些见的重新定义提供了极大的方便。考虑到本次设计的经济性与便携性,故采用非编码键盘作为可编程脉冲信号发生器的输入设备。非编码键盘结构图如图2-4所示。图2-4 非编码键盘结构图键盘上的按键一般排成行、列矩阵格式,每个交叉点上可接一个按键。在非编码键盘中,采用行扫描法来扫描识别按下的键。行扫描法的基本原理是,先有程序逐行对键盘进行扫描,再通过检测列的状态来确定按键的行列位置。2.2.3脉冲信号输出电路通过键盘将脉冲信号参数指标送入到AT89C51单片机。单片机从预设置空间中取出参数指标数据并加以处理,得到产生脉冲信号需要的数据,接着产生满足参数指标的脉冲信号。软件上,先调用显示子程序,关掉显示。然后调用显示子程序显示脉冲信号指标关键字频率(PL)、占空比(ZKB)、个数(NUM),提示用户输入脉冲信号参数指标。若没有按键或者发生窜键,则CPU处于等待状态,直到检测到有有效按键为止,这时调用按键分析子程序计算出被按按键的键值。脉冲信号输出电路图如图2-5所示。图2-5脉冲信号输出电路图按上述方式依次输入三组数据并求出各位数的键值,并且调用液晶屏显示驱动子程序,在液晶屏指定位置显示脉冲信号频率、占空比、脉冲个数信息。然后,调用脉冲生成子程序产生满足指标参数的脉冲信号。然后将流程回到脉冲生成子程序的开始处,准备产生下一个脉冲信号,这样周而复始,直到输出完要求个数的脉冲信号。最后,若检测到重置信号时返回主程序开始处,进行数据设定输出新周期的脉冲信号,否则程序将等待在主程序的结束处。其中,定时初值从特定缓冲区得到。定时初值的不同,就会得到不同的电平宽度,从而得到不同周期的脉冲,也就得到了不同频率的脉冲了。调整高低电平所占的时间,便可以改变脉冲信号的占空比。 考虑到周围电磁环境以及信号突变的输出脉冲信号的影响,这里将得到的脉冲信号经555定时器构成的施密特触发器输出。施密特触发器,具有回差电压特性,能将边沿变化缓慢的电压波形整形为边沿陡峭的矩形脉冲。图2-6 555定时器构成的施密特触发器(1)VI =0V时,vo1输出高电平。(2)当VI上升到时,Vo1输出低电平。当VI由继续上升,vo1保持不变。(3)当VI下降到时,电路输出跳变为高电平。而且在VI继续下降到0V时,电路的这种状态保持不变。图2-6中,R、VCC2构成另一输出端Vo2,其高电平可以通过改变VCC2进行调节12。 正是由于施密特触发器具有回差电压特性,可以有效的避免因电磁环境引起的小幅度电压突变造的脉冲信号的变化。此外,当施密特触发器输入端为低电平时,输出端为高电平;当施密特触发器输入端为高电平时,输出端为低电平,这样当输出占空比较大的脉冲信号时就能有效的减少单片机的能耗,延长单片机的使用寿命。如果要频繁的输出小占空比的脉冲信号,可以通过改变输出端口的预置值来实现。这也正体现出了本课题设计良好的经济性和可拓展性。2.3系统电路原理图以AT89C51单片机为核心,以矩阵键盘作为输入设备,以液晶显示屏SMC1602为显示设备。通过4*4矩阵非编码键盘将脉冲信号参数频率、个数、占空比送入AT89C51单片机,单片机调用数值处理子程序进行数据处理,再调用液晶屏驱动子程序驱动液晶屏在制定的位置显示脉冲信号相关的参数;根据不同的控制策略,生成不同指标要求的脉冲信号并通过端口P3.0端口送出单片机,将脉冲信号经555定时器构成的施密特触发器输出。系统电路原理图如图2-7所示:图2-7 系统电路原理图第3章 可编程脉冲信号发生器的软件设计3.1 矩阵键盘的程序设计通常键盘有编码和非编码两种,本次课题设计使用的是非编码键盘。键盘上的按键一般排成行、列矩阵格式,每个交叉点上可接一个按键。按键的作用只是使相应接点接通或断开,在相应程序配合下可产生被按按键的键码。采用非编码式键盘,CPU必须对所有按键进行监视,一旦发现有键下,CPU应通过程序加以识别,并转入相应的处理程序,录入相应的字符,字符对应关系如表3-1所示:表3-1 字符对应关系表0x0e(1列)0x0d(2列)0x0b(3列)0x07(4列)0xe0(1行)147#0xd0(2行)258*

    注意事项

    本文(可编程脉冲信号发生器的设计毕业设计.doc)为本站会员(文库蛋蛋多)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开