单片机实习报告--函数信号发生器.doc
信号发生器
摘要:
本文在分析现有的信号发生器的工作原理基础上,根据系统指标设计一种结构简单性能优良的信号发生器。详细的分析了该信号发生器的系统结构、软硬件设计和具体电路实现。信号发生器以AT89C51单片机控制核心,可以产生正弦波、方波、三角波、锯齿波,可以方波地设定输出信号的频率及幅度。信号发生器的硬件部分包括波形生成模块、电源与复位电路模块、频率控制模块、波形选择模块、D/A转化及幅度控制模块、波形输出显示模块及软件设计组成。软件部分主要开发基于单片机的数据处理和控制程序,以及信号发生器的输入输出控制系统。完成了电路板的制作,并通过测试,电路工作正常。
关键词:
AT89C51单片机,信号发生器,D/A转换
目录
前言………………….3
设计方案的论证……………3
系统工作原理……………….4
最后的电路图……………….9
设计的源程序………………16
心得体会……………………...19
参考文献…………………..…21
七.致谢…………….21
前言:
1.目的、意义:信号发生器输出地常规波形,常应用于电子电路的性能测试和参数测量。但常规的波形发生器一般只是产生一种可控的波形,为此设计一种基于单片机控制的信号发生器,来满足设计需要。
波形发生器可以应用于日常的数电实验中作为信号源,还可以作为高低电平控制一些特殊的仪器,比如可应用于电子密码锁。
2.实现功能:在我设计的信号发生器中,可以实现的功能有:各个日常生活的波形,在启动过程中各个波形的切换,在软件中实现占空比、频率的改变,在LED七位数码管中显示对应的波形编码。
3、解决的问题:应用于数电实验中,以及需要电平变化的地方。
设计方案的论证
1.单片机的选择
方案一:采用传统的89C51芯片。具有4KB的程序存储器,128KB的数据存储器,32I/O口,1个全双工异步串行口,2个16位定时/计数器,5个中断源,2个优先级。但仿真系统成熟,资料丰富。
方案二:ATMEGA16芯片。具有高性能、低功耗的8位AVR微处理器,32个8位通用工作寄存器,全静态工作,16KB的系统内可编程Flash,上电复位以及可编程的掉电检测,有只需两个时钟周期的硬件乘法器,32个可编程的I/O口,功耗小。
由于本系统程序块较多Atmega16芯片程序存储器比较大故采用方案二。
2.函数发生器件的选择
方案一:采用传统的分立元件搭接。优点:成本低廉。缺点:电路复杂,且不利于单片机进行数字控制。
方案二:采用MAX038专用芯片。优点:0.1Hz~20MHz工作频率范围。通过DA芯片可方便控制输出频率。缺点:成本较高。
为满足系统频率和控制要求,所以采用方案二。
3.键盘部分电路的设计方案论证与选择
方案一:采用74LS245,74LS573芯片反转法键盘。占用的I/O接口过多,不具有键值锁存功能,不利于扩展,程序去抖动,编程繁琐。
方案二:采用BC7281A键盘控制芯片。只占用单片机的3个I/O接口,根据键值锁存功能,最多可以有64键,内含去抖功能,编程简便,性能更可靠。
综上所述,选择方案二采用BC7281A键盘控制芯片,更能为单片机节省I/O口,根据设计的需要可以任意的增减按键的个数。
4.显示方式设计方案论证与选择
方案一:采用LED数码管显示器,使用多个数码管显示,但由于要显示的内容很多,使得要连接的电路更为繁琐,而且控制起来麻烦,还不具备文字符号等显示功能。
方案二;采用LCD液晶显示器。可以显示中英文,数字及运算符号,功耗低,驱动集成化,可实时显示,字迹清晰、美观,使人舒服;寿命长,使用方便。
基于上述比较,采用方案二。
5.电位器的选择
方案一:采用普通滑动变阻器。优点:滑动变阻器使用方便、简单。
缺点:不能实现数字控制。
方案二:采用X9C103P数字电位器。数字电位器是固态非易失性电位器,是理想的数字控制的微调电阻器。X9C103P是有99个电阻单元的电阻阵列,同时可在编制软件时要充分考虑X9C103P的各输入信号和输出信号的工作时序,使它正确存储数据,达到本系统设计的控制要求。
缺点:精度不高。
故选,为了便于数字控制故采用方案二。
二、系统工作原理
利用单片机的片内ROM存储所需的信号波形相位幅度值(又称波形表),根据外电路的输入信号利用查表方式查找片内ROMA中相应地址的相位幅度值。将输出的八位二进制数据进行D/A转换,I/V转换后输出。