DSPʵÑ鱨¸æÄ£°å ÏÂÔØ±¾ÎÄ

.

Î÷»ª´óѧʵÑ鱨¸æ£¨Àí¹¤Àࣩ

¿ª¿ÎѧԺ¼°ÊµÑéÊÒ£ºµçÆøÓëµç×ÓÐÅϢѧԺרҵʵÑéÖÐÐÄ ÊµÑéʱ¼ä £º 2016Äê6ÔÂ20ÈÕ

ѧ Éú ÐÕ Ãû ѧÉúËùÔÚѧԺ ¿Î ³Ì Ãû ³Æ ʵÑéÏîÄ¿Ãû³Æ Ö¸ µ¼ ½Ì ʦ ÅíÇ¿ÄÜ Ñ§ ºÅ 3120130803824 ³É ¼¨ Äê¼¶/רҵ/°à ¿Î ³Ì ´ú Âë Ïî Ä¿ ´ú Âë Ïî Ä¿ ѧ ·Ö 13¼¶²â¿Ø3°à 106001549 »úе¹¤³ÌѧԺ DSP¼¼Êõ¼°Ó¦Óà ʵÑéËÄ£ºFIRÊý×ÖÂ˲¨Æ÷Éè¼ÆÊµÑé ·½´º¶÷ Ò»¡¢ÊµÑéÄ¿µÄ

1¡¢ ѧ»áÓÃMATLABÉè¼ÆFIRÊý×ÖÂ˲¨Æ÷µÄϵÊý¡£ 2¡¢ ѧ»áÓÃDSPʵÏÖËùÉè¼ÆµÄFIRÊý×ÖÂ˲¨Æ÷¡£ 3¡¢ ¹®¹ÌDSPµÄ»ù±¾±à³Ìµ÷ÊÔ¡£

¶þ¡¢ÊµÑéÔ­Àí

1. ½èÓüÆËã»úµÄ×ÊÔ´·ÂÕæDSPµÄÄÚ²¿½á¹¹£¬ÒÔѧϰÓÃDSPʵÏÖÊý×ÖÐźŴ¦Àí»ù±¾Ëã·¨¡£ 2. ÓÐÏÞÂö³åÏìÓ¦Êý×ÖÂ˲¨Æ÷µÄ»ù´¡ÀíÂÛ¡£ 3. Êý×ÖÂ˲¨Æ÷ϵÊýµÄÈ·¶¨·½·¨¡£

Èý¡¢ÊµÑéÉ豸¡¢ÒÇÆ÷¼°²ÄÁÏ

°²×°ÓÐWINDOWS XP²Ù×÷ϵͳºÍCCS3.3µÄ¼ÆËã»ú

ËÄ¡¢ÊµÑé²½Ö裨°´ÕÕʵ¼Ê²Ù×÷¹ý³Ì£©

1¡¢ÓÃMATLABÉè¼ÆFIRÊý×ÖÂ˲¨Æ÷µÄϵÊý£º

£¨4£© ÔÚMatlabÃüÁî´°¿ÚÖÐÊäÈëb=fir1(8,0.4) ²¢»Ø³µ£¬ÒÔÉè¼ÆÒ»¸öFIRµÍͨÂ˲¨Æ÷£¬Æä½×ÊýΪ8£¬

½ØÖ¹ÆµÂÊΪ0.4£¬²ÉÓúºÃ÷´°£»£¨×¢£ºÃüÁîÖÐ1ÊÇ123µÄ1£©

£¨5£© ¼Ç¼ÃüÁî´°¿ÚÖÐÉú³ÉµÄÂ˲¨Æ÷ϵÊýb;

£¨6£© ÔÚMatlabÃüÁî´°¿ÚÖÐÊäÈëfreqz(b,1,512) ²¢»Ø³µ£¬ÒÔÇó³öËùÉè¼ÆµÄFIRµÍͨÂ˲¨Æ÷µÄ·ùƵÏìÓ¦

ºÍÏàÆµÏìÓ¦£¬²¢¼Ç¼;£¨×¢£º1ÊÇ123µÄ1£©

2¡¢ÓÃDSPʵÏÖ1ÖÐËùÉè¼ÆµÄFIRÊý×ÖÂ˲¨Æ÷ £¨8£© Æô¶¯CCS£¬ÔÚProjectÑ¡ÏîÖдò¿ªfir.pjt¡£

£¨9£© ʹÓÃBuildÑ¡ÏîÍê³É±àÒë¡¢Á¬½Ó£¬È»ºóʹÓÃFille²Ëµ¥ÖеÄLoad Program½«Éú³ÉµÄfir.outÎļþ

×°Èë¡£

£¨10£© Ñ¡Debug->Go mainÕÒµ½Ö÷º¯Êý£¬ÔÚ¡° while(1);¡±Óï¾ä´¦Ôö¼ÓÒ»¸ö¶Ïµã¡£

