用AT89S52设计具有定量脉冲输出功能脉冲信号发生器.docVIP

用AT89S52设计具有定量脉冲输出功能脉冲信号发生器.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
用AT89S52设计具有定量脉冲输出功能脉冲信号发生器

用AT89S52设计具有定量脉冲输出功能脉冲信号发生器   摘 要 用单片机设计脉冲信号发生器,具有定量脉冲、连续脉冲两种输出功能,给出电路图和详细程序框图。   关键词 单片机;定量脉冲;连续脉冲   中图分类号 TN782 文献标识码 B 文章编号 1671-489X(2008)18-0046-03      脉冲信号发生器是一种常用的电子仪器,通常这种仪器只能输出连续脉冲或单脉冲。本文介绍的脉冲信号发生器不但能输出连续脉冲,而且能够根据设定输出规定数目的脉冲,给教学、科研工作带来方便。该仪器由于采用单片机设计,电路十分简单。经过一段时间的使用,证明其性能稳定、工作可靠,能满足实验教学和学生实验的需要。下面对其性能、电路和软件分别详细说明。      1 主要技术指标      #8226;脉冲幅度:5 V   #8226;脉冲占空比:50%   #8226;定量脉冲数量范围:1~9 999   #8226;定量脉冲数量设定:十进制按键方法   #8226;定量脉冲周期:100 μs   #8226;连续脉冲频率:1 Hz、10 Hz、50 Hz、100 Hz、500 Hz、1 KHz、2 KHz   #8226;4位十进制数码显示(定量脉冲数量或连续脉冲频率)      2 电路结构         电路如图1所示。AT89S52是一种低功耗、高性能CMOS8位单片机,具有灵巧的8位CPU、8 K可编程Flash存储器,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,3个16位定时器/计数器,1个6向量2级中断结构,全双工串行口,片内晶振及时钟电路,是脉冲发生器的核心部件。4个CD4511对CPU输出的BCD码进行译码,并驱动4个LED显示定量脉冲数目或连续脉冲频率。CD4009片内有6个反相输出的缓冲器,用来提高发生器的负载能力并获得正、负2种脉冲输出(OUT1输出正脉冲,OUT2输出负脉冲)。S0~S9是输入按钮,用来设定定量脉冲的数目或连续脉冲的频率。S10是电路的复位按钮。S11是定量脉冲的输出控制按钮,每按动一次,在电路的输出端即输出一组规定数量的脉冲。S12是定量脉冲和连续脉冲2种工作方式的控制选择开关,位置1电路输出定量脉冲,位置2输出连续脉冲。12 MHz晶体B和C2、C3组成时钟电路。R1、C1构成复位电路。R2~R9是CPUP0口的上拉电阻。D1~D10十只开关二极管的正极均与CPU外中断1的引脚P3.3相连接。由图可知,当有输入按钮被按下时,除向CPU对应的输入端输入低电平外,外中断1的引脚也获得低电平,从而引起中断并执行相应的中断服务程序。整流桥和稳压集成电路7805等构成直流稳压电源,为整机提供+5 V直流电压。         3 软件设计      3.1 主程序主程序流程框图如图2所示。程序首先设置堆栈指针,然后判断CPU引脚P3.6是高电平还是低电平,高电平执行连续脉冲程序,低电平执行定量脉冲程序。   连续脉冲程序首先使电路输出频率为1 Hz的脉冲信号,之后按动开关S0~S9中的任何一个,CPU外中断1引脚P3.3均会变成低电平引起中断,输出频率会按技术指标给出的顺序依次变化。脉冲的形成靠定时器T0溢出中断时CPU引脚P3.7电平跳变实现。脉冲的频率(周期)由定时器初值决定。在时钟电路采用12 MHz晶体的情况下,定时器输入脉冲的频率为1 MHz,即周期为1 μs。对于1 Hz的连续脉冲,定时器的定时时间应为0.5 S(500 000 μs),而16位定时器T0最大定时时间为216=65 536 μs,是无法实现的。为此,令T0的定时时间为50 000 μs,每10次T0溢出中断CPU引脚P3.7电平跳变一次,从而得到1 Hz脉冲输出。计算可知,其他频率不存在此问题。对于T0,不同的脉冲频率对应不同的初始值,有关的数据如表1所示(为定时准确,T0初值有修正)。      在主程序连续脉冲部分设置T0为16位定时器工作方式,T0中断次数为10,置T0初值为3CB6H;令LED显示1 Hz,标志单元初值为0;设外中断1为高优先级,低电平触发,允许外中断1、T0定时中断,开中断。最后查询P3.6是否变为低电平,如果变为低电平,转移执行定量脉冲程序,否则继续执行连续脉冲程序,等待T0中断。   执行定量脉冲程序时,先关闭T0,然后将脉冲输出端P3.7置成高电平;P0口以及P2.6、P2.7置1,为CPU接收按键信号做好准备;RAM中的4个标志位置1;显示缓冲区30 H~33 H置初值,脉冲数量缓冲区50 H、51 H两个单元清零;设置外中断0、外中断1,低电平触发;显示缓冲区中的数据从P1口输出送译码显示电路,以显示输

文档评论(0)

151****1926 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档