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

正文內(nèi)容

dsp基礎(chǔ)知識(shí)專業(yè)復(fù)習(xí)資料-wenkub.com

2025-01-06 01:10 本頁面
   

【正文】 中斷向量表文件名為,該文件采用匯編語言編寫。(2) 在 C程序中使用匯編程序中定義的變量和常量。這種方式的優(yōu)點(diǎn)是可以增強(qiáng)軟件的可讀性,提高了軟件的開發(fā)速度,方便軟件的修改和移植。 PLL 0x7FFF,SWWSR .def /*向地址為 0的口送 1111b:四個(gè)數(shù)碼管均選通 */port1 = leddisp[ledt]。 c54_init()。 C語言設(shè)計(jì)的主程序如下:ioport unsigned port0。注意,修改匯編語句時(shí)切勿破壞 C環(huán)境。不要讓匯編語句改變 C程序中變量的值。 嵌入?yún)R編語句的方法比較簡單,只需在匯編語句的兩邊加上雙引號(hào)和括號(hào),并且在括號(hào)前加上 asm標(biāo)識(shí)符即可。.++i)int.global.set因此,如果要在 C程序中訪問匯編程序中的常數(shù),則不能直接用常數(shù)的符號(hào)名, 而應(yīng)在常數(shù)符號(hào)名前加一個(gè)地址操作符 ,以示與變量的區(qū)別,這樣才能得到常數(shù)值。120【 例 6】 C程序中訪問匯編常數(shù)表 匯編程序: . global _sine ;定義外部變量 . sect sine_tab ;定義一個(gè)獨(dú)立的塊裝常數(shù)表_sine︰ ;常數(shù)表首址 . word 0 . word 50 . word 100 . word 200C程序: extern int sine[]; /*定義外部變量 */ int *sine_ptr=sine; /*定義一個(gè) C指針 */ f=sine_ptr[2]; /*訪問 sine_ptr*/121 (3) 對(duì)于那些在匯編中以 .set和 .global定義的全局常數(shù),也可以在 C程序中訪問,不過要用到一些特殊的方法。然后,定義一個(gè)指向該表起始地址的全局標(biāo)號(hào),可以在鏈接時(shí)將它分配至任意可用的存儲(chǔ)器空間。var; .global_var, 1.bss/*注意變量名前都有下劃線 */ /*聲明外部的匯編子程序 *//*注意函數(shù)名前不要加下劃線 */int gvar。C程序可以直接引用匯編程序中定義的變量和子程序 。獨(dú)立的 C和匯編模塊接口 獨(dú)立的 C和匯編模塊接口是一種常用的 C和匯編語言接口方法。優(yōu)化之后,對(duì)匯編程序進(jìn)行匯編,產(chǎn)生目標(biāo)文件。用 C語言和匯編語言混合編程 (3) 在 C程序中直接 內(nèi)嵌匯編語句 。C程序 :include“” /*包含頭文件 */define RD_PORT 0x8000 /*定義輸入 I/O口 */static int indata[1000]; /*定義全局?jǐn)?shù)組 */main(){int I;for(I=0; I1000; I++)portRead(RD_PORT)。 (8) 如果中斷程序中調(diào)用了其他的程序,則所有的寄存器都必須保護(hù)。采用 .sect匯編指令 可以建立這樣一個(gè)跳轉(zhuǎn)指令表以實(shí)現(xiàn)該功能。這一點(diǎn)可以通過 內(nèi)嵌匯編語句 來控制中斷的使能和屏蔽,即通過內(nèi)嵌匯編語句來設(shè)置中斷屏蔽寄存器 IMR及 INTM,也可通過調(diào)用匯編程序函數(shù)來實(shí)現(xiàn)。系 統(tǒng) 復(fù)位后, PC首先指向00FF80h, 這 是復(fù)位向量地址。 105假設(shè)目標(biāo)存儲(chǔ)器的配置如下:程序存儲(chǔ)器:EPROM E000h~ FFFFh(片外)數(shù)據(jù)存儲(chǔ)器:SPRAM 0060h~ 007Fh(片內(nèi))DARAM 0080h~ 017Fh(片內(nèi))例 49 根據(jù)例 41和例 48編寫鏈接器命令文件。如果鏈接命令文件中沒有 MEMORY和 SECTIONS命令(默認(rèn)情況),則鏈接器就從地址 0080h一個(gè)段接著一個(gè)段進(jìn)行配置。如果要調(diào)用另一個(gè)命令文件作為輸入文件,此句一定要放在本命令文件的最后,因?yàn)殒溄悠鞑荒軓男抡{(diào)用的命令文件返回。 作用99 3 目 標(biāo) 文件 的鏈接 鏈 接器主要功能根據(jù) 鏈 接命令或 鏈 接命令文件( .cmd文件) ,將一個(gè)或多個(gè) COFF目 標(biāo)文件 鏈 接起來,生成存 儲(chǔ) 器映象文件( .map)和可 執(zhí) 行的 輸 出文件( .out)( COFF目 標(biāo) 模 塊 ) 100? 在連接過程中,連接器將各個(gè)目標(biāo)文件合并起來,將各個(gè)文件的各個(gè)段配置到目標(biāo)系統(tǒng)的存儲(chǔ)器中;? 對(duì)各個(gè)符號(hào)和段進(jìn)行重定位,并給它們指定一個(gè)最終的地址;解決輸入文件之間未定義的外部引用。結(jié)束全部程序952.匯編器對(duì)段的處理 用于定義 段的匯編命令.bss 未初始化段.usect 未初始化自定義段.text 已初始化程序正文段.data 已初始化程序數(shù)據(jù)段.sect 已初始化自定義段如果 匯編語 言程序中一個(gè)段命令都沒有用,那么匯編 器把程序中的內(nèi)容都 匯編 到 .text段。將 A清 0,并重復(fù)執(zhí)行下條指令 4次 MAC *AR3+,*AR4+,A 。調(diào)用 SUM 實(shí)現(xiàn)乘法累加和的子程序end: B end 。設(shè)置堆棧指針初值 STM a,AR1 。8,6,4,2.def分配 1個(gè)單元的空間y,1.bss分配 10個(gè)單元的堆??臻g.mmregs為匯編源程序取名.title**************** Reset中斷向量,跳轉(zhuǎn)到程序入口NOP 。開始命名段 .vecotrs.global CodeStart 。由于中斷服務(wù)程序一般較長,通常中斷向量表存放的是一個(gè)跳轉(zhuǎn)指令,指向?qū)嶋H的中斷服務(wù)程序。 /*數(shù)據(jù)段 */ /*未命名段 */ : DARAM STACK PAGE 0 : PARAM /*數(shù)據(jù)區(qū) */}SECTIONS DARAM: =1000h len=0F00h len=0080h CodeStart page 0:PRAM: =0100h len=0F00h /*程序入口,必須在程序中定義相應(yīng)的標(biāo)號(hào) */? 連接配置文件的確定了程序鏈接成最終可執(zhí)行代碼時(shí)的選項(xiàng),其中有很多條目,實(shí)現(xiàn)不同方面的選項(xiàng),其中最常用的也是必須的有兩條:? 1) .存貯器的分配? 2) .標(biāo)明程序入口。 。 Delay調(diào)用延時(shí)程序 XF 。 。令產(chǎn)生延時(shí) RPT 。XF置 1 SSBX 。程序區(qū)CodeStart: 。 .def 。*************************************************************最簡單的程序: *循環(huán)對(duì) XF位置 1和清 0,用示波器可以在 XF腳檢測到電*平高低周期性變化*常用于檢測 DSP是否工作。這個(gè)程序也常常用來測試一下 DSP能否正常工作。 調(diào)用 SUM子程序 ;子程序執(zhí)行 77第四節(jié) 指令系統(tǒng)概述TMS320C54x是 TMS320系列中的一種定點(diǎn)數(shù)字信號(hào)處理器,它的指令系統(tǒng)分 助記符形式 和 代數(shù)式形式 兩種。 設(shè)置堆棧指針 。中。pmad PCRET 。第 3句是將這個(gè)保留空間的高地址 (stack+size)賦給 SP,作為堆棧底。 當(dāng)從堆棧中彈出數(shù)據(jù)時(shí)?!? .bss x,4 ;為 X建立 4個(gè)單元, ;放置 X X X X4  .bss y,1 ;為 Y建立 1個(gè)單元,放置 Y   STM x, AR1 ;將 X1的地址傳給 AR1   STM 3, AR2 ;將循環(huán)次數(shù) 3傳給 AR2   LD 0, A ;對(duì) A清零loop:ADD *AR1+, A ;對(duì) X X X X4循環(huán)累 ;加,結(jié)果放 A中  BANZ loop,*AR2 ;檢查循環(huán)是否應(yīng)結(jié)束  STL A, y ;將累加結(jié)果存入 Y中67例 35 利用單條指令的重復(fù)操作對(duì)數(shù)組 x[5]={0, 0, 0, 0, 0}進(jìn)行初始化。 64 2 程序地址的生成程序地址生成器( PAGEN)構(gòu)成程序 計(jì) 數(shù)器( PC)重復(fù) 計(jì) 數(shù)器( RC)塊 重復(fù) 計(jì) 數(shù)器( BRC)塊 重復(fù)起始地址寄存器( RSA)塊 重復(fù) 結(jié) 束地址寄存器( REA)核心16位程序 計(jì) 數(shù)器( PC)內(nèi)中保存 某個(gè)內(nèi)部或外部程序存 儲(chǔ) 器的地址 ??偸侵赶驐m?。以及保護(hù)現(xiàn)場或傳送參數(shù)。62( 2)外部中斷響應(yīng)的時(shí)間 響應(yīng)的時(shí)間=采樣時(shí)間+查詢時(shí)間    ?。?1+ 2≥3 個(gè)完整的機(jī)器周期外部中斷的時(shí)間基本上在 3~ 8個(gè)機(jī)器周期之間。正常操作是上電后 RS應(yīng)至少保持 5個(gè)時(shí)鐘周期的低電平。此時(shí)軟件等待狀態(tài)寄存器 SWWSR應(yīng)配置為:0 101 000 000 011 000STM 5018, SWWSR58? 使 C54x進(jìn)入一已知狀態(tài)? 至少保持 5個(gè)時(shí)鐘周期的低電平? 復(fù)位后為高電平? 如果 MP/   =0,則處理器從片內(nèi) ROM開始執(zhí)行程序,否則,它將從片外程序存儲(chǔ)器開始執(zhí)行程序。如圖進(jìn)行連接,復(fù)位 SWWSR=7FFFh ,所有的程序、數(shù)據(jù)和 I/O空間都被插入 7個(gè)等待狀態(tài)。 如果外部器件要求插入 7個(gè)以上的等待周期,則可以利用硬件 READY線來接口 。 在采用低速器件時(shí),需要用軟件或硬件為 DSP插入等待狀態(tài)來協(xié)調(diào)。在遇到一個(gè)機(jī)器周期內(nèi), CPU尋址外部存儲(chǔ)器兩次,一次取指,一次取操作數(shù)時(shí),數(shù)據(jù)尋址比程序存儲(chǔ)器取指具有較高的優(yōu)先權(quán)。具有外部移位時(shí)鐘發(fā)生器及內(nèi)部頻率可編程移位時(shí)鐘;可直接利用多種串行協(xié)議接口通信。 HPI(HostPort Interface-- HPI), C54x的HPI是一個(gè) 8位的并行口,用來與主設(shè)備或主處理器接口 。 所以, C54x的外部頻率源的頻率可以比 CPU的機(jī)器周期CLKOUT的速率低,這樣就能降低因高速開關(guān)時(shí)鐘所造成的高頻噪聲。(假定 INTM=1)復(fù)位時(shí):TIM和 PRD(時(shí)間常數(shù) )都置成最大值FFFFh;定時(shí)器的 分頻系數(shù) (TCR的 TDDR位 )清 0,定時(shí)器開始工作。401)將中斷標(biāo)志寄存器 IFR中的 TINT位置 1,清除尚未處理完的定時(shí)器中斷。XF可以用來向外部器件發(fā)信號(hào)BIO用來監(jiān)控外圍設(shè)備。XF SSBX XF RSBX XF特點(diǎn)發(fā)信號(hào)收信號(hào) 36第五節(jié) 在片外圍電路不同子系列器件差別通用 I/O引腳 XF和 BIO定時(shí)器時(shí)鐘發(fā)生器主機(jī)接口軟件可編程等待狀態(tài)發(fā)生器可編程分區(qū)開關(guān)串行口37 C54x在片外圍電路有一組控制寄存器和數(shù)據(jù)寄存器,它們與 CPU寄存器一樣,也映像到數(shù)據(jù)存儲(chǔ)器 0頁 (20h~5Fh)??梢杂脙蓷l指令 (輸入指令 PORTR和輸出指令 PORTW)對(duì)I/O空間尋址。34輔助寄存器 (AR0~ AR7):這 8個(gè) 16位的輔助寄存器可以由算術(shù)邏輯單元 (ALU)訪問,也可以由輔助寄存器算術(shù)單元 (ARAU)進(jìn)行修改。31數(shù)據(jù)存儲(chǔ)器 數(shù)據(jù)存儲(chǔ)器類型RAM( SARAM)RAM( DARAM)片內(nèi) ROM(軟件映 像 )片內(nèi) /片外數(shù)據(jù)存儲(chǔ)器的識(shí)別32存儲(chǔ)器映像 CPU寄存器 (0000h~001Fh)外圍電路寄存器 (0020h~005Fh)32字暫存器 (0060h~007Fh)896字 DARAM(0080h~03FFh)其中, 外圍電路寄存器 用于對(duì)外圍電路的控制和存放數(shù)據(jù),對(duì)它們尋址,需要 2個(gè)機(jī)器周期。復(fù)位后,這些向量可以被重新映像到程序空間中任何一個(gè) 128字頁的開頭。29C54X的外部程序存儲(chǔ)器可尋址 64K字的存儲(chǔ)空間。26存儲(chǔ)器空間的劃分與交叉 ? DARAM? SARAM? ROM片內(nèi)存儲(chǔ)器類型空間交叉的條件MP/MC位OVLY位DROM位使能禁止程序數(shù)據(jù)片內(nèi)存儲(chǔ)器空間27MP/MC=0,則片內(nèi) ROM安排為程序空間MP/MC=1,則片內(nèi) ROM不安排為程序空間。引腳按功能分為電源引腳、時(shí)鐘引腳、控制引腳、地址引腳、數(shù)據(jù)引腳、外部中斷引腳、通信端口引腳、通用 I/O引腳等部分。21另外,實(shí)際上 C54x還有一條 在片
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1