基于单板机的函数发生器.doc

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于单板机的函数发生器设计与开发 一、题义分析及解决方案 1.1题义需求分析: 需求分析: 函数发生器,首先要了解什么是函数,函数发生器的各个波形是如何产生的。函数发生器中的各个函数波形是通过傅里叶变换,以正弦函数为基波,和不同频率波形相互叠加而成的。如此,便能理解函数发生器为什么产生的波形是正弦波,三角波等等。每个波形的输出原理都不同,例如对于正弦波的输出是通过在一个周期内采样128个点,然后依次输出每个采样点的值,而对于三角波的输出是通过是先递增AL的值直到AL的值到达255时,再递减减到0时再依次递增。 然后根据题意所得可知函数发生器是一种仪器,它具有将现实世界的一些数字模型转化成计算机能表示和处理的波形,并能控制各种波形的顺序播放和有效调节波形频率和幅度的作用。因为波形要输出到示波器和通过开关的控制输入波形的播放故需要输入/输出接口部件,计算机处理的是数字信号而示波器处理的是模拟信号,所以在输入/输出接口部件和示波器之间加一个数/模转换器,通过计算机处理和数模转换后的信号很弱,需要通过放大器放大信号再交给示波器处理,故还要看数/模转换器是否自带放大器,如不带还要加一个放大器,波形的切换和控制调节频率通过输入/输出接口相连的开关来控制,而波形的产生和相关波形的切换和控制调节频率通过相应的程序来实现。当然还要控制这一系列有序执行的cpu. 提出问题: 1)函数选择开关量(输入设备接口) 2)怎样描述这六个函数波形 3)波形输入到输出的转换(即数/模转换) 4)波形的输出,怎样观察输出的波形 5)六种波形的切换 6)如何固定的改变波形的频率 1.2解决问题方法及思路 硬件部分: 根据题意要求及分析,本程序中用到的硬件器件为: 数/模转换器选用National Semiconductor的DAC0832; 选择8255A作为CPU与DAC0832之间的并行接口芯片,其中A口作为开关量的输入端。 软件部分: 根据题义要求及分析,本程序中硬件实现部分为: 程序采用循环依次显示六组波段的方式。 首先对8255A进行初始化,方式0,A口输入,显示过程中判断开关量中的第八位是否为1。若为1,根据中间四位开关量改变频率,若没有变化,则默认显示正弦波形。 相应地,在程序中编制显示正弦波段、三角波段、锯齿波段,脉冲波段,阶梯波和和平波。由上述的判断结果,根据条件进行跳转。 软件部分问题: 波形幅度和频率问题。 二、硬件设计 2.1选择芯片:8255A 8255A在本设计中的作用: 它是把打入的数据锁存,8255A有3个8位端口PA,PB,PC。本设计只用到PA口中的一个8位数据输入锁存器,把通过开关装置打入的数据锁存,再由8255A通过数据总线传送到8086,由8086送到DAC0832的DI7~DI0对其进行数模转换,最后在示波器上显示波形。 8255A的功能分析: 它是一种通用的可编程并行I/O接口芯片,又称“可编程外设接口芯片”。8255A由4部分组成:数据总线缓冲器;三个8位端口PA、PB、PC;A组和B组的控制电路;读写控制逻辑。 1) 数据总线缓冲器 :一个三态8位的双向缓冲器,用作8255A同系统数据总线相连是的缓冲部件。CPU通过执行输入/输出指令来实现对缓冲器发送或接受数据。8255A的控制字或状态字也是通过该缓冲器传送的。 2) 端口A中有一个8位数据输入锁存器和一个8位输出锁存/缓冲器。 3) A、B组控制电路:A组控制部件用来控制PA口和PC口的高4位,B组控制部件用来控制PB口和PC口的低四位。 4) 读写控制逻辑:用来管理数据信息,控制字和状态字的传送。 8255A的工作方式有3种:方式0、方式1、方式2。本设计只用到方式0,即基本输入/输出。在方式0下,每个口都作为基本的输入/输出口。C口的高四位和低四位以及A口、B口都可以独立地设计输入口或输出口。在方式0下,CPU可以采用无条件读写方式与8255A交换数据。本设计只用到了PA口作为数据输入。 8255A的技术参数: 与TTL完全兼容,采用40条引脚的双直插式封装,减少了系统器件数,提高了直流驱动能力。 符号 测试条件 规范值 单位 最大 最小 输入低电平电压 VIL 0.8 -0.5 V 输入高电平电压 VIH VCC 2.0 V 输出低电平电压(数据总线) VOL IOL=2.5mA 0.45 V 输出低电平电压(外围端口) VOL IOL=1.7mA 0.45 V 输出高电平电压(数据总线) VOH IOH=-400μA 2.4 V 输出高电平电压(外围端口) VO

文档评论(0)

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

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

1亿VIP精品文档

相关文档