




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、數字調制解調的DSP實現BPSK、QPSK調制解調仿真1 系統的工作原理1.1 BPSK調制解調原理在PSK調制時,載波的相位隨調制信號狀態不同而改變。如果兩個頻率相同的載波同時開始振蕩,這兩個頻率同時達到正最大值,同時達到零值,同時達到負最大值,此時它們就處于“同相”狀態;如果一個達到正最大值時,另一個達到負最大值,則稱為“反相”。一般把信號振蕩一次(一周)作為360度。如果一個波比另一個波相差半個周期,我們說兩個波的相位差180度,也就是反相。當傳輸數字信號時,“1”碼控制發0度相位,“0”碼控制發180度相位。載波相位只有0和兩種取值,分別對應于調制信號的“0”和“1”。傳“1“信號時,
2、發起始相位為的載波;當傳“0”信號時,發起始相位為0的載波。由“0”和“1”表示的二進制調制信號通過電平轉換后,變成由“1”和“1”表示的雙極性NRZ(不歸零)信號,然后與載波相乘,即可形成2PSK信號。用開關電路去選擇相位相差p 的同頻載波(如圖1-1)產生。圖 11BPSK解調必須采用相干接收法(如圖1-2)。圖 121.2 QPSK調制解調原理正交相移鍵控(Quadrature Phase Shift Keyin,QPSK)是一種數字調制方式。它分為絕對相移和相對相移兩種。由于絕對相移方式存在相位模糊問題,所以在實際中主要采用相對移相方式DQPSK。目前已經廣泛應用于無線通信中,成為現代
3、通信中一種十分重要的調制解調方式。在四相絕對相移鍵控是利用載波的四種不同相位來表征數字信息的。由于每一種載波相位代表兩個比特信息,故每個四進制碼元又被稱為雙比特碼元。雙比特碼元中的兩個信息比特通常是按格雷碼(即反射碼)排列的。圖1-3(a)表示A方式時QPSK信號的矢量圖,圖(b)表示B方式時QPSK信號的矢量圖。圖 13 QPSK信號的矢量圖QPSK信號常用的產生方法有三種:正交調制法、相位選擇法及脈沖插入法。1)正交調制法發送端采用正交調制法的方框圖如圖1-4所示,圖 14 QPSK調制系統方框圖(正交法)2)相位選擇法圖 15相位選擇法的方框圖3)脈沖插入法圖 16插入脈沖法產生QPSK
4、信號原理方框圖QPSK信號的相干解調圖 17 QPSK信號的相干解調方框圖QPSK同2PSK一樣,在接收機解調時,由于相干載波相位的不確定性,使得解調后的輸出信號不確定。為了克服這種缺點,在實際通信中通常采用QDPSK系統。2 BPSK和QPSK的數學模型2.1 BPSK信號模型BPSK信號的數學表達式為: 其中 若在某一碼元持續時間T內觀察是,式(1.1)可以簡寫為: BPSK信號也相當于用矩形雙極性不歸零基帶信號與載波信號相乘,故也可表示成: 2.2 QPSK信號模型BPSK信號的數學表達式為: 式中 常見的 有兩種形式(見下表):雙比特碼元載波相位ABAB0005/410/27/411/
5、4013/23/43 仿真結果1、BPSK仿真結果:BPSK調制解調過程星座圖2、QPSK仿真結果BPSK調制過程4 仿真代碼BPSK代碼:1. main.cextern void qpsk(); void filter(float *b,float *a,float *s,int N_b,int N_s);#include "C54MATH.H"DATA x256;DATA y256; /正弦信號DATA Pulse256; /被調信號DATA PskSignal256; /BPSK調制信號DATA PskSignal01256; /BPSK調制信號DATA RecMeg
6、256;DATA RecSig256;#define N 256void main() int i,j; for(i=0;i<N;i+)/產生一個500Hz的正弦信號作為調制信號 xi=i*0x1000; sine( x, y, N ); for(i=0;i<N;i+)/產生一個被調信號(用-1,1分別表示被調信號的兩種狀態) j=i/32; switch (j%2) case 0: Pulsei=-1; break; case 1: Pulsei=1; break; /調用匯編函數bpsk bpsk(); for(i=0;i<N;i+) PskSignal01i=PskSi
7、gnali*yi+4;if(PskSignal01i>0)RecMegi=1;else if(PskSignal01i<0)RecMegi=-1;RecSigi=(RecMegi+1)/2; for(;); 2. psk_asm.asm .title"psk_asm.asm" .global _qpsk ;定義為全局變量,提供給C調用 .global _y ;C程序變量 .global _Pulse ;C程序變量 .global _PskSignal ;C程序變量 .mmregs .text_qpsk: rsbx CPL stm #8-1,AR2 ;循環變量 2
8、56/32=8 stm #_y, AR4 stm #_Pulse, AR3 stm #_PskSignal, AR5 loop: ld *AR3, A bc phase0, AEQ ;若為0狀態信號,則相移0 sub #1, A addm #4, AR4 bc phase1, AEQ ;若為1狀態信號,則相移pi pskend: addm #32, AR3 banz loop, *AR2- ret phase0: rpt #32-1 mvdd *AR4+, *AR5+ b pskend phase1: rpt #32-1 mvdd *AR4+, *AR5+ addm #-36,AR4 b ps
9、kend phase2: rpt #32-1 mvdd *AR4+, *AR5+ addm #-40,AR4 b pskend phase3: rpt #32-1 mvdd *AR4+, *AR5+ addm #-44, AR4 b pskend .end 3. bpsk.cmd -c -l rts.lib-l c54math.lib-stack 0x200-heap 0x200MEMORY PAGE 0: INT_PM_DRAM: origin = 0080h, length = 1000h PAGE 1: INT_DM_1: origin = 1080h, length = 01000h
10、SECTIONS .text : > INT_PM_DRAM PAGE 0 .cinit : > INT_PM_DRAM PAGE 0 .switch : > INT_PM_DRAM PAGE 0 .data : > INT_DM_1 PAGE 1 .stack : > INT_DM_1 PAGE 1 .bss : > INT_DM_1 PAGE 1 .sysmem : > INT_DM_1 PAGE 1 .const : > INT_DM_1 PAGE 1 .dout : > INT_DM_1 PAGE 1 QPSK代碼:1. main.
11、cextern void qpsk(); #include "C54MATH.H"DATA x256;DATA y256; /正弦信號DATA Pulse256; /被調信號DATA PskSignal256; /QPSK調制信號DATA PskSignal01256;DATA RecMeg256;DATA RecSig256;#define N 256void main() int i,j; for(i=0;i<N;i+)xi=i*0x1000; sine( x, y, N );/產生一個被調信號(用-3,-1,1,3分別表示被調信號的四種狀態) for(i=0;i
12、<N;i+) j=i/32; switch (j%4) case 0: Pulsei=-3; break; case 1: Pulsei=-1; break; case 2: Pulsei=1; break; case 3: Pulsei=3; break; /調用匯編函數qpsk qpsk(); for(i=0;i<N;i+) for(;); 2. psk_asm.asm .title"psk_asm.asm" .global _qpsk ;定義為全局變量,提供給C調用 .global _y ;C程序變量 .global _Pulse ;C程序變量 .glob
13、al _PskSignal ;C程序變量 .mmregs .text_qpsk: rsbx CPL stm #8-1,AR2 ;循環變量 256/32=8 stm #_y, AR4 stm #_Pulse, AR3 stm #_PskSignal, AR5 loop: ld *AR3, A bc phase0, AEQ ;若為0狀態信號,則相移0 sub #1, A addm #4, AR4 bc phase1, AEQ ;若為1狀態信號,則相移pi/2 sub #1, A addm #8, AR4 bc phase2, AEQ ;若為2狀態信號,則相移pi sub #1, A addm #1
14、2, AR4 bc phase3, AEQ ;若為3狀態信號,則相移3*pi/2 pskend: addm #32, AR3 banz loop, *AR2- ret phase0: rpt #32-1 mvdd *AR4+, *AR5+ b pskend phase1: rpt #32-1 mvdd *AR4+, *AR5+ addm #-36,AR4 b pskend phase2: rpt #32-1 mvdd *AR4+, *AR5+ addm #-40,AR4 b pskendphase3: rpt #32-1 mvdd *AR4+, *AR5+ addm #-44, AR4 b pskend .end 3. qpsk.cmd -c -l rts.lib-l c54math.lib-stack 0x200-heap 0x200MEMORY PAGE 0: INT_PM_DRAM: origin = 0080h, length = 1000h PAGE 1: INT_DM_1: origin = 1080h, length = 01000h SECTIONS .text : > INT_PM_DRAM PAGE 0 .cinit : &
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 填埋廢棄水井施工方案
- 高分考生經驗分享試題及答案
- 跌倒墜床考試題及答案
- 2025年會計信息系統試題及答案
- 微生物實驗室質量控制的方法試題及答案
- 2025年案例分析綜合應用試題及答案
- 2024年項目管理理論的新發展試題及答案
- 項目計劃中資源使用的試題及答案
- 花藝師考試應試策略解析試題及答案
- 2025年注會備考期間時間分配建議試題及答案
- 學生資助政策宣傳主題班會
- 賈玲春晚搞笑公司年會小品《真假老師》臺詞劇本完整版
- 閃耀明天 二聲部合唱簡譜
- 警服洗滌服務方案(技術標)
- 23S519 小型排水構筑物(帶書簽)
- 在職研究生畢業論文開題報告匯報ppt
- 護士基礎護理學之給藥
- 第三章掃描電子顯微鏡【完整版】PPT
- 超強大:英語六級詞匯隨身帶隨時背
- 精創STC-9200使用說明書
- 胸腔穿刺術課件
評論
0/150
提交評論