课程设计说明第I页数字信号发生器的设计摘要信号发生器也叫做振荡器或是信号源,在现在的科技生产实践中有着广泛而重要的应用。现在的特殊波形发生器在价格上不够经济,有些昂贵。而基于AT89C51单片机的函数信号发生器可以满足此要求。根据傅里叶变换,各种波形均可以用三角函数的相关式子表示出来。函数信号发生器能够产生多种波形,如三角波、锯齿波、矩形波、方波和正弦波。本文通过在单片机的外围加上键盘,控制波形的种类和输出频率的大小,加上LED显示出相应信息。单片机输出为数字信号,于是在输出端用DAC0832进行D/A转换,再通过两级运放对波形进行调整。最终在示波器上显示出来。关键词:信号发生器,AT89C51,D/A转换,波形调整课程设计说明第II页目录1绪论........................................................................................................................................11.1课题研究背景...............................................................................................................11.2波形介绍.......................................................................................................................12系统设计.................................................................................................................................32.1方案选择........................................................................................................................32.2框图设计........................................................................................................................32.3单片机模块....................................................................................................................42.4按键控制与显示电路设计............................................................................................62.5D/A转换电路................................................................................................................72.6显示电路.......................................................................................................................92.7放大电路设计.............................................................................................................122.8整体的电路原理图......................................................................................................132.9元件清单......................................................................................................................133软件设计...............................................................................................................................153.1程序流程图..................................................................................................................153.2程序代码......................................................................................................................154系统仿真及调试...................................................................................................................184.1系统仿真图..................................................................................................................184.2系统调试......................................................................................................................19总结......................................................................................................................................21致谢......................................................................................................................................22参考文献..................................................................................................................................23课程设计第1页1绪论1.1课题研究背景随着经济与科技不断发展,相应的测试仪器与手段也有了许多改善与提高,但是对之要求也不断提高。波形发生器的信号已知,使用者然后根据具体的要求,将其作为激励源,测得感兴趣的参数。信号源仿真各种测试信号,给待测电路,从而满足现实需求。信号发生器在仿真实验占有重要地位,对于测试仪器来说也同样不可缺少。因此对相关信号发生器的研究开发有着一定的意义。传统的信号发生器电路复杂,控制灵活度不够,成本也相对较高。虽然我国所研制的波形发生器在一定程度上已有了一些成果,但与国外技术确实还存在一定差距,因此很有必要提高相关方面的研究。利用单片机的控制灵活性,外设处理能力强等特点,实现频率与幅度可调的多种波形,这就克服了传统的缺点,具有良好的实用性。同时根据程序的易控制性,可以容易实现各种较复杂的调频调幅功能。1.2波形介绍正弦波,正弦信号可用如下形式表示f(t)=Asin(ωt+θ)(1)其中,A为振幅,ω是角频率,θ为初相位。正弦函数为一周期信号如下图1所示:图1正弦波·方波方波函数是我们常用且所熟知的简单波形函数,做脉冲等,其表示形式如下:课程设计第2页)2()20()(TtTTttf(2)方波波形如图2。图2图形当方波下半段幅值为0时,就为矩形波,一个原理,所以不再赘述矩形波。锯齿波,锯齿波如图3所示。图3锯齿波图形三角波,三角波波形如下图4所示。课程设计第3页图4三角波2系统设计2.1方案选择方案一:利用单片的函数发生器的传统方式,比如8038就行。它可很容易地产生正弦波和方波等波形,而后用数/模转换器对电压进行调制,也可以用数字调控对频率实现改变,但这种方法产生频率不稳定。方案二:采用频率合成器,锁相环式的。对于所选择的频率,用VCO(压控振荡器)加以选定。这种方法较第一种性能上好,但是对于频率的输出范围难以达到。而且有一个特点,即电路较为复杂。方案三:可以利用单片机编程的方法来实现波形的输出。可选用AT89C51作为控制器,输出相应波形的数字信号,再用D/A转换器输出相应波形的模拟信号。用DAC0832作为D/A转换器,再经过两级放大后输出,最终在示波器上显示。可以使用按键扫描来实现波形的变化[3]。由于方案一的输出信号的频率不稳定还有二方案的电路较为复杂,频率可调范围难以达标等缺点,所以决定采用方案三的设计方法。方案三的设计用软件可以很方便的实现对硬件的控制,输出需要的波形。而且方案三中涉及的器件都是容易得到而且价格较为便宜的,所以价格上也有优势。2.2框图设计基于AT89C51单片机的函数信号发生器由电源电路、单片机主控电路、信号输出课程设计第4页电路和按键控制电路四部分组成,整体设计框图如图5所示图5函数信号发生器系统图AT89C51单片机是整个函数信号发生器的主控部分,通过电脑对程序改写,可以产生不同波形,也可对同种波形的频率幅度进变换。当单片机输出数字信号经过转换电路后输出相应模拟信号。上图中输出电路包涵转换电路与整波电路。图6为函数信号发生器的原理图。图6信号发生器原理框图2.3单片机模块2.3.1单片机最小系统8051片内有4KB的ROM/EPROM,因此只需要外接晶振电路和复位电路就可以构成最小系统了,如图7所示。复位电路按键电路AT89C51主控电路输出电路电源电路89C51单片机接口电路D/A转换器滤波放大输出波形课程设计第5页12XTAL30pFC130pFC210uFC310KR1P1.0/T21P1.1/T2EX2P1.23P1.34P1.45P1.56P1.67P1.78RST9P3.0/RxD10P3.1/TxD11P3.2/INT012P3.3/INT113P3.4/T014P3.5/T115P3.6/WR16P3.7/RD17XTAL218XTAL119VSS20P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427P2.7/A1528PSEN29ALE30EA/VPP31P0.7/AD732P0.6/AD633P0.5/AD534P0.4/AD435P0.3/AD336P0.2/AD237P0.1/AD138P0.0/AD039VCC40U1P80C32UBPNU3SN74LS138NGNDGNDVCCS1P2.7S1S2S3S4图7单片机最小系统·该最小系统的特点如下:(1)由于片外没有扩展存储器和外设,P0、P1、P2、P3都