单片机波形发生器课程设计报告.doc

  1. 1、本文档共26页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
信息科学与技术学院 波形发生器 课程设计报告 题目名称: 波心发生器 学生姓名: 学 号: 专业年级: 10级电信1班 指导教师: 时 间: 2013-07-6 目录 1. 设计要求 2 2.设计方案 2 2.1总体方案 2 2.2幅度频率调节方案 2 2.3工作原理 3 3. 设计内容 4 3.1硬件原理电路图的设计及分析 4 3.1.1单片机接口 4 3.1.2矩阵按键 5 3.1.3指示灯 5 3.1.4数模转换 6 3.2程序设计与分析 6 3.2.1初始化 6 3.2.2功能选择 7 3.2.3频率(周期)和幅度设置 7 3.2.4波形产生 8 4. 仿真结果 10 5. 心得体会 11 6. 附录 11 6.1源程序 11 6.2仿真电路、PCB图和开发板 22 设计要求 设计一个如下波形发生器: 1.可产生锯齿波、三角波、方波; 2.通过三个按键选择输出的波形,可选择不同幅值和频率; 3.需要在仿真软件上绘制设计电路图,并仿真实现 4.使用开发板设计实现,可外接示波器观察结果 5.开发板设计与仿真设计尽可能一致 2.设计方案 2.1总体方案 采用AT89C51单片机和PCF8591数模转换器生成波形,生成的波形比较纯净。它的特点是可产生任意波形,频率容易调节,稳定性好、操作方便、体积小、耗电少。 经比较,方案该既可满足课程设计的基本要求又能充分发挥其优势,电路简单,易控制,性价比高,所以采用该方案。 2.2幅度频率调节方案 方案1:事先在数据存储区内存放一批数组,当改变频率时便调用数组赋值给频率幅度。该方案的优点是程序简单,执行效率较高。缺点是不能任意调节参数,并且需要事先进行计算。如果存储的数组太少,则可调范围就很小,如果存储数据太多,则计算量会大大增加,而且还可能占满数据区,而使系统无法运行。 方案2:设置两个变量来代表周期幅度,当频率幅度需要改变时只用改变这连个变量的数值并用数模转换即可。 经比较,方案二的参数可以任意调节,频率幅度可任意控制,能够满足设计要求 2.3工作原理 数字信号可以通过数/模转换器转换成模拟信号,因此可通过产生数字信号再转换成模拟信号的方法来获得所需要的波形。AT89C51单片机本身就是一个完整的微型计算机,具有组成微型计算机的各部分部件:中央处理器CPU、随机存取存储器RAM、只读存储器ROM、I/O接口电路、定时器/计数器以及串行通讯接口等,只要将AT89C51再配置键盘及、数模转换及波形输出等部分,即可构成所需的波形发生器,其信号发生器构成系统框图如下图所示 图一 设计内容 3.1硬件原理电路图的设计及分析 3.1.1单片机接口 图二 按键由P2口连接按键,P0口连接LED指示灯,p3.6和P3.7分别输出时序和脉冲信号。 3.1.2矩阵按键 图三 键盘开关KEYIN端默认是高电平信号,KEYOUT端由程序控制输出。当KEYOUT输出低电平时,通过检查KEYIN端是否为低电平即可判断是否按键。如果KEYOUT输出高电平,KEYIN端任然是高电平,故而按键无效 按键位置对应功能 输出方波 输出三角波 输出锯齿波 退出波形输出 增大周期 减小周期 退出周期设置 ---------------------- 增大幅度 减小幅度 退出幅度设置 ---------------------- 当某个波形输出时,只有退出波形输出才能进行其他操作或选择输出其他波形。 当设置周期时,如果不退出周期设置,则不能进行其他操作。 当设置幅度时,如果不退出幅度设置,则不能进行其他操作。 3.1.3指示灯 图四 为便于操作,在方案中设计了显示灯。当灯亮时,从左到右依次表示等待操作、正执行某个功能、修改频率或幅度、等待幅度值修改、等待频率值修改、方波输出、三角波输出、锯齿波输出 3.1.4数模转换 图五 SDA连接单片机P3.6口,SCL连接单片机P3.7口。他们对应的是时钟和脉冲信号的输出。PCF8591是数模转换器件,AOUT口输出的是转换后的模拟信号波形。 3.2程序设计与分析 3.2.1初始化 3.2.2功能选择 3.2.3频率(周期)和幅度设置 (1)频率(周期)设置 主程序的调用方式: pinLvStop是按键信号,默认高电平 频率(周期)设置程序: if(pinLvJia==0) //当按下周期加信号键 { modifyLed=0; //参数修改指示灯信号,0表示有修改请求,灯亮 if(pinLv255) //当周期已达到上限,仍要增加时,设置为最小值 pinLv=5; el

文档评论(0)

smdh + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档