欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOC文档下载  

    低频信号分析仪 电子设计报告.doc

    • 资源ID:4143061       资源大小:499.50KB        全文页数:23页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    低频信号分析仪 电子设计报告.doc

    2012年春季西南交通大学大学生电子设计竞赛设计报告低频信号分析仪2012年5月3日低频信号分析仪摘要 本文介绍了一种基于单片机的低频信号分析仪的设计。该设计主要由四个模块组成:飞思卡尔单片机控制芯片,TFT彩频显示及触摸选择,信号放大比较以及电源模块。信号经由OP37过零比较器中断部分,MC9S12XS128内部A/D转换把采集到的模拟量转换为相应的数字量在传送到数据处理模块,经过一定的数据处理,产生相应的显示码送到显示模块进行显示。该系统的低频信号分析仪电路简单,所用的元件较少,成本低,且测量精度和可靠性较高。此低频信号分析仪可以测量分析电压峰峰值Vpp为10mV-10V,频率为10HZ-400KHZ的交流信号,并可分辨显示正弦波,三角波,方波的频率和幅值,频率误差小于1%,峰值误差小于0.5%,具有较高的准确性。 关键词 飞思卡尔单片机;AD采样;过零比较器;TFT显示(触摸屏)引言单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。单片机因为体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,被广泛应用于仪器仪表中。目前市场上的便携式仪表大多都是以单片机为核心。 显示部分采用TFT彩频显示,以触屏代替按键,简单方便,与时俱进。1设计总体方案1.1设计要求 在输入交流信号电压峰峰值Vpp为500m V5V,频率范围为50Hz50kHz条件下,完成以下参数测试;(1) 正弦波,三角波和方波频率测试,测量误差小于1%;(2) 正弦波,三角波和方波幅度测试,测量误差小于3%;(3) 具有数字显示功能(如信号频率、峰值等)。1.2 设计思路(1)根据设计要求,选择飞思卡尔MC9S12X128单片机为核心控制器件。(2)信号的放大整形用OP37进行过零比较(3)显示采用触摸式的TFT彩频显示。1.3 设计方案硬件电路设计由4个部分组成; 放大比较电路,MS12X128单片机系统,TFT显示系统、电压输入电路。硬件电路设计框图如图1所示。 电源模块液晶显示信号放大和比较MC9S12X128单片机图1从图中可以看出,单片机控制的有低频信号分析仪的主要功能模块分为4类:l 液晶显示:是指在单片机的控制下,液晶模块显示被测信号的频率与有效值。l 电源模块:为单片机和液晶显示器提供工作电源。l 放大比较:对信号进行整波并将微小交流电压量放大。l 放大模块:。单片机电路主要是通过编写程序来控制硬件电路。因此,可以通过改变程序,提高测量精度。二、硬件电路设计2.1 单片机系统2.1.1 MC9S12X128单片机采用飞思卡尔单片机嵌入式开发系统。MC9S12XS128具有59个I/O口,能满足各部分对I/O口的需求 MC9S12X128功能性能:总线宽度:16位指令集结构:HCS12系列:S12XS可编程输入输出端口:91程序存储类型:Flash程序存储量:128KBEEPROM:其它数据RAM大小:8KB时钟频率max:40MHz接口类型:CAN/SCI/SPI计时器数:12片内ADC:8x12位片内DAC:其它电压:其它工作温度:-40125封装:PQFP-802.1.2 MC9S12X128各引脚图5 MC9S12X128的引脚图2.2 TFT显示系统设计2.2.1 TFT基本结构TFT屏幕:TFT(Thin Film Transistor薄膜晶体管)是有源矩阵类型液晶显示器(AM-LCD)中的一种, TFT在液晶的背部设置特殊光管,可以“主动”对屏幕上的各个独立的像素进行控制,这也就是所谓 的主动矩阵TFT(active matrix TFT)的来历,这样可以大大提高反应时间,一般TFT的反应时间比 较快,约80ms,而STN则为200ms。如果要提高就会有闪烁现象发生。而且由于TFT是主动式矩阵LCD可 让液晶的排列方式具有记忆性,不会在电流消失后马上恢复原状。TFT还改善了STN 会闪烁(水波纹) 模糊的现象,有效地提高了播放动态画面的能力。与STN相比TFT有出色的色彩饱和度、还原能力和更 高的对比度,但是缺点就是比较耗电,而且成本也比较高。2.3放大和比较模块Op37芯片是一种低噪声,非斩波稳零的双极性运算放大器集成电路。由于OP07具有非常低的输入失调电压(对于OP07A最大为25V),所以OP07在很多应用场合不需要额外的调零措施。OP07同时具有输入偏置电流低(OP07A为±2nA)和开环增益高(对于OP07A为300V/mV)的特点,这种低失调、高开环增益的特性使得OP07特别适用于高增益的测量设备和放 大传感器的微弱信号等方面。 OP07管脚图OP37特点: 超低偏移: 150V最大。 低输入偏置电流: 1.8nA 。低失调电压漂移: 0.5V/ 。 超稳定,时间: 2V/month最大高电源电压范围: ±3V至±22V OP07芯片引脚功能说明: 1和8为偏置平衡(调零端),2为反向输入端,3为正向输入端,4接地,5空脚 6为输出,7接电源+ ABSOLUTE MAXIMUM RATINGS 最大额定值三、系统的软件设计软件调试主要是编写相应的程序,在电路仿真软件上仿真,直至到预期效果。1.程序框图主程序及各子程序的框图见图。开始初始化 被测信号输入测量电压和频率显示结束 主程序框图 LCD程序流程图2.程序清单根据程序流程图,编写相应的子程序和主程序。程序清单见附录3。四测试数据正弦波20HZ50HZ幅值有效值频率幅值有效值频率10mv50100mv20200mv204000.19370.1569200.19370.1563505000.23450.1736200.23450.1738506000.29960.1956200.29560.1974501v0.50980.3598200.50980.3602502v1.01020.7003201.01010.70015031.51021.0491201.50911.05015042.03071.4108202.03051.41055052.49961.7483202.49961.74985063.03142.1121203.03052.11055073.52042.4701203.52012.47015084.03092.8213204.03052.82055094.54033.1721204.54053.1705501053.432053.4750500HZ10K100K幅值有效值频率幅值有效值频率幅值有效值频率0.05090.03095000.05090.0305100000.05090.030899.99k0.09170.05175000.09170.0517100000.09170.051699.99k0.19370.15455000.19370.1437100000.19380.143999.99k0.23490.17495000.23490.1749100000.23470.17599.99k0.29960.19565000.29960.1956100000.29970.195999.99k0.50980.35985000.50980.3598100000.50980.359899.99k10.685001.010.68100001.03010.69599.99k1.49961.03965001.49941.0398100001.50421.040599.99k21.41015002.0051.41100002.01131.410499.99k2.49961.72965002.47921.7292100002.48981.732199.99k32.095003.00212.0895100003.01072.100399.99k3.49962.43965003.49952.4394100003.49952.439499.99k42.785003.98922.781000042.7999.99k4.49963.15985004.48993.1586100004.5013.159899.9953.4950053.491000053.4999.99k100K200K幅值有效值频率幅值有效值频率0.05090.030899.99k1999870.09170.051699.99k0.09170.05171999870.19380.143999.99k0.19580.14411999870.23470.17599.99k0.23670.17511999870.29970.195999.99k0.29980.19591999870.50980.359899.99k0.50980.35981999871.03010.69599.99k0.10310.6971999871.50421.040599.99k1.50211.04031999872.01131.410499.99k2.01241.41021999872.48981.732199.99k2.49591.73041999873.01072.100399.99k3.01022.98171999873.49952.439499.99k3.49952.439419998742.7999.99k4.00112.791999874.5013.159899.994.49983.159419998753.4999.99k53.49199987方波20HZ50HZ幅值有效值频率幅值有效值频率10mv50mv2050400mv0.19370.1937200.19380.193850500mv0.25490.2549200.25490.2549501v0.50980.5098200.50980.5098505v2.45882.4588202.45882.45885010v4.9284.928204.91274.912750500HZ10K幅值有效值频率幅值有效值频率999050099900.19370.19375000.19370.193799900.25490.25495000.25490.254999900.50980.50985000.50980.509899902.45882.45885002.45882.458899904.91134.91135004.90764.90769990100K200K幅值有效值频率幅值有效值频率999901998600.19370.1937999900.19860.19861998600.25490.2549999900.2510.2511998600.50980.5098999900.54050.54051998602.45882.4588999901.48761.48761998604.90374.9037999904.98254.9825199860三角波20HZ50HZ幅值有效值频率幅值有效值频率10mv50mv2050100mv0.05090.0105*200.050950400mv200.19370.113750500mv0.25490.1749200.25490.1749501v0.49960.3598200.49960.2998505v2.4588202.45881.49965010v4.98923.4172204.98922.906450100K200K幅值有效值频率幅值有效值频率0.05090.0309999300.05090.03091998750.19370.1137999300.19370.11371998750.25490.1749999300.25490.17491998750.49960.2996999300.49960.29961998752.45881.4788999302.45881.47921998754.70372.8237999304.88292.9033199875500HZ10K幅值有效值频率幅值有效值频率50099905000.05090.030999900.19370.11375000.19370.113799900.25490.17495000.25490.174999900.50980.29985000.49960.299699902.45881.47885002.45881.473699904.94842.96885004.94842.96849990五心得体会在这次电子设计竞赛中我们使用了MC9S12X128单片机。这让我对于单片机有了更多的了解。同时在找资料的过程中学到了许多单片机课本上没有讲到的知识。在这次电子设计竞赛过程中,我们通过在原有的输入系统进行了改进,使之测量频率和电压有效值精度更高,使之成为一个更加适用,功能更加完备的属于自己的一个系统。在这个过程中让我对于C语言的编写有了更深入的体会。在这次电子设计竞赛中,虽然花费了大量的时间和精力,但我却学到了许多在理论课程中无法学到的知识。最重要的是让我懂得了合作的重要性,学会了如何与人更好的合作。六、参考文献1李广弟.单片机基础.北京:北京航空航天大学出版社,19942阎石.数字电子技术基础(第三版). 北京:高等教育出版社,1989 1版 3张毅刚等编著.单片机原理及应用. 北京:高等教育出版社.2004年1月第1版附录1 电路简图电压电路图附录2 元器件清单 元器件描述数量 MC9S12X128单片机1液晶显示器TFT1电阻1003电容47uF4晶振11.0592MHz1电路板210mm铜柱10mm12OP37比较器1电位器103,1046拨码开关6合11指示灯红色1二极管IN40074附录3 程序清单:#include <hidef.h> /* common defines and macros */#include "derivative.h" /* derivative-specific definitio */#include "LCD.h" #include"Panel.h" /* LCD color */#define White 0xFFFF#define Black 0x0000#define Blue 0x001F#define Blue2 0x051F#define Red 0xF800#define Magenta 0xF81F#define Green 0x07E0#define Cyan 0x7FFF#define Yellow 0xFFE0extern unsigned int TP_X,TP_Y; /当前触控坐标unsigned int g_speed;unsigned int count=0,duibi=0; long Caiyang; void SetBusCLK_80M(void) CLKSEL=0X00; /disengage PLL to system PLLCTL_PLLON=1; /turn on PLL SYNR =0xc0 | 0x05; REFDV=0x80 | 0x01; POSTDIV=0x00; /pllclock=2*osc*(1+SYNR)/(1+REFDV)=96MHz; _asm(nop); /BUS CLOCK=48M _asm(nop); while(!(CRGFLG_LOCK=1); /when pll is steady ,then use it; CLKSEL_PLLSEL =1; /engage PLL to system; void TIM_init(void) /脉冲pt7初始化 PACTL = 0x40; /脉冲计数 下降沿 PACNT = 0x0000; / Pulse Accumulators Count Registers (PACNT) PITCFLMT_PITE=0; PITCE_PCE0=1; PITMTLD0=480-1; /10us PITLD0=100; /1ms PITMUX=0X00; PITINTE_PINTE0=1; PITCFLMT_PITE=1; TFLG1=0xFF;/清中断标志位 void Init(void) DDRE = 0XFF; DDRB = 0XFF; DDRA = 0X0F; SetBusCLK_80M();CS=1;delayms(5);RES=0;delayms(5);RES=1;delayms(5);ILI9325_Initial();spistar(); /模拟spi初始化 void AD_Init(void) ATD0CTL1=0x00; /7:1-外部触发,65:00-8位精度,4:放电,3210:ch ATD0CTL2=0x40; /禁止外部触发, 中断禁止 ATD0CTL3=0xa0; /右对齐无符号,每次转换4个序列, No FIFO, Freeze模式下继续转 ATD0CTL4=0x01; /765:采样时间为4个AD时钟周期,ATDClock=BusClock*0.5/PRS+1 ATD0CTL5=0x30; /6:0特殊通道禁止,5:1连续转换 ,4:1多通道轮流采样 ATD0DIEN=0x00; /禁止数字输入 /- void Dly_ms(int ms) int ii,jj; if (ms<1) ms=1; for(ii=0;ii<ms;ii+) for(jj=0;jj<2670;jj+); /busclk:16MHz-1ms byte ReadATD(byte ch) byte ad=0; while(!ATD0STAT0_SCF); switch(ch) default: case 0: ad= ATD0DR0L; break; case 1: ad= ATD0DR1L; break; case 2: ad= ATD0DR2L; break; case 3: ad= ATD0DR3L; break; case 4: ad= ATD0DR4L; break; case 5: ad= ATD0DR5L; break; case 6: ad= ATD0DR6L; break; case 7: ad= ATD0DR7L; break; return ad; void main(void) unsigned char ss6; unsigned int lx,ly,k,h; unsigned int AD_val; unsigned int Gewei,Xiao1,Xiao2,Xiao3,Xiao4; unsigned int YGewei,YXiao1,YXiao2,YXiao3,YXiao4; unsigned char TempData6; unsigned int CaiZH=0; unsigned char i=0; long fraq; EnableInterrupts; Init(); TIM_init(); AD_Init(); ClearScreen(Blue); LCD_PutString(10,20,"低频信号分析仪",Red,Blue); Dly_ms(20); LCD_PutString(0,100,"频率",Red,Blue); Dly_ms(20); LCD_PutString(200,100,"Hz ",Red,Blue); Dly_ms(20); LCD_PutString(0,140,"幅度",Red,Blue); Dly_ms(20); LCD_PutString(200,140,"V",Red,Blue); Dly_ms(20); LCD_PutString(0,180,"有效值",Red,Blue); Dly_ms(20); LCD_PutString(200,180,"V",Red,Blue); Dly_ms(20); LCD_PutString(0,220,"信号类型",Red,Blue); Dly_ms(20); LCD_PutString(140,220,"正弦波",Green,Blue); Dly_ms(20); / DisPicture(10,10,70,90); while(1) fraq=g_speed; fraq = fraq*10; TempData0='0'+fraq/100000; TempData1='0'+(fraq/10000)%10; TempData2='0'+(fraq/1000)%10; TempData3='0'+(fraq/100)%10; TempData4='0'+(fraq/10)%10; TempData5='0'+fraq%10; LCD_PutString(80,100,TempData,Red,Blue); duibi = 0; for(i=0;i<100;i+) AD_val=ReadATD(0);/参考电压5V, if(AD_val>duibi) duibi = AD_val; / if(AD_val<5) AD_val=3; Gewei = (AD_val)/51; Xiao1 = (AD_val%51)*100/51)/10; Xiao2 = (AD_val%51)*100/51)%10; Xiao3 = (AD_val%51)*100/51)%51)*100/51)/10; Xiao4 = (AD_val%51)*100/51)%51)*100/51)%10; TempData0='0'+Gewei; TempData1='.' TempData2='0'+Xiao1; TempData3='0'+Xiao2; TempData4='0'+Xiao3; TempData5='0'+Xiao4; LCD_PutString(80,140,TempData,Red,Blue); Dly_ms(100); Caiyang = 0; for(CaiZH=0;CaiZH<10000;CaiZH+) Caiyang+=ReadATD(0); / Dly_ms(2); Caiyang = Caiyang/10000; AD_val = duibi; if(duibi*40/100)<Caiyang) LCD_PutString(140,220,"方类波",Green,Blue); Dly_ms(1000); YGewei = (AD_val*5/10)/51; YXiao1 = (AD_val*5/10)%51)*100/51)/10; YXiao2 = (AD_val*5/10)%51)*100/51)%10; YXiao3 = (AD_val%51)*100/51)%51)*100/51)/10; YXiao4 = (AD_val%51)*100/51)%51)*100/51)%10; TempData0='0'+YGewei; TempData1='.' TempData2='0'+YXiao1; TempData3='0'+YXiao2; TempData4='0'+YXiao3; TempData5='0'+YXiao4; LCD_PutString(100,180,TempData,Red,Blue); else if(duibi*30/100)>Caiyang) LCD_PutString(140,220,"三角波",Green,Blue); Dly_ms(1000); YGewei = (AD_val*6/10)/51; YXiao1 = (AD_val*6/10)%51)*100/51)/10; YXiao2 = (AD_val*6/10)%51)*100/51)%10; YXiao3 = (AD_val%51)*100/51)%51)*100/51)/10; YXiao4 = (AD_val%51)*100/51)%51)*100/51)%10; TempData0='0'+YGewei; TempData1='.' TempData2='0'+YXiao1; TempData3='0'+YXiao2; TempData4='0'+YXiao3; TempData5='0'+YXiao4; LCD_PutString(100,180,TempData,Red,Blue); else LCD_PutString(140,220,"正弦波",Green,Blue); Dly_ms(1000); YGewei = (AD_val*7/10)/51; YXiao1 = (AD_val*7/10)%51)*100/51)/10; YXiao2 = (AD_val*7/10)%51)*100/51)%10; YXi

    注意事项

    本文(低频信号分析仪 电子设计报告.doc)为本站会员(仙人指路1688)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开