已阅读5页,还剩16页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
D甲 函数信号发生器制作鲁东大学王 震 崔振萍 高 洁 专家点评:该项目运用了基于Nios嵌入式处理器的SOPC技术,由NIOS处理器来控制FPGA内部的信号发生部分实现各项功能,设计了函数信号发生器。理论分析完整,测试方案正确,测试数据充分。其特点是充分利用了EDA开发工具与FPGA内部资源,提高了系统的稳定性和抗干扰能力,得到很好的结果。 山东大学(威海) 郑亚民副教授 2008/9/24摘要:本设计运用了基于Nios嵌入式处理器的SOPC技术,设计完成了函数信号发生器系统。本系统的DDS 信号发生部分由FPGA最小系统加DAC904构成,控制与信息显示部分由单片机最小系统加键盘,液晶显示器构成。单片机接受键盘指令通过串口将控制字,发送到FPGA内部的NIOSII处理器,由NIOS处理器来控制FPGA内部的信号发生部分实现各项功能。本系统充分利用了EDA开发工具与FPGA内部资源,提高了系统的稳定性和抗干扰能力,得到很好的输出效果。 关键字:Nios;SOPC;FPGA; DAC904;EDA;LCD。The production of the function signal generatorAbstract:The system uses the SOPC technology based on Embedded Prosesser of Niosas a control on topics designed to function signal generator system , the DDS signal of the system is consisted of the FPGA smallest system and DAC904. the control and information display system include MCU smallest system , keyboard, LCD display. MCU accepts keyword commands and send the control word through the serial port to the internal NIOSII processor in FPGA. NIOSII controls the internal signal of FPGA to realize each function. This system has used the EDA development kit and the FPGA interior resources fully, enhanced systems stability and antijamming ability, obtains good output effect.Keywords: Nios;SOPC;FPGA; DAC904;EDA;LCD。目 录一 整体方案论证与确定4二 理论分析与计算5三 主要功能电路设计6四 系统软件设计12五 测试结果与分析13六 结论15附录16参考文献22一 整体方案论证与确定方案一:采用单片机控制合成各种波形 此方案硬件电路简单,所用器件少。波形的选择,生成及频率的控制均由单片机编程实现。此法产生的波形的频率范围,步进值取决于所采用的每个周期的输出点数及单片机执行指令的时间。此方案实现各种波形相对容易,在低频区基本上能实现要求的功能,但是,控制较复杂,精度不易满足,生成波形频率范围小,特别是难以生成高频波形。方案二:采用DDS技术直接合成各种波形 此方案基于单片机的方式,以单片机为控制中心,通过对专用的DDS芯片如AD9854编程,产生所需要的各种波形(原理框图见A-1).该方案简单,易于实现。 LCD显示4*4键盘 MCUAD985X 晶振LPF (A-1)方案三:采用基于单片机和FPGA的片上可编程系统方案 此方案将相应的正弦波的波形数据及三角波、方波的函数表格存储在存储器EPROM中,通过单片机控制选择波形,频率及幅度等参数,从存储器中读取相应的函数表格中的数据或正弦波的波形数据,若要显示锯齿波可直接从累加器的输出端取出波形数据,将数据经过处理再送至DAC904,再经过DAC904进行数模转化,从而可以得到所要求的各种波形(系统整体框图见A-2)。此方法利用了单片机在软件控制设计方面的通用性和FPGA在逻辑设计上的优势,能够得到较高的频率分辨率,产生信号的频率和幅度的稳定性高,可以得到较宽频率范围内的波形,很方便的与计算机接口,且调试方便,简化了控制机及接口,有利于提高集成度,可靠性和灵活性。LCD显示4*4键盘DAC904FPGA MCU运放、LPF (A-2)综合考虑以上三种方案的优缺点以及题目的基本要求和发挥部分要求,我们选用第三种方案,即采用基于单片机和FPGA的片上可编程系统方案。这种设计充分利用了FPGA的资源,减少了CPU与外设的的接口,在很大程度上提高了系统的速度、可靠性。二 理论分析与计算1. 数字频率合成技术原理数字频率合成由相位累加器、存储在ROM中的相关波形数据及函数表格、DAC904和低通滤波器所组成的部分实现。参考时钟是一个稳定的晶振,相位累加器类似于计数器,在每个时钟脉冲输入时,它就输出一个相位增量(框图如B-1),即把频率控制字FTW的数据变成相位抽样来确定输出频率。 (B-1) 相位累加器 相位增量随指令FTW的不同而不同,用在数据寻址时,查表就把存储的抽样值转换成为要产生波形幅度的数字量。DAC把数字量变为模拟量,低通滤波器平滑栟榈吊带外杂散后,得到所需波形。2分析计算 根据题目的基本要求,频率范围为100HZ100KHZ,为使其频率范围扩展为1HZ1MHZ。在1HZ1KHZ范围内步进间隔为1HZ;在1KHZ1MHZ范围内步进间隔为100HZ。 根据:输出频率: 最小频率分辨率: 其中m为相位累加器的位数,FTW为频率控制字,为时钟频率,输出信号频率主要取决于频率控制字FTW.当N增大时, 可以不断增加,综合考虑Nquist采样定理,最高输出频率应小于.根据实验所得,实际工作频率应小于。 的取值受D/A转换速率的限制,由于数模转换部分采用的是高速DAC904,其转换速率约为160MHZ。综合考虑后,选取基准频率为160MHZ,。 选取相位累加器位数为m为32,频率分辨率为 这样可以经过键盘输入实现1HZ步进和100HZ步进。 三 主要功能电路设计1 单片机控制模块本设计中,采用的是ADUC845最小系统板,其基本电路如图C-1-1所示。中心部分是单片机ADUC845,它有五个扩展的I/O口,外部RAM存储空间是00007FFF。自带A/D,D/A,功能强大。 (C-1-1)单片机最小系统 本次设计中用单片机控制CH451驱动键盘,通过软件编程控制按键实现波形的切换,频率以及幅度的步进并用LCD显示,而且本次设计中,还通过CH451驱动8位LED显示DS1302的初始化时间并进行计数显示,还可以通过按键对时间进行设置。键盘的控制电路如图C-1-2所示: (C-1-2)键盘控制电路2 FPGA控制模块(1)基本构成图C-2是将各功能模块集成到一个FPGA器件上的原理图,它由波形选择器(图c-2-1),相位累加器(freadd)(图B-1),波形发生器,幅度调制器(图c-2-2)构成。 (c-2-1) 波形选择器波选择器用来进行波形选择,控制输出波形的形状,其中data1-4分别是正弦、方波,三角波,锯齿波的数据输入,en1-en4分别位它们的使能端,通过使能端的值,控制输出那种波形。(c-2-2) 幅度调制器幅度调节器如上图所示用来实现对输出信号的幅度进行调节,通过控制信号fudu_in的值的不同来对波形选择器输出的波形的幅度进行调节,fudu_in的输入范围为0-50,可以实现0.1V步进的幅度调节。 (2)各波形的产生原理 针对不同的波形,采用不同的方法进行生成。 针对正弦波对幅度为1 的正弦波的一个周期进行4096 点采样,结合DAC904的AD编码特点,利用Matlab 计算得到每一点对应的幅度值,根据图c-2-3得其基本计算公式为: (c-2-3)并将其转化为符合DAC904的AD编码规则的14位数字信号存入ROM中,将相位累加器输出的高12位作为查询地址,(图c-2-4)(c-2-4)将查询结果输出到波形选择器的data1端。该数据经DA转换后可生成连续的正弦波。 方波的产生原理与正弦波类似,同样可以通过查表的方式产生,由于方波只有两个幅度值所以表中只存放2个14位的数据,直接利用相位累加器的最高位作为查询地址即可。(图c-2-5)。(c-2-5)由于锯齿波的波形是一个单调递增的循环累加过程,相位累加器的输出同样也是单调递增循环累加的过程,因此不用查表可以直接将相位累加器的高14位作为锯齿波的幅度值输出到波形选择器的data4端。三角波在半周期内单调递增,在半周期内单调递减,因此可以将相位累加器的最高位作为方向标志位,当最高位为0是可以将相位累加器的3017位(记为xiangwei30:17)作为三角波的半个周期内的幅度输出,当最高位为1,用3fff-xiangwei30:17作为三角波的幅度输出。整个过程可以用简单的Verilog语言描述(图c-2-6)。(c-2-6)3 D/A转换模块 本次设计中选用的是BB公司生产的DAC904,该 DAC为互补电流输出型 DAC,具有 14 bit分辨率 , 165MSBS的转换速率 ,含有内部基准 ,具有满量程输出调节功能。如图 C-3-1所示 ,数据线上的数据在时钟的下降沿打入 DAC的输出电流寄存器 ,输出电流在 1ns后变化为给定值。R 为满量程调节电阻。定义FSB总输出电流 ,根据 DAC904器件手册。,。Code为DAC的输出电流寄存器的值。 (C-3-1)DAC904由于DAC904是电流型输出的DA芯片因此需要接入负载将电流转化为电压,Iout1与Iout2的最大输出电流为20mA,通过两个25欧姆的负载电阻R14,R15后,V1与V2之间最大会产生1v的电压输出。由于DAC904的参考电压位1.24V所以不能加过高的电阻。为了满足题目要求的峰峰值5V的输出需要加入后级放大电路。4 放大滤波模块放大滤波的电路如图C-4-1所示,电阻R14,R15把DAC输出的电流信号转化为电压信号,并作为放大器的差分输入,经差分放大器放大A倍后输出需要的幅值,其中A=R11/R12。再经过型低通滤波(LPF)即可得到所需要的信号波形。(C-4-1)在本次设计中,采用的运放是OPA690,差分输入,R12=200,R11=1K,所以理论上,运放的放大倍数应为:A=R11/R12=5。当DAC904输入全为1的时候,它的正端输出20mA电流,经R14后转化为0.5V电压作为运放的负端输入,此时运放的正端输入为零,所经差分放大后输出-2.5V电压,当DAC904输入为10000000000000的时候,它的正端和负端均输出10mA,所以此时运放的差分输入为0V,输出也为零,当DAC904输入全为0的时候,它的负端输出20mA,正端输出为零,经R15后,转化为0.5V电压,作为差分放大器的输入,经五倍的放大后输出+2.5V的电压,经过滤波后,可以实现峰峰值电压为05V的各波形输出。OPA690的最大输出电流为190mA,而当负载R16=1K时,输出电流 当R16=50时,输出电流为,两者均小于190mA,即可以实现要求的两种负载的各波形输出。5.直流稳压电源本设计采用的是自制的稳压电源,原理图如图C-5-1,该电源可以实现两种电压的输出,其基本原理是将输入的交流电通过整流桥后转化为直流电,(上部分电路图)通过稳压管使电压稳定在V和(下部分电路图)5V。 (C-5-1)四 系统软件设计1. 单片机实现的功能单片机用于控制键盘输入、LED和LCD的显示,将收集到的频率控制字、幅度控制字、波形控制字发送给FPGA。单片机所控制的主流程图如图D-1。开始系统初始化等待功能选择波形选择频率调整幅度调整正 弦 波锯 齿 波三 角 波方 波输入频率步进数 目输入幅度步进数 目确认发送 (D-1)单片机与FPGA之间通过串口通信,需满足以下协议。(1) 帧头 由2个特殊的字节 0x55 0xAA构成;(2) 接收方地址(3) 发送方地址(4) 帧长 从命令开始到数据域结束的字节数(5) 命令字(6) 数据域(7) 校验和 数据帧中从命令开始到数据域结束所有字节的算术和,取最低字节的反码。例如:现需要从单片机向FPGA发送一条包含信号参数的信息(波形:正弦波、频率:1kHz、幅度:3.0V),其命令字为0x03,数据域包含4字节的频率,1字节的幅度。根据FTW=fout*26fout*84/100+fout*35/10000+fout*46/1000000fout*5/10000000,得出FTW为0x01 0x99 0x99 0x9A ,幅度为0x1E。则发送的信息为 0x55 0xAA 0x01 0x01 0x06 0x03 0x01 0x99 0x99 0x9A 0x1E 0x112. 键盘实现的功能在本系统中键盘实现人机交互功能,通过键盘选择要显示的波形并对频率与幅度进行设置。此外,还可以通过键盘按键控制时间的显示与调整。 键盘子程序流程图如图D-2所示。 (D-2)键盘控制LED显示子程序见附录五 测试结果与分析1. 测试仪器50MHZ 数字示波器;550MHZ 频率计2. 测试内容(1) 稳压电源输出;(2) 能够产生正弦波、锯齿波、三角波和方波四种周期性波形及其失真度;(3) 输出信号幅度以及其可调性;(4) 输出信号频率以及其可调性、稳定度.3. 测试结果(1).输出正弦波频率范围和稳定度的测试标 称频 率(HZ) 实 测 频 率(HZ)平均频率 (HZ) 频 率稳定度第一次第二次 第三次11.00001030.99999951.00001351.0000087.77E-0621.9999751.9998722.0000541.9999671.7E-0555.0001034.9988735.0001054.9996946.1E-051010.000989.99979510.0010810.000626.18E-055050.0012649.988250.0011349.996866.3E-0510099.99502100.0122100.0118100.00636.34E-0510001000.06051000.07211000.05821000.0646.36E-0550005000.50894999.99985000.44985000.326.39E-051000010001.02310000.45810000.53110000.676.71E-05100000100006.994100005.931100007.875100006.96.93E-05500000500039.234500037.259500035.361500037.37.46E-0510000001000098.1221000071.2321000062.45610000777.73E-05注:输出信号的频率稳定度可以通过以下公式计算:其中,为频率稳定度,为频率的平均值,为标称频率。(2). 输出三角波频率范围和稳定度的测试(略)(3). 输出锯齿波频率范围和稳定度的测试(略)(4). 输出方波频率范围和稳定度的测试(略)(5). 输出正弦波幅度范围的测试频 率1HZ2HZ5HZ10HZ50HZ100HZ幅度/v5.025.015.005.005.015.02频 率1KHZ5KHZ10KHZ100KHZ500KHZ1MHZ幅度/v5.015.005.014.994.994.99(6). 输出三角波幅度范围的测试(略)(7). 输出锯齿波幅度范围的测试(略)(8). 输出方幅度范围的测试(略)六 结论项 目 基本要求 发挥部分要求 实测指标与分析稳压电源输出能够输出稳定的电压能够稳定的输出V电压信号波形能够产生正弦波、锯齿波、三角波和方波四种周期性波形能够稳定的输出四种不同的波形信号频率在100HZ100KHZ范围内可调频率范围扩展为1HZ1MHZ 在1HZ1KHZ范围内步进间隔为1HZ;在1KHZ1MHZ范围内步进间隔为100HZ。能够实现基本要求和发挥部分的要求信号幅度在1K负载条件下,输出信号的电压峰-峰值在05V范围内可调在50K负载条件下,输出信号的电压峰-峰值在05V范围内可调,调节步进间隔为0.1V能够实现基本要求和发挥部分的要求频率稳定度优于优于波形失真度输出信号波形无明显失真用数字示波器做FFT分析依然可以认为无明显失真 由实验调试结果及测试结果,该函数信号发生器达到了题目的指示要求,在选择波形与调节幅度频率试时采用LCD人机交互界面,界面友好方便,具有直观性。还在此基础上运用DS1302实现了时间显示,并有音乐伴奏等附加功能。附 录1.键盘显示子程序switch( ch451_key )case keycode_s15 :/切换波形代码ch451_key=0 ;shape =( shape + 1 ) % 4 ;UpdateShape(shape , 120 , 9 );break;case keycode_s16 :/切换频率步进值ch451_key=0 ;step =( step + 1 ) % 3 ;UpdateStep( step );break;case keycode_s7 :/频率+10* step Hzch451_key=0 ;if( (freq+10*Freq_Stepstep) = MINFREQ )freq -= 10*Freq_Stepstep ;/UpdateFreq(freq) ;UpdateFreq_copy(freq) ;break;case keycode_s11 :/频率+1* step Hzch451_key=0 ;if( (freq+1*Freq_Stepstep) = MINFREQ )freq -= 1*Freq_Stepstep ;/UpdateFreq(freq) ;UpdateFreq_copy(freq) ;break;case keycode_s3 : /幅度+0.1Vch451_key=0 ;if( (phase+1) = MAXPHASE )phase += 1;UpdatePhase(phase) ; break;case keycode_s4 : /幅度-0.1Vch451_key=0 ;if( phase = 0 ) break ;else phase -= 1 ;UpdatePhase(phase) ;break; case keycode_s14 : /显示图形ch451_key=0 ;GUI_Show( shape , freq , phase );break;case keycode_s10 : /返回图形编辑界面ch451_key=0 ;GUI_Init_new();break ;case keycode_s2 :/显示时间ch451_write(CH451_TWINKLE); /设置不闪烁控制Showtime();break ;case keycode_s1 : /闪烁位左移,选择要调整的时间位ch451_key = 0 ;if( position = 2 )ch451_write(CH451_TWINKLE+0x03);elseposition+ ;ch451_write(CH451_TWINKLE+ ( p_tableposition ) ); /设置闪烁控制左移 Showtime();break ;case keycode_s9 : /闪烁位右移,选择要调整的时间位ch451_key = 0 ;if( position = 0 )ch451_write(CH451_TWINKLE + 0xC0);else position- ;ch451_write(CH451_TWINKLE + ( p_tableposition ) ); /设置闪烁控制右移 Showtime();break ;case keycode_s5 : /选择位加一SetTime( 1 , position ) ;Set1302(dat);ch451_key = 0 ;Showtime(); break ;case keycode_s6 :/选择位减一SetTime( 0 , position ) ;Set1302(dat);ch451_key = 0 ;Showtime(); break ;default :Showtime();break;switch( ch451_key )case keycode_s13 :/波形切换ch451_key=0 ;shape =( shape + 1 ) % 4 ;UpdateShape(shape);break;case keycode_s3 :/频率+100Hzch451_key=0 ;if( (freq+100) = MINFREQ )freq -= 100 ;/UpdateFreq(freq) ;UpdateFreq_copy(freq) ;break;case keycode_s7 :/频率+10Hzch451_key=0 ;if( (freq+10) = MINFREQ )freq -= 10 ;/UpdateFreq(freq) ;UpdateFreq_copy(freq) ;break;case keycode_s11 :/频率+1Hzch451_key=0 ;if( (freq+1) = MINFREQ )freq -= 1 ;/UpdateFreq(freq) ;UpdateFreq_copy(freq) ;break;case keycode_s15 : /幅度+0.1Vch451_key=0 ;if( (phase+1) = MAXPHASE )phase += 1;UpdatePhase(phase) ; break;case keycode_s16 : /幅度-0.1Vch451_key=0 ;if( phase = 0 ) break ;else phase -= 1 ;UpdatePhase(phase) ;break; case keycode_s14 : /显示波形ch451_key=0 ;GUI_Show( shape , freq , phase );break;case keycode_s10 :/返回图形编辑界面ch451_key=0 ;GUI_Init_new();break ;case keycode_s2 :/显示时间ch451_
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 四年级数学(四则混合运算带括号)计算题专项练习与答案
- 填埋场生物降解处理工艺方案
- 环境卫生学监测、安全注射、消毒隔离知识专项培训试题及答案
- 老旧小区排水系统优化方案
- 中医月经不调题库及答案
- 风电场风电场项目管理实施方案
- 中学生交通安全说课课件
- 2025年防疫安全教育试卷及答案
- 造价工程师知识竞赛试题及答案
- 2025年矿山安全事故应急处置试题及答案
- 2025及未来5年吨袋项目投资价值分析报告
- 2025年陕西有色金属科工贸服务有限公司招聘(24人)笔试考试参考试题及答案解析
- 利旧施工方案
- 医院预检分诊课件
- 三反五反运动课件
- 2025五年级英语一般现在时专项练习题
- 2025年乌苏市公安局开招聘警务辅助人员(67人)笔试考试参考题库附答案解析
- 2026年尾矿库闭库工程验收申请报告
- 农家书屋各项管理制度
- GB 19193-2025传染病消毒规范
- (12)普通高中技术与工程课程标准日常修订版(2017年版2025年修订)
评论
0/150
提交评论