版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、本章中主要掌握C54X的存儲(chǔ)器和外設(shè)的接口方法,F(xiàn)IR、IIR濾波器實(shí)現(xiàn)方法,F(xiàn)FT實(shí)現(xiàn)方法,數(shù)字波形產(chǎn)生方法,以及程序自動(dòng)加載,最后學(xué)習(xí)串行口編程 。,第六章 C54x的軟硬件應(yīng)用,FIR濾波器的C54實(shí)現(xiàn)方法 IIR濾波器的C54實(shí)現(xiàn)方法 FFT的C54x實(shí)現(xiàn)方法 正弦和余弦信號(hào)發(fā)生器 程序的自舉加載 C54x與外設(shè)的接口 串口編程 設(shè)計(jì)實(shí)例,FIR濾波器的C54實(shí)現(xiàn)方法,FIR濾波器的結(jié)構(gòu)原理 線(xiàn)型緩沖區(qū)法實(shí)現(xiàn)FIR 循環(huán)緩沖區(qū)法實(shí)現(xiàn)FIR,FIR濾波器的結(jié)構(gòu)原理,數(shù)字濾波器是DSP的一個(gè)最基本的應(yīng)用領(lǐng)域,其中FIR濾波器的差分方程及結(jié)構(gòu)圖如下: y(n)=,Z-1,Z-1,Z-1,Z-
2、1,X(n) X(n-1) X(n-2) X(n-N+2) X(n-N+1),a0,a1,a2,aN-2,aN-1,yn,FIR濾波器的結(jié)構(gòu)原理,在結(jié)構(gòu)圖中Z-1表示延時(shí),X(n)表示當(dāng)前采樣值,X(n-1)表示前一時(shí)刻采樣值, X(n-2)表示X(n-1)之前的采樣值 ,而X(n-N+1)表示的是與當(dāng)前輸出有關(guān)的最老的采樣值。 FIR濾波器的最主要特點(diǎn)是沒(méi)有反饋回路,因而是無(wú)條件穩(wěn)定系統(tǒng)。它的單位沖擊響應(yīng)h(n)是一個(gè)有限長(zhǎng)序列。 特別是h(n)=h(N-1-n) 或h(n)=-h(N-1-n),且N為偶數(shù)時(shí),即濾波器系數(shù)具有對(duì)稱(chēng)或反對(duì)稱(chēng)特性時(shí),該濾波器輸出具有線(xiàn)性相位特性。,FIR濾波器的
3、C54實(shí)現(xiàn)方法,FIR濾波器的結(jié)構(gòu)原理 線(xiàn)性緩沖區(qū)法實(shí)現(xiàn)FIR 循環(huán)緩沖區(qū)法實(shí)現(xiàn)FIR,線(xiàn)性緩沖區(qū)法實(shí)現(xiàn)FIR,(1)用線(xiàn)性緩沖區(qū)法實(shí)現(xiàn)Z-1 線(xiàn)型緩沖區(qū)法的特點(diǎn): i)對(duì)于N級(jí)的FIR濾波器,需要在數(shù)存單元中開(kāi)辟一個(gè)稱(chēng)為滑窗的N個(gè)單元的緩沖區(qū),存放最新的N個(gè)輸入樣本。 ii)從最老的樣本開(kāi)始,每讀一個(gè)樣本后,將此樣本向下移動(dòng)。讀完最后一個(gè)樣本后,輸入最新樣本到緩沖區(qū)頂部。 注意:由于線(xiàn)性緩沖區(qū)法使用了DELAY指令,因而該存儲(chǔ)區(qū)必須定義在 DARAM中。,線(xiàn)性緩沖區(qū)法實(shí)現(xiàn)FIR,如:一個(gè)六階濾波器樣本點(diǎn)處理方法,系數(shù)單元,線(xiàn)性緩沖區(qū)法實(shí)現(xiàn)FIR,(2)具有線(xiàn)性演示功能的指令有: DELAY
4、Smem ;(Smem+1)=(Smem) 將數(shù)據(jù)送給下一個(gè)單元 LTD Smem ; 相當(dāng)于LT +DELAY 執(zhí)行先執(zhí)行T=(Smem), 然后再執(zhí)行( Smem+1)=(Smem) MACD Smem,Pmad,src ; 相當(dāng)于MACP +DELAY 先執(zhí)行src=src+(Smem)*(Pmad), 然后再執(zhí)行( Smem+1)=(Smem) 由于線(xiàn)性緩沖區(qū)法都是將固定的單元內(nèi)容和固定的濾波器系數(shù)相乘,因此數(shù)據(jù)在緩沖區(qū)中運(yùn)算后必須送給它后一個(gè)單元,因此運(yùn)算中都有數(shù)據(jù)向后移位的操作。,線(xiàn)性緩沖區(qū)法實(shí)現(xiàn)FIR,(3)直接尋址法實(shí)現(xiàn)FIR濾波器 N=5, y(n)= PA0 .SET 00
5、00H;D/A端口 PA1 .SET 0001H;A/D端口 .bss y,1 ; y(n) 輸出 .bss XN,1 ; x(n) 新采樣值 .bss XN1,1; x(n-1) .bss XN2,1; x(n-2) .bss XN3,1; x(n-3) .bss XN4,1; x(n-4) .TEXT A0: .WORD 1*32768/10 ;各系數(shù) A1: .WORD 2*32768/10,線(xiàn)性緩沖區(qū)法實(shí)現(xiàn)FIR,A2: .WORD 3*32768/10 A3: .WORD 4*32768/10 A4 .WORD 5*32768/10 Start:LD #XN,DP SSBX FRCT
6、 PORTR PA1,XN ;從端口PA1讀入采樣值,存入X(n) LOOP: LD XN4,T ; T=X(n-4) MPY A4,A ;A=X(n-4)*A4 LTD XN3 ;T=X(n-3) ,X(n-4)=X(n-3) , ;LTD =LT +DELAY MAC A3,A ;A=X(n-3)*A3+ X(n-4)*A4 LTD XN2 ;T=X(n-2),X(n-3)=X(n-2) MAC A2,A ;A=A+X(n-2)*A2,x(n-3),x(n-2),x(n-1),x(n),x(n+1),線(xiàn)性緩沖區(qū)法實(shí)現(xiàn)FIR,LTD XN1 MAC A1,A LTD XN MAC A0,A
7、;A= STH A,y ;保存結(jié)果,因?yàn)樾?shù)乘法,保存高16位 PORTW y,PA0 ;將濾波器的輸出從端口送出去 BD LOOP ;延遲后分支,執(zhí)行下一條語(yǔ)句后再執(zhí) ;行分支操作 PORTR PA1,XN ;從端口PA1中讀入下一個(gè)新的采樣值。,線(xiàn)性緩沖區(qū)法實(shí)現(xiàn)FIR,(4)雙操作數(shù)尋址法實(shí)現(xiàn)FIR濾波器 N=5, y(n)= PA0 .SET 0000H;D/A端口 PA1 .SET 0001H;A/D端口 .bss x,7 ; y(n), x(n), x(n-1), x(n-4) ,輸出及各采樣值 .text COEF: .word 1*32768/10 , 2*32768/10, 3
8、*32768/10, 4*32768/10 , 5*32768/10 ;各濾波器系數(shù) a4, a3, a2, a1, a0,線(xiàn)型緩沖區(qū)法實(shí)現(xiàn)FIR,Start: SSBX FRCT STM #x+5,AR1 STM #4,AR0 LD #x+1,DP PORTR PA1,x+1 ;從端口PA1讀入采樣值,存入X(n) FIR:RPTZ A,#4 MACD *AR1-,COEF,A; p240 STH A,*AR1 ;保存濾波器輸出結(jié)果 PORTW *AR1+,PA0 ;將濾波器的輸出從端口送出去 BD FIR ;延遲后分支操作 PORTR PA1,*AR1+0 ;從端口PA1中讀入下一個(gè)新的采
9、樣值。,ar1,COEF,FIR濾波器的C54實(shí)現(xiàn)方法,FIR濾波器的結(jié)構(gòu)原理 線(xiàn)型緩沖區(qū)法實(shí)現(xiàn)FIR 循環(huán)緩沖區(qū)法實(shí)現(xiàn)FIR ,循環(huán)緩沖區(qū)法實(shí)現(xiàn)FIR,(1)用循環(huán)緩沖區(qū)法實(shí)現(xiàn)Z-1 循環(huán)緩沖區(qū)法的特點(diǎn): i 對(duì)于N階FIR濾波器,在數(shù)據(jù)存儲(chǔ)區(qū)中開(kāi)辟一個(gè)也成為滑窗的N個(gè)單元的緩沖區(qū),滑窗中保存最新的N個(gè)輸入樣本。 ii 每次輸入新樣本時(shí)改寫(xiě)滑窗中最老的數(shù)據(jù),而滑窗中其它的數(shù)據(jù)不需移動(dòng)。 iii 利用BK寄存器(循環(huán)緩沖區(qū)長(zhǎng)度)對(duì)滑窗進(jìn)行間接尋址,循環(huán)緩沖區(qū)地址首尾相鄰 注意:由于采用循環(huán)緩沖區(qū)尋址方式,因而緩沖區(qū)開(kāi)始地址應(yīng)安排在如下的地址單元中。,循環(huán)緩沖區(qū)法實(shí)現(xiàn)FIR,假設(shè)緩沖區(qū)長(zhǎng)度為N,
10、具有2K N=2K-1,則循環(huán)緩沖區(qū)應(yīng)安排在以最低位地址為K個(gè)0開(kāi)始的單元,如N=31, 有K=5 則循環(huán)緩沖區(qū)應(yīng)設(shè)置在地址為 XXXX XXXX XXX0 0000B 開(kāi)始的單元。 緩沖區(qū)輸出定位實(shí)現(xiàn)方法: 1、在原程序中定義舉例: X0: .usect “Fir_Memory”,31 ;定義未初始化段 Fir_Memory,并為該段保留31個(gè)單元。 2、在連接器命令文件中的SECTIONS(段輸出定位)中加入如下命令: Fir_Memory: align(32) DATA PAGE 1,循環(huán)緩沖區(qū)法實(shí)現(xiàn)FIR,循環(huán)緩沖區(qū)法使用的尋址方式有: *ARx+%; ARx=circ(ARx+1)
11、*ARx-%; ARx=circ(ARx-1); *ARx-0%; ARx=circ(ARx+AR0) *ARx+0%; ARx=circ(ARx-AR0) *+ARx(lk)%; ARx= circ(ARx+lk),循環(huán)緩沖區(qū)法實(shí)現(xiàn)FIR,2)循環(huán)緩沖區(qū)法實(shí)現(xiàn)FIR濾波器 N=5, y(n)= .title “FIR4.ASM” .mmregs .def start .bss y,1;定義輸出量 xn.usect “s_xn”,5 ;x(n),x(n-1),x(n-4) a0 .usect “s_a0”,5 ; a0,a1, a2,a3,a4 PA0 .set 0000H PA1 .set
12、0001H .data,循環(huán)緩沖區(qū)法實(shí)現(xiàn)FIR,table: .word 1*32768/10 .word 2*32768/10 .word 3*32768/10 .word 4*32768/10 .word 5*32768/10 .text start: SSBX FRCT STM #a0,AR1 RPT #4 MVKD table,*AR1+ STM #xn+4,AR3;AR3指向最老采樣值x(n-4) STM #a0+4,AR4;AR4指向系數(shù)a4,循環(huán)緩沖區(qū)法實(shí)現(xiàn)FIR,STM #5,BK ;緩沖區(qū)長(zhǎng)度為5 STM #-1,AR0 ;AR0 = -1 LD #xn,DP PORTR P
13、A1, xn ; 從端口PA1讀入采樣值 ;并存入X(n)中 FIR: RPTZ A, #4 MAC *AR3+0%,*AR4+0%,A STH A,y PORTW y,PA0 BD FIR PORTR PA1,*AR3+0% ;每次循環(huán)后AR3仍指 .END ;向最老采樣值x(n-3),AR4仍指向a4,ar3,ar4,X(n+1),X(n-4),循環(huán)緩沖區(qū)法實(shí)現(xiàn)FIR,注意:在鏈接命令文件中的SECTIONS命令中指定 s_xn: align(8) DARAM PAGE1 s_a0: align(8) DARAM PAGE1,循環(huán)緩沖區(qū)法實(shí)現(xiàn)FIR,3)系數(shù)對(duì)稱(chēng)的FIR濾波器的實(shí)現(xiàn) 系數(shù)對(duì)
14、稱(chēng)的濾波器具有線(xiàn)性相位特性。在算法中使用FIRS指令: FIRS Xmem,Ymem,Pmad 執(zhí)行: PAR = Pmad if( RC!=0 ) B= B+ AH*Pmad A= ((Xmem)+(Ymem))16 ) PAR=PAR +1 RC=RC-1 ;計(jì)數(shù)器 ,循環(huán)緩沖區(qū)法實(shí)現(xiàn)FIR,如N=8的系數(shù)對(duì)稱(chēng)的FIR濾波器輸出方程如下: Y(n) = a0*x(n)+a1*x(n-1)+a2*x(n-2)+a3*x(n-3)+ a4*x(n-4)+a5*x(n-5)+a6*x(n-6)+a7*x(n-7) = a0*x(n)+ x(n-7) + a1*x(n-1)+ x(n-6) + a
15、2*x(n-2)+ x(n-5) + a3*x(n-3)+ x(n-4) 從以上的推導(dǎo)可以看出由于系數(shù)的對(duì)稱(chēng)性使得乘法運(yùn)算的次數(shù)減少了一倍。 實(shí)現(xiàn)要點(diǎn): (1)開(kāi)辟兩個(gè)循環(huán)緩沖區(qū)(New和Old)分別存放新老數(shù)據(jù),長(zhǎng)度都為N/2。 (2)使用輔助寄存器AR2指向最新的數(shù)據(jù)和AR3指向最老的數(shù)據(jù)。,循環(huán)緩沖區(qū)法實(shí)現(xiàn)FIR,(3)將濾波器系數(shù)表存放在程序存儲(chǔ)器中。 (4)使用FIRS指令將AR2和AR3指向的單元相加并與程序存儲(chǔ)器中的系數(shù)相乘。 (5)利用單指令重復(fù)實(shí)現(xiàn)FIR濾波 (6)修正數(shù)據(jù)指針,使AR2和AR3分別指向New和Old緩沖區(qū)中最老的數(shù)據(jù)。 (7)用New緩沖區(qū)中最老的數(shù)據(jù)代替O
16、ld緩沖區(qū)中最老的數(shù)據(jù)。 (8)讀入新數(shù)據(jù)代替New緩沖區(qū)中最老的數(shù)據(jù)。 (9)重復(fù)執(zhí)行下一輪濾波操作,循環(huán)緩沖區(qū)法實(shí)現(xiàn)FIR,運(yùn)算y(n)=a0*x(n)+x(n-7)+a1*x(n-1)+x(n-6)+ a2*x(n-2)+x(n-5)+ a3*x(n-3)+x(n-4) .mmreg .def start .bss y,1; 輸出 x_new .usect “DATA1”,4 ;x(n),x(n-3),x(n-2),x(n-1) ; 按逆序循環(huán)排列 x_old . usect “DATA2”,4 ;x(n-4),x(n-5),x(n-6),x(n-7) ; 按順序循環(huán)排列 size .s
17、et 4;緩沖區(qū)尺寸 PA0 .set 0000H PA1 .set 0001H,ar2,ar3,循環(huán)緩沖區(qū)法實(shí)現(xiàn)FIR,.text COEF .word 1*32768/10,2*32768/10 ;濾波器系數(shù)表 .word 2*32768/10,4*32768/10 ; a0,a1a2,a3 ;按順序排列 start: LD #y,DP SSBX FRCT STM #x_new,AR2 ;AR2指向新緩沖區(qū)第一個(gè)單 ;元X(n)最新的數(shù)據(jù) STM #x_old+size-1,AR3;AR指向老緩沖區(qū)最 ;后一個(gè)單元X(n-7)最老的數(shù)據(jù) STM #size,BK ;設(shè)置循環(huán)緩沖區(qū)大小,循環(huán)
18、緩沖區(qū)法實(shí)現(xiàn)FIR,STM#-1,AR0 ;AR0 = -1 PORTR PA1, x_new ; 從端口PA1讀入采 ;樣值,并存入X(n) FIR:ADD *AR2+0%,*AR3+0%,A ;第一次 ;A= x(n)16+x(n-7)16 ,然后將AR2指向x(n-1),AR3指向x(n-6) RPTZ B,#(size-1) ; FIRS *AR2+0%,*AR3+0%,COEF ;第一次執(zhí)行 ;B=AH*a0,A=(x(n-1)+x(n-6)16, ;PAR=coef+1,RC=RC-1,直到B= (x(n)+x(n-7)a0+. +( x(n-3)+x(n-4)a4,此時(shí)AR2指向
19、x(n-1),AR3指向X(n-6)單元。,x_new x(n),x(n-3), x(n-2),x(n-1),x(n-4),x(n-5),x(n-6),x(n-7) x_old,ar2,ar3,循環(huán)緩沖區(qū)法實(shí)現(xiàn)FIR,STH B,y;因?yàn)樾?shù)乘法,因而保存高位單元 PORTW y,PA0;將濾波后的數(shù)據(jù)輸出出去 MAR *+AR2(2)%;將AR2指向x(n-3)即x_new中最;老的數(shù) MAR *AR3+%;將AR3 指向x(n-7)x_old中最老的數(shù) MVDD *AR2,*AR3+0% ;將x_new中最老的數(shù)替 ;換x_old 緩沖區(qū)中最老的數(shù) ,然后將AR3指向 ;移位后最老的數(shù) B
20、D FIR PORTR PA1,*AR2 .END,ar2,ar3,計(jì)算中ar2和ar3共循環(huán)左移5次 搬移數(shù)據(jù)時(shí)ar2+2,ar3+1 搬移后ar3又左移一位,X(n-3),X(n+1),第六章 C54x的軟硬件應(yīng)用,FIR濾波器的C54實(shí)現(xiàn)方法 IIR濾波器的C54實(shí)現(xiàn)方法 FFT的C54x實(shí)現(xiàn)方法 正弦和余弦信號(hào)發(fā)生器 程序的自舉加載 C54x與外設(shè)的接口 串口編程 設(shè)計(jì)實(shí)例,IIR濾波器的C54實(shí)現(xiàn)方法,IIR濾波器的結(jié)構(gòu)原理 二階IIR濾波器的實(shí)現(xiàn)方法 濾波器編程中需要注意的問(wèn)題,IIR濾波器的結(jié)構(gòu)原理,1、IIR濾波器的結(jié)構(gòu)和差分方程 由IIR濾波器的傳輸函數(shù) H(Z)= ,可以得
21、 出差分方程y(n)= + ,其中 稱(chēng)為正向傳輸網(wǎng)絡(luò),稱(chēng) 為反饋網(wǎng)絡(luò)。 2、IIR濾波器和FIR濾波器比較: 1)在選擇性相同的情況下,IIR濾波器的階數(shù)少,因而相對(duì)運(yùn)算量少,使用存儲(chǔ)器也較少。 2)IIR濾波器的相位非線(xiàn)性很?chē)?yán)重,因而適合于做對(duì)相位要求不嚴(yán)格的場(chǎng)合,如語(yǔ)音通信。,IIR濾波器的結(jié)構(gòu)原理,而FIR濾波器,特別是系數(shù)對(duì)稱(chēng)的并且系數(shù)個(gè)數(shù)為偶數(shù)的濾波器,具有線(xiàn)性相位特性。適合做圖像信號(hào)處理等方面的應(yīng)用。,IIR濾波器的C54實(shí)現(xiàn)方法,IIR濾波器的結(jié)構(gòu)原理 二階IIR濾波器的實(shí)現(xiàn)方法 濾波器編程中需要注意的問(wèn)題,二階IIR濾波器的實(shí)現(xiàn)方法,1、二階IIR濾波器的實(shí)現(xiàn)方法 高階的濾波器
22、總可以化為多個(gè)二階基本節(jié)相級(jí)聯(lián)或并聯(lián)形式,因而只要掌握二階IIR濾波器即可。下圖為一個(gè)二階IIR濾波器的結(jié)構(gòu)圖,x(n),w(n),X0,X1,X2,Y(n),A1,A2,B0,B1,B2,前向通道,反饋通道,二階IIR濾波器的實(shí)現(xiàn)方法,可以將濾波器分成兩個(gè)差分方程來(lái)進(jìn)行運(yùn)算。 先計(jì)算反饋通道:X0=W(n)=x(n)+A1*X1+A2*X2 再計(jì)算前向通道:Y(n)=B0*X0+B1*X1+B2*X2 2、二階IIR濾波器的單操作數(shù)指令線(xiàn)性緩沖區(qū)法實(shí)現(xiàn) .bss x0,1 ;X0單元,計(jì)算前用于存放當(dāng)前采 ;樣值 x(n),計(jì)算中用于存放暫存X0 ; 計(jì)算后用于存放濾波輸出y(n) .bss
23、 x1,1 ;X1 .bss x2,1 ;X2 .data B2: .word 1*32768/10 B1.word 2*32768/10,二階IIR濾波器的實(shí)現(xiàn)方法,B0.word 3*32768/10 A2.word 4*32768/10 A1.word 5*32768/10 .text LD #x0,DP SSBX FRCT IIR: PORTR PA1,X0 ;讀入采樣值 ,計(jì)算反饋通道 LD X0,16,A ;AH= X0,注意此句 LD X1,T ; T=X1 MAC A1,A ;A=X0 + X1*A1 LD X2,T ; T=X2,二階IIR濾波器的實(shí)現(xiàn)方法,MAC A2,A
24、;A=X0+X1*A1+A2*X2 =W(N) STH A,X0 ; 保存結(jié)果到X0中 ;計(jì)算前向通道 MPY B2,A ;A= X2*B2 LTD X1 ;T=X1, DELAY X1 MAC B1,A ;A=X1*B1+X2*B2 LTD X0 ;T=X0,DELAY X0 MAC B0,A ;A=B0*X0 +X1*B1+X2*B2 ;輸出結(jié)果 STH A,X0 ;暫存濾波器輸出結(jié)果 BD IIR ; PORTW X0,PA0 ;將輸出結(jié)果送給DA 。,二階IIR濾波器的實(shí)現(xiàn)方法,3、 二階IIR濾波器的雙操作數(shù)指令的實(shí)現(xiàn) ; 先計(jì)算反饋通道W(n)=x(n)+A1*x1+A2*x2 ;
25、再計(jì)算前向通道 y(n)=B0*x0 +B1*x1+ B2*x2 X.usect “IIR_Memory”,3 ;X0,X2,X1反向循環(huán)排列 ;X0=x(n) COEF: .word 1*32768/10 ;B2 .word 2*32768/10 ;B1 .word 3*32768/10 ;B0 .word 4*32768/10 ;A2 .word 5*32768/10 ;A1 SSBX FRCT ;小數(shù)乘法 STM #X,AR3 ;AR3 指向X0,STM #COEF+4,AR4;AR4 指向?yàn)V波器系數(shù)A1 MVMM AR4,AR1 ;AR1=AR4 STM #3,BK;循環(huán)緩沖區(qū)長(zhǎng)度為3
26、 STM #-1,AR0;AR0 = -1 ;計(jì)算反饋通道 IIR: PORTR PA1,*AR3;讀入采樣數(shù)據(jù) LD *AR3+0%,16,A;A=x(n) MAC *AR3+0%,*AR4-,A;A=x(n)+X1*A1 MAC *AR3+0%,*AR4-,A;A= x(n)+X1*A1+X2*A2 STH A,*AR3;X0= x(n)+X1*A1+X2*A2,AR4,AR3,x(n),X0,二階IIR濾波器的實(shí)現(xiàn)方法,;計(jì)算前向通道 MPY *AR3+0%,*AR4-,A;A=X0*B0 MAC *AR3+0%,*AR4-,A;A= X0*B0+ X1*B1 MAC *AR3,*AR4
27、 ,A;A=X0*B0+X1*B1+X2*B2 STH A,*AR3;保存濾波結(jié)果y(n)到X2 MVMM AR1,AR4;AR4=AR1 BD IIR; PORTW *AR3,PA0;輸出濾波后的數(shù)據(jù),AR4,AR3,X0,y0,X2,X1,PA,PA,x0,二階IIR濾波器的實(shí)現(xiàn)方法,4、直接形式二階IIR濾波器的實(shí)現(xiàn) 還可由二階IIR濾波器的傳輸函數(shù) H(Z)= , 得出直接形式二階差分方程y(n)= +,x(n),A1,A2,B0,B1,B2,y(n),直接二型IIR濾波器系統(tǒng)結(jié)構(gòu)圖,x(n-1),x(n-2),y(n-1),y(n-2),二階IIR濾波器的實(shí)現(xiàn)方法,.title “I
28、IR.ASM” .mmregs .def start X.usect “X”,3 ;x(n-2),x(n-1),x(n),按逆序排列 Y.usect “Y”,3 ;y(n-2),y(n-1),y(n),按逆序排列 B.usect “B”,3 ;B2 ,B1,B0,按逆序排列 A .usect “A”,3 ;A2,A1,未用,按逆序排列 PA0 .set 0000h PA1 .set 0001h .data table: .word 0 ;x(n-2) ;歷史采樣值 .word 0;x(n-1),二階IIR濾波器的實(shí)現(xiàn)方法,.word 0 ;y(n-2);歷史輸出值 .word 0 ;y(n-1
29、) .word 1*32768/10 ;B2=0.1 ;濾波器系數(shù) .word 2*32768/10 ;B1=0.2 .word 3*32768/10 ;B0=0.3 .word 5*32768/10 ;A2=0.5 .word -4*32768/10 ;A1=-0.4 .text start: SSBX FRCT ;小數(shù)乘法 ;以下用常量來(lái)初始化變量數(shù)組x(n-2),x(n-1) STM #X,AR1 ;,二階IIR濾波器的實(shí)現(xiàn)方法,RPT #1 MVKD #table,*AR1+ ;用常量來(lái)初始化變量數(shù)組y(n-2),y(n-1) STM #Y,AR1 RPT #1 MVKD #table
30、+2,*AR1+ ;初始化系數(shù)B2,B1,B0 STM #B,AR1 RPT #1 MVKD #table+4,*AR1+ ; 初始化系數(shù)A2, A1 STM #A,AR1 ;,二階IIR濾波器的實(shí)現(xiàn)方法,RPT #1 MVKD #table+7,*AR1+ STM #X+2,AR2 ;AR2指向x(n) STM #A+1,AR3 ;AR3 指向A1 STM #Y+1,AR4 ;AR4指向y(n-1) STM #B+2,AR5 ;AR5 指向B0 STM #3,BK ;循環(huán)緩沖區(qū)長(zhǎng)度=3 STM #-1,AR0 ;AR0 = -1 IIR: PORTR PA1, *AR2 ;從端口讀入x(n)
31、 MPY *AR2+0%,*AR5+0%,A;計(jì)算前向通道 ;A=x(n)*B0 MAC *AR2+0%,*AR5+0%,A; A=x(n-1)*B1+x(n)*B0,X,AR2,AR3,AR4,AR5,B,A,Y,MAC *AR2,*AR5+0%,A ;A= x(n-2)*B2+x(n-1)*B1 ;+x(n)*B0,此時(shí)AR5指向B0,AR2指向x(n-2)-最老數(shù) ;以下計(jì)算反饋通道 MAC *AR4+0%,*AR3+0%,A; A=y(n-1)*A1+ ;x(n-2)*B2+x(n-1)*B1+x(n)*B0 MAC *AR4+0%,*AR3+0%,A ; A= y(n-2)*A2+
32、;y(n-1)*A1+ x(n-2)*B2+x(n-1)*B1+x(n)*B0 MAR *AR3+0% ;修正AR3=AR3-1,將AR3指向A1 ;此時(shí)AR4指向y(n) STH A,*AR4 ;保存濾波結(jié)果 BD IIR PORTW *AR4,PA0 ;將結(jié)果從DA輸出 .end,IIR濾波器的C54實(shí)現(xiàn)方法,IIR濾波器的結(jié)構(gòu)原理 二階IIR濾波器的實(shí)現(xiàn)方法 濾波器編程中需要注意的問(wèn)題,濾波器編程中需要注意的問(wèn)題,(1)高階的IIR濾波器一般分解成若干個(gè)二階基本節(jié)相級(jí)聯(lián)來(lái)實(shí)現(xiàn)。 (2)當(dāng)系數(shù)大于等于1時(shí)的定標(biāo)方法,一般采用將系數(shù)分解的方法,使各系數(shù)均為標(biāo)準(zhǔn)Q15小數(shù)。 如B0是大于1并且
33、小于2的數(shù),可采用X(n)*B0 =X(n)*B0/2 +X(n)*B0/2的方法來(lái)實(shí)現(xiàn) 。,第六章 C54x的軟硬件應(yīng)用,FIR濾波器的C54實(shí)現(xiàn)方法 IIR濾波器的C54實(shí)現(xiàn)方法 FFT的C54x實(shí)現(xiàn)方法 正弦和余弦信號(hào)發(fā)生器 程序的自舉加載 C54x與外設(shè)的接口 串口編程 設(shè)計(jì)實(shí)例,FFT的C54x實(shí)現(xiàn)方法,1)FFT是DFT的一種快速算法,即應(yīng)用蝶形因子的對(duì)稱(chēng)性、周期性,使計(jì)算X(K)= 時(shí)運(yùn)算量大大減少,在N點(diǎn)數(shù)較多時(shí)這種算法的優(yōu)勢(shì)尤其明顯。 我們需要掌握基2DIT-FFT 蝶形因子: 蝶形運(yùn)算信號(hào)流圖 參見(jiàn)數(shù)字信號(hào)處理教材 2)位反轉(zhuǎn)進(jìn)位尋址實(shí)現(xiàn):如使用*AR2+0B STM #I
34、NPUT,AR2 如果AR2=0000 0000 1100 0000B ,N=8,應(yīng)設(shè)置AR0=N/2=4, AR0 = 0000 0000 0000 0100B,FFT的C54x實(shí)現(xiàn)方法,;8-1024 點(diǎn)采樣FFT變換程序 .title fft.asm .mmregs .def _c_int00 .copy coeff.inc sine:.usect sine,512 ;正弦函數(shù) cosine: .usect cosine,512;余弦函數(shù) fft_data: .usect fft_data,2048;FFT結(jié)果 d_input:.usect d_input,2048;輸入數(shù)據(jù) fft_o
35、ut:.usect fft_out,2048; 功率譜輸出 STACK:.usect STACK,10 K_DATA_IDX_1 .set 2 ; K_DATA_IDX_2.set4; K_DATA_IDX_3.set 8; K_TWID_TBL_SIZE.set 512; K_TWID_IDX_3.set 128; K_FLY_COUNT_3.set 4; K_FFT_SIZE .set 8; FFT 點(diǎn)數(shù) K_LOGN.set 3; 2*5=32 蝶形運(yùn)算級(jí)數(shù) PA0.set 0 ;定義端口 PA1.set 1 ;定義端口 .bss d_twid_idx,1 .bss d_data_idx
36、,1 .bss d_grps_cnt,1 .sect fft_prg ;程序段名 ;以下倒序程序 .asg AR2,REORDERED ;表示使用REORDERED 來(lái)代替AR2 .asg AR3,ORIGINAL_INPUT ;原始輸入 .asg AR7,DATA_PROC_BUF ;數(shù)據(jù)處理緩沖區(qū) _c_int00: SSBX FRCT STM #STACK+10,SP ;從端口讀入64個(gè)數(shù)據(jù) STM#d_input,AR1 RPT #2*K_FFT_SIZE-1 ;15 PORTRPA1,*AR1+ ; ;將程序存儲(chǔ)器中的正弦函數(shù)表搬移到數(shù)據(jù)存儲(chǔ)器 STM#sine,AR1 PRT #5
37、11 MVPD sinel,*AR1+ ;將程序存儲(chǔ)器中的余弦函數(shù)表搬移到數(shù)據(jù)存儲(chǔ)器 STM#cosine,AR1 PRT #511 MVPD cosinel,*AR1+ STM #d_input, ORIGINAL_INPUT ; ORIGINAL_INPUT指向輸入數(shù)據(jù)d_input STM #fft_data, DATA_PROC_BUF ; DATA_PROC_BUF指向倒序數(shù)組fft_data MVMM DATA_PROC_BUF, REORDERED ; REORDERED 也指向fft_data STM #K_FFT_SIZE-1, BRC ;將輸入數(shù)據(jù)按照反向進(jìn)位方式進(jìn)行排序,
38、保存在fft_data中 RPTBD bit_rev_end-1 STM #K_FFT_SIZE,AR0 ;由于d_input中數(shù)據(jù)按實(shí)部虛部排列,因此ar0取N/2的2倍 MVDD *ORIGINAL_INPUT+,*REORDERED+ MVDD *ORIGINAL_INPUT-,*REORDERED+ MAR *ORIGINAL_INPUT+0B;位反轉(zhuǎn)進(jìn)位尋址 bit_rev_end: .asgAR1,GROUP_COUNTER ; .asgAR2,PX .asgAR3,QX .asgAR4,WR .asgAR5,WI .asgAR6,BUTTERFLY_COUNTER .asgAR7
39、,STAGE_COUNTER ;將倒序后相鄰的數(shù)據(jù)的實(shí)部和虛部分別作和差運(yùn)算 ;和保存在前數(shù)據(jù)單元中,差保存在后面的數(shù)據(jù)單元 STM#0,BK LD #-1,ASM STM #fft_data,PX LD *PX,16,A STM #fft_data+K_DATA_IDX_1,QX STM#K_FFT_SIZE/2-1,BRC RPTBDstage_1_end -1 STM#K_DATA_IDX_1+1,AR0 ;ar0=3 SUB *QX,16,A,B ;B=PX-QX 第一次 A0-A1 ADD *QX,16,A ;A=PX+QX 第一次 A0+A1 STH A,ASM,*PX+ ;(PX
40、)=AH1 ;保存實(shí)部和 ST B,*QX+ ;(QX)=B16 ;保存實(shí)部差 |LD *PX,A ;讀取虛部 SUB*QX,16,A,B ; ADD *QX,16,A STHA,ASM,*PX+0% ;保存虛部和 ST B,*QX+0% ;保存虛部差 |LD *PX,A stage_1_end: STM #fft_data,PX ;PX指向fft_data的第一個(gè)單元(實(shí)部和單元) STM #fft_data+K_DATA_IDX_2,QX ;QX指向第fft_data的相鄰的實(shí)部和單元 STM #K_FFT_SIZE/4-1,BRC LD*PX,16,A ;讀入第一個(gè)和值 RPTBDsta
41、ge_2_end-1 STM #K_DATA_IDX_2+1,AR0 ;ar0 =4 ;一級(jí)蝶形算法 相鄰和式之間運(yùn)算 SUB*QX,16,A,B ;實(shí)部和相減 第一次 BH = A0+A4-A2-A6 ADD *QX,16,A ;實(shí)部和相加 第一次 AH = A0+A4+A2+A6 STHA,ASM,*PX+ ;保存相鄰實(shí)部和的和 ST B,*QX+ ;保存相鄰實(shí)部和的差 |LD *PX,A SUB *QX,16,A,B ;第一次 BH = A0+A4-A2-A6 ADD *QX,16,A;第一次 AH = A0+A4+A2+A6 STH A,ASM,*PX+ ;保存相鄰虛部和的和 STH
42、B,ASM,*QX+;保存相鄰虛部和的差 ;二級(jí)蝶形算法 相鄰和式之間運(yùn)算 MAR *QX+ ;此時(shí)PX指向?qū)嵅顔卧?QX指向第三個(gè)實(shí)差單元 ADD *PX,*QX,A ;第一次 A=實(shí)部(A0+A4)+虛部(A2-A6) SUB *PX,*QX-,B ;第一次 B=實(shí)部(A0+A4)-虛部(A2-A6) STHA,ASM,*PX+ ;保存 SUB *PX,*QX,A ;A=實(shí)部(A0+A4)-虛部(A0+A4-A2-A6) ST B,*QX ; |LD *QX+,B ; ST A,*PX |ADD *PX+0%,A ST A,*QX+0% |LD *PX,A ; stage_2_end: S
43、TM #K_TWID_TBL_SIZE,BK ST #K_TWID_IDX_3,d_twid_idx STM #K_TWID_IDX_3,AR0 STM #cosine,WR STM#sine,WI STM#K_LOGN-3,STAGE_COUNTER ST #K_FFT_SIZE/8-1,d_grps_cnt STM#K_FLY_COUNT_3-1, BUTTERFLY_COUNTER ST #K_DATA_IDX_3,d_data_idx stage: STM#fft_data,PX LDd_data_idx,A ADD *(PX),A STLM A,QX MVDK d_grps_cnt,
44、GROUP_COUNTER group:MVMDBUTTERFLY_COUNTER,BRC RPTBDbutterfly_end -1 LD *WR,T MPY*QX+,A MACR*WI+0%,*QX-,A ADD *PX,16,A,B ST B,*PX |SUB *PX+,B ST B,*QX |MPY *QX+,A MASR *QX,*WR+0%,A ADD *PX,16,A,B ST A,*QX+ |SUB *PX,B LD *WR,T ST B,*PX+ |MPY *QX+,A butterfly_end: PSHM AR0 MVDK d_data_idx,AR0 MAR *PX+0
45、 MAR*QX+0 BANZD group,*GROUP_COUNTER- POPM AR0 MAR *QX- LD d_data_idx,A SUB#1,A,B STLM B,BUTTERFLY_COUNTER STL A,1,d_data_idx LDd_grps_cnt,A STL A,ASM,d_twid_idx BANZDstage,*STAGE_COUNTER- MVDKd_twid_idx,AR0 ;計(jì)算功率譜 STM #fft_data,AR2 STM #fft_data,AR3 STM #fft_out,AR4 STM #K_FFT_SIZE*2-1,BRC RPTB pow
46、er_end-1 SQUR*AR2+,A ;A= *AR2 *AR2 , T= *AR2 SQURA*AR2+,A ;A= A+ *AR2 * *AR2, T= *AR2 STHA,*AR4+ power_end: STM#fft_out,AR4 RPT#K_FFT_SIZE-1 PORTW *AR4+,PA0 here:B here .end,第六章 C54x的軟硬件應(yīng)用,FIR濾波器的C54實(shí)現(xiàn)方法 IIR濾波器的C54實(shí)現(xiàn)方法 FFT的C54x實(shí)現(xiàn)方法 正弦和余弦信號(hào)發(fā)生器 程序的自舉加載 C54x與外設(shè)的接口 串口編程 設(shè)計(jì)實(shí)例,正弦和余弦信號(hào)發(fā)生器,正弦波產(chǎn)生方法主要有兩種: 1)查
47、表法。運(yùn)算量小,適用于精度不太高的場(chǎng)合,精度要求越高表就越大,同時(shí)使用的存儲(chǔ)器容量也越大。一般在單片機(jī)中使用較多。 2)泰勒級(jí)數(shù)展開(kāi)法。相對(duì)于查表法而言,運(yùn)算量增大,但使用的存儲(chǔ)單元少,精度高。一般在DSP中使用較多。 計(jì)算一個(gè)角度正弦值的程序清單 .title “sinx.asm” ;sin(theta)=x(1-x2/2*3(1-x2/4*5(1-x2/6*7(1-x2/8*9) .mmregs .def start,正弦和余弦信號(hào)發(fā)生器,.ref sin_start,d_x,d_sinx STACK: .usect “STACK”,10 start: STM #STACK+10,SP L
48、D #d_x,DP ST #6487,d_x ; 6487/32768 弧度 CALL sin_start end: B end sin_start: .def sin_start d_coeff.usect “coeff”,4 .data table:.word 01c7h ;c1=1/(8*9) .word 030bh ;c2=1/(6*7),正弦和余弦信號(hào)發(fā)生器,.word 0666h ;c3=1/(4*5) .word 1556h ;c4=1/(2*3) d_x .usect sin_vars,1 d_squr_x .usect sin_vars,1 d_temp .usect sin
49、_vars,1 d_sinx .usect sin_vars,1 c_l .usect sin_vars,1 .text SSBX FRCT STM #d_coef,AR5 ;move coeff stable RPT #3,正弦和余弦信號(hào)發(fā)生器,MVPD #table,*AR5+ STM #d_coef,AR3 STM #d_x,AR2 STM #c_l,AR4 ST #7FFFh,c_l SQUR *AR2+,A ; A=x2 ST A,*AR2 ;AR2=x2 |LD *AR4,B ;B=1 d_squr_xs=x2 MASR *AR2+,*AR3+,B,A ;A=1-x2/72 ;T=
50、x2 MPYA A ;A=T*A= x2*(1-x2/72) STH A,*AR2 ;(d_temp)= x2*(1-x2/72),正弦和余弦信號(hào)發(fā)生器,MASR *AR2-,*AR3+,B,A;A=1- x2/42*(1-x2/72) ;T= x2*(1-x2/72) MPYA *AR2+ ;B=x2*(1- x2/42*(1-x2/72) ST B,*AR2;d_temp)=x2*(1-x2/42*(1-x2/72) |LD *AR4,B ;B=1 MASR *AR2-,*AR3+,B,A ;A=1-x2/20*(1- x2/42*(1-x2/72) MPYA *AR2+ ;B=x2(1-
51、x2/20*(1-x2/42*(1-x2/72) ST B,*AR2 ;(d_temp)= x2(1-x2/20*(1- x2/42*(1-x2/72) |LD *AR4,B ;B=1,正弦和余弦信號(hào)發(fā)生器,MASR *AR2-,*AR3+,B,A ;A=1-x2/6(1-x2/20*(1- x2/42*(1-x2/72) MPYA d_x ;B=x(1-x2/6(1-x2/20*(1- x2/42*(1-x2/72) STH B,d_sinx ;sin(theta) RET 余弦值算法與正弦值算法類(lèi)似,只是泰勒級(jí)數(shù)展開(kāi)式不同。 sin(theta)=x(1-x2/2*3(1-x2/4*5(1
52、-x2/6*7(1-x2/8*9) cos(theta)=1-x2/2*(1-x2/3*4(1-x2/5*6(1-x2/7*8) 以下為0-360度正弦波產(chǎn)生程序 ;this function genarates the sine wave of angle using the taylor series expansion ;sin(theta)=x(1-x2/2*3(1-x2/4*5(1-x2/6*7(1-x2/8*9) ;cos(theta)=1-x2/2*(1-x2/3*4(1-x2/5*6(1-x2/7*8) ;sin(2*theta)=2*sin(theta)*cos(theta)
53、 .title sinx.asm .mmregs .global _sinxx .ref sinx,d_xs,d_sinx,cosx,d_xc,d_cosx sin_x: .usect sin_x,360 ;set sinx memory STACK: .usect STACK,10 ;set sp vector k_theta .set 240;theta=pi/360(0.5deg)*32768 ;set step=0.5 deg PA0 .set 0 ;set output DA port address _sinxx: .text NOP LD #0, DP ; reset datap
54、age pointer STM #0 x2000, SWWSR ; 2 wait cycle for IO space cos(theta) RET cc1:nop nop nop ret .end,正弦和余弦信號(hào)發(fā)生器,以下為0-360度正弦波產(chǎn)生程序 ;this function genarates the sine wave of angle using the taylor series expansion ;sin(theta)=x(1-x2/2*3(1-x2/4*5(1-x2/6*7(1-x2/8*9) ;cos(theta)=1-x2/2*(1-x2/3*4(1-x2/5*6(1
55、-x2/7*8) ;sin(2*theta)=2*sin(theta)*cos(theta) .title sinx.asm .mmregs .global _sinxx .ref sinx,d_xs,d_sinx,cosx,d_xc,d_cosx sin_x: .usect sin_x,360 ;set sinx memory STACK: .usect STACK,10 ;set sp vector k_theta .set 240;theta=pi/360(0.5deg)*32768 ;set step=0.5 deg PA0 .set 0 ;set output DA port add
56、ress _sinxx: .text NOP LD #0, DP ; reset datapage pointer STM #0 x2000, SWWSR ; 2 wait cycle for IO space cos(theta) RET cc1:nop nop nop ret .end,第六章 C54x的軟硬件應(yīng)用,FIR濾波器的C54實(shí)現(xiàn)方法 IIR濾波器的C54實(shí)現(xiàn)方法 FFT的C54x實(shí)現(xiàn)方法 正弦和余弦信號(hào)發(fā)生器 程序的自舉加載 C54x與外設(shè)的接口 設(shè)計(jì)實(shí)例,程序的自舉加載,1 DSP的程序只有加載后才能被執(zhí)行,加載的方式有并行加載,從HPI自舉加載,從I/O自舉加載,從串行口自舉加載和熱自舉加載五種,第六章 C54x的軟硬件應(yīng)用,FIR濾波器的C54實(shí)現(xiàn)方法 IIR濾波器的C54實(shí)現(xiàn)方法 FFT的C54x實(shí)現(xiàn)方法 正弦和余弦信號(hào)發(fā)生器 程序的自舉加載 C54x與外設(shè)的接口 串口編程 設(shè)計(jì)實(shí)例,C54x與外設(shè)的接口,1)C54x提供以下引腳用于存儲(chǔ)器及外設(shè)的連接及擴(kuò)展,C54x與外設(shè)的接口,C54x與外設(shè)的接口
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026錦泰財(cái)產(chǎn)保險(xiǎn)股份有限公司招聘系統(tǒng)工程師等崗位4人考試備考題庫(kù)及答案解析
- 2026年1月內(nèi)蒙古建元能源集團(tuán)有限公司招聘206人考試備考試題及答案解析
- 2026年安慶安徽壹方保安公司面向社會(huì)公開(kāi)選聘工作人員考核和綜合比選實(shí)施考試備考試題及答案解析
- 2026年湖口縣公安局交通管理大隊(duì)公開(kāi)招聘交通協(xié)管員筆試參考題庫(kù)及答案解析
- 2026江蘇南京市棲霞區(qū)招聘教師32人筆試備考試題及答案解析
- 2026湖北省面向山東大學(xué)普通選調(diào)生招錄筆試備考試題及答案解析
- 2026 年高職雜技與魔術(shù)表演(魔術(shù)設(shè)計(jì))試題及答案
- 2026年有研(廣東)新材料技術(shù)研究院招聘?jìng)淇碱}庫(kù)及參考答案詳解
- 2026年韶關(guān)學(xué)院招聘?jìng)淇碱}庫(kù)及一套完整答案詳解
- 2026年鹽亭發(fā)展投資集團(tuán)有限公司關(guān)于公開(kāi)招聘職能部門(mén)及所屬子公司工作人員的備考題庫(kù)及一套答案詳解
- 2025年安徽理工大學(xué)馬克思主義基本原理概論期末考試模擬試卷
- 2026 年中職機(jī)械基礎(chǔ)(機(jī)械基礎(chǔ))試題及答案
- 2025年大學(xué)大一(法學(xué))法理學(xué)試題及答案
- 膽囊癌課件教學(xué)課件
- 2025年昆明市呈貢區(qū)城市投資集團(tuán)有限公司及下屬子公司第二批招聘(11人)考試備考題庫(kù)附答案
- “青苗筑基 浙里建證”浙江省建設(shè)投資集團(tuán)2026屆管培生招聘30人備考核心題庫(kù)及答案解析
- 江蘇百校大聯(lián)考2026屆高三語(yǔ)文第一學(xué)期期末學(xué)業(yè)質(zhì)量監(jiān)測(cè)試題含解析
- 代還按揭協(xié)議書(shū)
- 廣西2025年高等職業(yè)教育考試全區(qū)模擬測(cè)試 能源動(dòng)力與材料 大類(lèi)試題及逐題答案解說(shuō)
- 2026江蘇省公務(wù)員考試公安機(jī)關(guān)公務(wù)員(人民警察)歷年真題匯編附答案解析
- 2025秋滬科版(五四制)(新教材)初中科學(xué)六年級(jí)第一學(xué)期知識(shí)點(diǎn)及期末測(cè)試卷及答案
評(píng)論
0/150
提交評(píng)論