基于51单片机的波形发生器设计

  • 格式:doc
  • 大小:1.48 MB
  • 文档页数:28

下载文档原格式

  / 28
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

课题要求:

目录:

1、系统总体设计方案规划与选定…………………………………

2、硬件设计…………………………………………………………

3、软件设计………………………………………………………….

4、调试……………………………………………………………….

5、新增功能及实现方法……………………………………………

6、总结与体会………………………………………………………

7、参考文献…………………………………………………………

8、附录(源程序代码、电路图等)………………………………

一. 系统总体设计方案规划与选定

本次设计采用AT89C51单片机为核心,通过与8279芯片和38译码器、锁存器的配合实现对键盘状态的检测和LED 显示的控制,通过D/A 转换器和运算放大器以及示波器实现对波形的输出,并且在8位LED 显示器上显示波形类型的代号、幅值、频率。键盘为4*8键盘,通过键盘摁键实现对波形种类、幅值、频率等的调节。

图1. 总体方案结构框图

二.硬件设计

硬件的选择对于功能的实现非常重要,我们要了解芯片的功能、性能,根据题目要求选择合适的芯片。

(一)硬件介绍

1.单片机选择AT89C51。 AT89C51 提供以下标准功能:4k 字节Flash 闪速存储器,128字节内部RAM ,32 个I/O 口线,两个16位定时

/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89C51可降至0Hz

的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU

的工作,但允许

RAM

,定时/计数器,串行通信口及中断系统继续工作。

掉电方式保存

RAM

中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。

AT89C51具有优良的性能,符合题目的要求。

图2. AT89C51引脚图

引脚说明:

P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P0口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的低八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,需要接上拉电阻。本次设计中P0口与8279的AD[0..7]连接,作为数据传输口。

P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1

口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH

编程和校验时,P1口作为低八位地址接收。本次设计中P1口与D/A转换器的D10—D17口相连。

P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行

/EA:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。

XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。

XTAL2:来自反向振荡器的输出。

2. 8279

8279是一款由单一+5V电源供电的可编程键盘显示接口芯片。其功能是:对键盘进行管理和控制;对LED显示器进行控制、对显示数据和显示方式进行管理。

图3. 8279芯片

引脚说明:

<1>AD[0..7]:双向数据总线。在CPU与8279间做数据与命令传送。

<2>CLK:8279的系统时钟,100KHz为最佳选择。

<3>RES:复位输入线。输入HI时可复位8279。

<4>CS:芯片选择信号线。当这个输入引脚为低电平时,可将命令写入8279或读取8279的数据。

<5>A0:缓冲器地址选择线。A0=0时,读写一般数据;A0=1时,读取状态标志位或写入命令。

<6>RD:读取控制线。RD=0时,8279输送数据到外部总线。

<7>WR:写入控制线。WR=0时,8279从外部总线接收数据。

<8>IRQ:中断请求。平常IRQ为LO,在键盘模式下,每次读取FIFO/SENSOR RAM的数据时,IRQ变为HI,读取后转为LO;在传感器模式下,只要传感器一有变化,就会使IRQ变为HI,读取后转为LO。

<9>SL0~SL3:扫描按键开关或传感器矩阵及显示器,可以是编码模式(16对1)或解码模式(4对1)。

<10>RL0~RL7:键盘/传感器的返回线。无按键被按时,返回线为HI;有按键被按时,该按键的返回线为LO。在激发输入模式时,为8位的数据输入。

<11>SHIFT:在键盘扫描模式时,引脚的输入状态会与其它按键的状态一同储存(在BIT6),内部有上拉电阻,未按时为HI,按时为LO。

<12>CNTL/STB:在键盘扫描模式时,引脚的输入状态会与SHIFT以及其它按键的状态同一储存,内部有上拉电阻,未按时为HI,按时为LO。在激发输入模式时,作为返回线8位数据的使能引脚。

<13>OUTA0~OUTA3:动态扫描显示的输出口(高4位)。

<14>OUTB0~OUTB3:动态扫描显示的输出口(低4位)。

<15>BD:消隐输出线。

3. DAC0832

DAC0832是8分辨率的D/A转换集成芯片。与微处理器完全兼容。这个DA芯片以其价格低廉、接口简单、转换控制容易等优点,在单片机应用系统中得到广泛的应用。D/A转换器由8位输入锁存器、8位DAC寄存器、8位D/A转换电路及转换控制电路构成。

图4. DAC0832芯片

引脚介绍:

(1)D10~D17:8位数据输入线,TTL电平,有效时间应大于90ns(否则锁存器的数据会出错);

(2) ILE:数据锁存允许控制信号输入线,高电平有效;