任意波形發(fā)生器的設(shè)計思想,是利用MATLAB的強(qiáng)大仿真功能,方便、快捷的生成給定頻率、周期、脈寬的任意波形數(shù)據(jù);并將數(shù)據(jù)預(yù)存在數(shù)據(jù)存儲器中。在單片機(jī)控制下,利用CPLD電路產(chǎn)生地址讀出數(shù)據(jù),送入D/A轉(zhuǎn)換電路,得到所需的任意波形信號。系統(tǒng)結(jié)構(gòu)框圖如圖1;圖中分頻電路和地址發(fā)生器由CPLD實現(xiàn):
1、 單片機(jī)控制電路
單片機(jī)采用AT89C52芯片,通過軟件編程產(chǎn)生所要求的控制信號。主要的控制參數(shù)包括:信號周期、脈寬;分頻電路的開始信號、地址發(fā)生器的復(fù)位信號;E2PROM的選通信號;D/A轉(zhuǎn)換電路的選通 信號。在具體電路中,端口P1.0控制分頻電路的啟動、P1.1控制地址發(fā)生器的清零,P2.0控制28C256和AD7545的選通信號。單片機(jī)工作在定時器0方式,軟件設(shè)計利用C語言實現(xiàn)。流程圖如圖2所示:
2、 波形數(shù)據(jù)生成