freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

54dsp十天速成-全文預(yù)覽

2025-09-16 17:36 上一頁面

下一頁面
  

【正文】 +1 B FuncKeyEnd FuncKey2: ADDM 1,Counter2 。如果鍵碼為 2,跳轉(zhuǎn)到 FuncKey2 BC FuncKey2,TC BITF *AR2,04H 。 ******************************************************* *鍵盤中斷子程序 ******************************************************* INT1_ISR: PORTR Keyboard,*AR2 。關(guān)中斷 STM 00000010B,IMR 。按鍵 4 計數(shù)器 Keyvalue: .space 30H*16 。各鍵對應(yīng)的二進制和十六進制鍵碼分別為: 按鍵 1: 0001B 1H 按鍵 2: 0010B 2H 按鍵 3: 0100B 4H 按鍵 4: 1000B 8H 下面有一個小例子: ****************************************************** * *測試按鍵的功能,響應(yīng)按鍵中斷,讀取鍵值, *并對不同鍵按鍵次數(shù)計數(shù) ****************************************************** .mmregs .global CodeStart .global INT1_ISR .include ../ .data DATA_DP: Counter1: .word 0 。關(guān)中斷 LD DATA,DP 。分配堆??臻g .data DATA: .word 1,2,3,4,5,6 。數(shù)據(jù)管 5 Digital5 .set 1005H 。數(shù)據(jù)管 1 Digital1 .set 1001H 。========================================================= .mmregs .def main 。========================================================= 。F=50MHz, T=20ns*(1+15)*(1+3124)=20ns*16*31250=10ms STM 010,TCR1 。定時器 1 的寄存器地址 TIM1 .set 0030h 。把計數(shù)結(jié)果轉(zhuǎn)成 BCD 碼 RPT 15 SUBC Number10,A STH A,*AR3+ AND 0FFFFH,A BC HEX2BCD,ANEQ 。計中斷次數(shù) RETE *************************************** *定時器中斷子程序 *************************************** TINT1_ISR: BANZ GoOnCount,*AR1 。允許 Timer1 和 INT3中斷 STM 0FFH,IFR 。定義數(shù)據(jù)管顯示存貯區(qū)指針 LD 0,A 。數(shù)碼管的 dot point Number10: .word 10 。下面的例程是定時器定時 1s,在 INT3 中斷服務(wù)子程序中計脈沖個數(shù),到時則關(guān)閉中斷。 更多參考: 1.關(guān)于中斷: SPRU131 TMS320C54x DSP Reference Set, Volume 1: CPU and Peripherals, Interrupts 2.關(guān)于定時器: SPRU131 TMS320C54x DSP Reference Set, Volume 1: CPU and Peripherals, Timer 實驗 外部中斷:頻率計 DSP 有 4 個外部中斷 INT0INT3,下降沿觸發(fā),實驗箱的頻率計使用的是 INT3。稍微要注意的是由于這一小段代碼要用到累加器 A,所以最好保證執(zhí)行這段代碼之前不要使用累加器 A。指向 0080H,默認是 FF80 LDM PMST,A AND 7FH,A 。其上電時默認是在 FF80H 處,這是為了運行固化在內(nèi)部 ROM 的上電加載程序 (見實驗八的程序加載部分 )。 另外 C5400系列中不同型號 DSP的中斷向量數(shù)量和在中斷向量表中的位置有所不同,程序移植時需要查相應(yīng) datasheet 確認。Timer0 中斷 NOP NOP BRINT0: RETE 。DMA5 中斷 .end 在本實驗中只要把在開頭加上中斷子程序標號的引用,并在中斷表的TINT 部分換成跳轉(zhuǎn)指令就行了: ******************************************************* * for 方波發(fā)生器 ******************************************************* .sect .vectors 。HPI 中斷 NOP NOP NOP BRINT1: RETE 。McBSP 0 發(fā)送中斷 NOP NOP NOP DMAC0: RETE 。外部中斷 INT1 NOP NOP NOP INT2: RETE 。不可屏蔽中斷 NOP NOP NOP 。 中斷向量表必須對齊 128 字的頁邊界 RESET: B CodeStart 。 ***************************************************************** .sect .vectors 。 設(shè)計指導(dǎo): 1.中斷向量表 中斷向量表是 DSP 程序的重要組成部分,當(dāng)有中斷發(fā)生并且處于允許狀態(tài)時,程序指針跳轉(zhuǎn)到中斷向量表中對應(yīng)的中斷地址。程序只需要稍作修改,見附盤的 技巧提示:寄存器的不同位通常有不同的含義,初始化時單獨設(shè)定寄存器的每一位可以增加程序可讀性,容易讓其它人看懂具體每一位設(shè)置的含義,并且易于修改。相應(yīng)修改標志 B Next ResetXF: RSBX XF 。判斷當(dāng)前 XF 狀態(tài)并作電平變化 BITF *AR2,1 。================================================ 。開始 Timer0 stm 0008h,IMR 。停止計數(shù)器 0 。指向 0080H,默認是 FF80 LDM PMST,A AND 7FH,A 。設(shè)堆棧指針 SP LD DATA_DP,DP 。當(dāng)前 XF 的電平標志,如果 XF_Flag=1,則 XF=1 。TCR 第 4 位 TSS=0 K_TCR_TDDR .set 1001B0 。TCR 第 11 位 soft=0 K_TCR_FREE .set 0B10 。程序入口 .def TINT0_ISR 。============================================== 。 實驗 定時器中斷:方波發(fā)生器 實驗?zāi)康模簩W(xué)習(xí)定時器中斷的設(shè)計方法 回顧一下實驗一控制 LED 的閃爍實際就是一個簡單的方波發(fā)生器。 實驗三 中斷 中斷的概念應(yīng)該不陌生,指的是當(dāng)某個事件發(fā)生時,暫停當(dāng)前的操作,轉(zhuǎn)向中斷服務(wù)程序,執(zhí)行完后再返回繼續(xù)原來的操作。余數(shù)保存到 Z AND 0FFFFH,A 。被除數(shù) STM z,AR1 。除數(shù) z: .word 0Fh,0Fh,0Fh,0Fh,0Fh。但是復(fù)雜的算法最好還是在線仿真,因為程序是流水線執(zhí)行,軟件仿真有時與實際硬件執(zhí)行結(jié)果有所不同。A=A+y SUB w,A 。數(shù)據(jù)段指針 x: .word 10 。算術(shù)與邏輯指令也是數(shù)量繁多,無法一一舉例,這里簡單舉一個加法和除法的例子,乘法和乘加指令在 FIR 用得比較多,稍后一并介紹。s Guide, Linker Command Files, The MEMORY Directive, The SECTIONS Directive 練習(xí): 試一下不按規(guī)定格式書寫代碼會產(chǎn)生什么樣的編譯錯誤。以本次實驗為例,下面的簡單的鏈接配置文件就夠用了: /* */ e CodeStart /*程序 入口,必須在程序中定義相應(yīng)的標號 */ MEMORY { page 0: PRAM: =0100h len=0F00h /*定義程序存貯區(qū),起始 0100H,長度 0F00H*/ } SECTIONS{ .text:PRAM page 0 /*將 .text 段映射到 page0 的 param 區(qū) */ } 由于每個程序都需要一個鏈接配置文件,可以編寫一個滿足通常需要的鏈接配置文件。另外 代碼貼到 word 里后,格式有些錯位,無法一一糾正。 3.每一行的尾注能對齊的盡量對齊 4.標明一段程序功能的注釋以 *號打頭頂格寫,如果功能說明的注釋較多,用分格線框起來。 書寫格式的要求在很多 DSP 書里都沒有提,初學(xué)者往往只把書上的代碼輸入進去,編譯時得到錯誤的提示,而不知所措。注釋區(qū)前面可以沒有標號區(qū)或程序區(qū)。標號區(qū)必須頂格寫,主要是定義變量、常量、程序標簽時的名稱。如果 AR2 不等于 0, AR2 減 1,再判斷 BANZ LOOP1,*AR1 。跳轉(zhuǎn)到程序開頭循環(huán)執(zhí)行 ************************************************************** *延時子程序: Delay *用兩級減一計數(shù)器來延時。XF 置 1 CALL Delay 。預(yù)定義的寄存器 .def CodeStart 。重復(fù)執(zhí)行 1000 次空指令產(chǎn)生延時 NOP RSBX XF 。定義程序入口標記 .text 。 實驗 最簡單的程序:控制 XF 引腳周期性變化 實驗?zāi)康模和ㄟ^簡單的程序了解 DSP 程序的結(jié)構(gòu),熟悉 CCS 開發(fā)環(huán)境。這個程序也常常用來測度一下 DSP 能否正常工作。預(yù)定義的寄存器 .def CodeStart 。XF 置 1 RPT 999 。跳 轉(zhuǎn)到程序開頭循環(huán)執(zhí)行 .end NOP 指令執(zhí)行時間為一個時鐘周期,設(shè) DSP 工作頻率是 50MHz,可以估算出 XF 引腳電平的變化頻率約為: 50M/2020=25kHz 在沒有示波器的情況下,就要將程序 稍作改進,增加延時,用一個延時子程序?qū)?XF 腳電平變化頻率降到肉眼可分辨的程度,就可以用 LED 來顯示電平的變化,程序如下: 實驗 子程序調(diào)用 實驗?zāi)康模簩W(xué)習(xí)子程序的調(diào)用 ************************************************************* * *對 稍作改進,用延時子程序設(shè)置較長的延時, *可以用試驗板上的 LED
點擊復(fù)制文檔內(nèi)容
試題試卷相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1