£¨11£© Ñ¡View->Graph->Time/Frequency¡­´ò¿ªÍ¼ÐÎÏÔʾÉèÖô°¿Ú£»ÔÚµ¯³öµÄ¶Ô»°¿òÖа´ÏÂͼÉèÖã¬Ö÷Òª

Ð޸Ľ«ÉèÖô°¿ÚÖеġ°Display Type¡±¸ÄΪ¡°FFT Magnitude¡±£¬¡°Graph Title¡±Îª¡°xin¡±,¡°Start

.

.

Address¡±Îªx,¡°Display Data Size¡±Îª128£¬¡°Acquisition Buffer Size¡± Ϊ128£¬¡°DSP Data Type¡±Îª¡°32-bit IEEE floating point¡±¡£½«ÔÚͼÐÎÏÔʾ´°¿ÚÏÔʾÊäÈëÐòÁеÄ128µã²¨ÐΡ£

£¨12£© Ñ¡View->Graph->Time/Frequency¡­´ò¿ªÍ¼ÐÎÏÔʾÉèÖô°¿Ú£»ÔÚµ¯³öµÄ¶Ô»°¿òÖа´ÏÂͼÉèÖã¬Ö÷Òª

Ð޸Ľ«ÉèÖô°¿ÚÖеġ°Display Type¡±¸ÄΪ¡°FFT Magnitude¡±£¬¡°Graph Title¡±Îª¡°yout¡±,¡°Start Address¡±Îªy,¡°Display Data Size¡±Îª128£¬¡°Acquisition Buffer Size¡± Ϊ128£¬¡°DSP Data Type¡±Îª¡°32-bit IEEE floating point¡±¡£½«ÔÚͼÐÎÏÔʾ´°¿ÚÏÔʾÊä³öÐòÁеÄ128µã²¨ÐΡ£

£¨13£© Ñ¡Window->Tile,ʹ¸÷´°¿ÚƽÆÌÏÔʾ¡£

£¨14£© °´F5 ¼üÆô¶¯³ÌÐòÔËÐС£¹Û²ì¼Ç¼±È½ÏÊäÈëÊä³öƵÆ×¡£ÊäÈëÊä³ö²¨ÐμǼ·½·¨£ºÓÃPrintScreen¼ü

¼Ç¼µ±Ç°ÆÁÄ»£¬´ò¿ªWindows µÄ¸½¼þÖл­Í¼¹¤¾ß£¬Ñ¡¡°±à¼­->Õ³Ìù¡±£¬È»ºó¼ôÑ¡ËùÐèµÄÊäÈëÊä³öÐòÁв¨ÐÎͼ£¬Õ³ÌùÖÁWordÎĵµ£¬´òÓ¡ÌùÓÚʵÑ鱨¸æ¡£

3¡¢°´²½Öè1£¬2Éè¼Æ×Ô¼ºµÄFIRÊý×ÖÂ˲¨Æ÷33+13+19

£¨1£© ÓÃMATLABÉè¼ÆFIRÊý×ÖÂ˲¨Æ÷µÄϵÊý£ºÉè¼ÆÒ»¸öFIRµÍͨÂ˲¨Æ÷£¬Æä½×ÊýΪ20+×éԱǩµ½±íÐòºÅÄ©

λµÄºÍ=35£¬½ØÖ¹ÆµÂÊΪ0.3£¬²ÉÓúºÃ÷´°¡£

£¨2£© ÓÃDSPʵÏÖ£¨1£©ÖÐËùÉè¼ÆµÄFIRÊý×ÖÂ˲¨Æ÷£º ÔÚProject¹ÜÀíÀ¸Öдò¿ªfir8order.cÎļþ£¬

ÐÞ¸Ä#define MAX_ORDER 8Ϊ#define MAX_ORDER µ±Ç°½×Êý£» ÐÞ¸Ä

float coff[]=

{ -0.0061 , -0.0136 , 0.0512 , 0.2657 , 0.4057 , 0.2657 , 0.0512 , -0.0136 , -0.0061 } Ϊ

float coff[]={£¨1£©ÖÐÉú³ÉµÄϵÊýϵÊý¡­ };

Ñ¡File->Save±£´æÐ޸ģ¬Öظ´²½Öè2¡£

Î塢ʵÑé½á¹û·ÖÎö¼°ÎÊÌâÌÖÂÛ(Êý¾Ý¡¢Í¼±í¡¢¼ÆËãµÈ)

ʵÑéÄÚÈÝ1Â˲¨Æ÷ϵÊý¼°FIRµÍͨÂ˲¨Æ÷µÄ·ùƵÏìÓ¦ºÍÏàÆµÏìÓ¦

.

.

ʵÑéÄÚÈÝ3 C³ÌÐò,ÊäÈëÊä³öƵÆ×¶Ô±Èͼ£¬ºÍÏà¹Ø±È½Ï½áÂÛ£º Ç©µ½±íĩλÐòºÅºÍ£º15£¬¼´½×ÊýΪ35£¬½ØÖ¹ÆµÂÊΪ0.3

.

.

.