网站大量收购独家精品文档,联系QQ:2885784924

单片机课程设计(1).docVIP

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

摘要

随着电子技术及信息技术的高速发展,单片机技术作为其中的一个分支广泛地应用于在工业生产以及生活中,成为现代化电子系统中最重要的智能化工具,因而掌握一定的单片机技术对与理工科学生来说十分重要。本课程设计正是用AT89C51单片机接一个数模转换器构成的单片机波形发生器,通过软件控制有选择性地输出产生较清晰的方波、三角波、阶梯波和正弦波4种波形信号,用示波器可以显示输出的波形,波形的周期可通过一个电位器可以调节,本设计电路具有线路简单、结构紧凑、性能优越等特点。

关键词:AT89C51单片机;信号发生器;波形

目录TOC\o1-3\h\z\u

1课程描述 1

2设计原理 1

3硬件设计 2

3.1按键接口电路 3

3.2D/A转换电路 3

3.3单片机控制电路 4

3.4总体电路 4

4软件设计 5

4.1主程序流程 5

4.2子程序流程 7

方波程序流程 7

阶梯波程序流程 8

三角波程序流程 9

正弦波程序流程 10

4.3源程序 11

5.波形仿真 15

5.1正弦波的仿真 15

5.2方波的仿真 15

5.3阶梯波的仿真 16

5.4三角波的仿真 17

总结 18

参考文献 19

1课程描述

信号发生器是一种常用的信号源,广泛应用于科学研究、生产实践和教学实验等领域。特别是在通信系统的科研实验中,常常需要用到多种不同频率和相位的信号,如正弦波、三角波、方波和阶梯波等,因此多功能信号发生器应用十分广泛。在数字化时代的今天,经典的由模拟电路组成的信号发生器已经渐渐远离了人们,取而代之的是电路简洁、功能多样、功耗低的数字电路。在以后的时间里,将会有越来越多的数字化的信号发生器运用在各种科学技术领域和工程实践中,给人们的日常生活带来更多的便利。

本文是做基于单片机的信号发生器的设计,将采用编程的方法来实现三角波、阶梯波、方波、正弦波的发生。根据设计的要求,对各种波形的频率和幅度进行程序的编写,并将所写程序装入单片机的程序存储器中。在程序运行中,当接收到来自外界的命令,需要输出某种波形时再调用相应的中断服务子程序和波形发生程序,经电路的数/模转换器处理后,从信号发生器的输出端口输出。

2设计原理

数字信号可以通过数/模转换器转换成模拟信号,因此可通过产生数字信号再转换成模拟信号的方法来获得所需要的波形。89C51单片机本身就是一个完整的微型计算机,具有组成微型计算机的各部分部件:中央处理器CPU、随机存取存储器RAM、只读存储器ROM、I/O接口电路、定时器/计数器以及串行通讯接口等,只要将89C51再配置键盘及其接口、显示器及其接口、数模转换及波形输出、指示灯及其接口等四部分,即可构成所需的波形发生器,其信号发生器构成原理框图如图2.1所示。

图2.1原理图

89C51是整个波形发生器的核心部分,通过程序的编写和执行,产生各种各样的信号,进行各种功能的转换和信号幅度的调节。当数字信号经过接口电路到达转换电路,将其转换成模拟信号也就是所需要的输出波形。

利用单片机产生方波、正弦波、三角波和锯齿波等信号波形,信号的频率和幅度可变。将一个周期的信号分离成256个点(按X轴等分),每两点之间的时间间隔为T,用单片机的定时器产生,其表示式为:T=T/256。

如果单片机的晶振为12MHz,采用定时器方式0,则定时器的初值为:

X=213—T/Tmec(2.1)

定时时间常数为:

TL=(8192—T)/MOD256(2.2)

TH=(8192T)/256(2.3)

MOD32表示除32取余数

正弦波的模拟信号是D/A转换器的模拟量输出,其计算公式为:

Y=(A/2sint)+A/2(其中A=VREF)(2.4)

t=NT(N=1~256)(2.5)

那么对应着存放在计算机里的这一点的数据为:

文档评论(0)

199****4744 + 关注
实名认证
文档贡献者

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

版权声明书
用户编号:7002121022000045

1亿VIP精品文档

相关文档