ARM的22個常用概念下

2021-08-09 10:44:58 字數 2700 閱讀 7477

12.arm體系結構的儲存器格式

答:arm體系結構的儲存器格式有如下兩種:

大端格式:字資料的高位元組儲存在低位址中,字資料的低位元組存放在高位址中;

小端格式:與大端儲存格式相反,高位址存放資料的高位元組,低位址存放資料的低位元組。

13.arm暫存器總結:

arm有16個32位的暫存器(r0到r15)。

r15充當程式暫存器pc,r14(link register)儲存子程式的返回位址,r13儲存的是堆疊位址。

arm有乙個當前程式狀態暫存器:cpsr。

一些暫存器(r13,r14)在異常發生時會產生新的instances,比如irq處理器模式,這時處理器使用r13_irq和r14_irq

arm的子程式呼叫是很快的,因為子程式的返回位址不需要存放在堆疊中。

14.儲存器重新對映(remap)的原因:

使flash儲存器中的fiq處理程式不必考慮因為重新對映所導致的儲存器邊界問題;

用來處理**空間中段邊界仲裁的sram和boot block向量的使用大大減少;

為超過單字轉移指令範圍的跳轉提供空間來儲存常量。

arm中的重對映是指在程式執行過程中通過寫某個功能暫存器位操作達到重新分配其儲存器位址空間的對映。乙個典型的應用就是應用程式儲存在flash/rom中,初始這些儲存器位址是從0開始的,但這些儲存器的讀時間比sram/dram長,造成其內部執行頻率不高,故一般在前面一段程式將**搬移到sram/dram中去,然後重新對映儲存器空間,將相應sram/dram對映到位址0,重新執行程式可達到高速執行的目的。

15.儲存異常向量表中程式跳轉使用ldr指令,而不使用b指令的原因:

ldr指令可以全位址範圍跳轉,而b指令只能在前後32mb範圍內跳轉;

晶元具有remap功能。當向量表位於內部ram或外部儲存器中,用b指令不能跳轉到正確的位置。

16.鎖相環(pll)注意要點:

pll在晶元復位或進入掉電模式時被關閉並旁路,在掉電喚醒後不會自動恢復pll的設定;

pll只能通過軟體使能;

pll在啟用後必須等待其鎖定,然後才能連線;

pll如果設定不當將會導致晶元的錯誤操作。

17.arm7與arm9的區別:

arm7核心是0.9mips/mhz的**流水線和馮&s226;諾伊曼結構;arm9核心是五級流水線,提供1.1mips/mhz的哈佛結構。

arm7沒有mmu,arm720t是mmu的;arm9是有mmu的,arm940t只有memory protection unit.不是乙個完整的mmu。

arm7tdmi提供了非常好的效能——功耗比。它包含了thumb指令集快速乘法指令和ice除錯技術的核心。arm9的時鐘頻率比arm7更高,採用哈佛結構區分了資料匯流排和指令匯流排信盈達嵌入式物聯網智慧型硬體企鵝要妖氣嗚嗚吧久零久要

。18.vic的基本操作如下:

答:設定irq/fiq中斷,若是irq中斷則可以設定為向量中斷並分配中斷優先順序,否則為非向量irq。然後可以設定中斷允許,以及向量中斷對應位址或非向量中斷預設位址。當有中斷後,若是irq中斷,則可以讀取向量位址暫存器,然後跳轉到相應的**。當要退出中斷時,對向量位址暫存器寫0,通知vic中斷結束。當發生中斷時,處理器將會切換處理器模式,同時相關的暫存器也將會對映。

19.使用外部中斷注意

把某個引腳設定為外部中斷功能後,該引腳為輸入模式,由於沒有內部上拉電阻,所以必須外接乙個上拉電阻,確保引腳不被懸空;

除了引腳連線模組的設定,還需要設定vic模組,才能產生外部中斷,否則外部中斷只能反映在extint暫存器中;

要使器件進入掉電模式並通過外部中斷喚醒,軟體應該正確設定引腳的外部中斷功能,再進入掉電模式。

20.uart0的基本操作方法

設定i/o連線到uart0;

設定串列埠波特率(u0dlm、u0dll);

設定串列埠工作模式(u0lcr、u0fcr);

傳送或接收資料(u0thr、u0rbr);

檢查串列埠狀態字或等待串列埠中斷(u0lsr)。

21.i2c的基本操作方法

答:i2c主機基本操作方法:

設定i2c管腳連線;

設定i2c時鐘速率(i2sclh、i2scll);

設定為主機,並傳送起始訊號(i2conset的i2en、sta位為1,aa位為0);

傳送從機位址(i2dat),控制i2conset傳送;

判斷匯流排狀態(i2stat),進行資料傳輸控制;

傳送結束訊號(i2conset)。

i2c從機基本操作方法:

設定i2c管腳連線;

設定自身的從機位址(i2adr);

使能i2c(i2conset的i2en、aa位為1);

判斷si位或等待i2c中斷,等待主機操作;

判斷匯流排狀態i2stat,進行資料傳輸控制。

22.   pwm基本操作方法:

連線pwm功能管腳輸出,即設定pinsel0、pinsel1;

設定pwm定時器的時鐘分頻值(pwmpr),得到所要的定時器時鐘;

設定比較匹配控制(pwmmcr),並設定相應比較值(pwmmrx);

設定pwm輸出方式並允許pwm輸出(pwmpcr)及鎖存使能控制(pwmler);

設定pwmtcr,啟動定時器,使能pwm;

執行過程中要更改比較值時,更改之後要設定鎖存使能。

使用雙邊沿pwm輸出時,建議使用pwm2、pwm4、pwm6;使用單邊pwm輸出時,在pwm週期開始時為高電平,匹配後為低電平,使用pwmmr0作為pwm週期控制,pwmmrx作為占空比控制。

關於ARM的22個常用概念 的確經典

使flash儲存器中的fiq處理程式不必考慮因為重新對映所導致的儲存器邊界問題 用來處理 空間中段邊界仲裁的sram和boot block向量的使用大大減少 為超過單字轉移指令範圍的跳轉提供空間來儲存常量。arm中的重對映是指在程式執行過程中通過寫某個功能暫存器位操作達到重新分配其儲存器位址空間的對...

關於ARM的22個常用概念 的確經典

出處 使flash儲存器中的fiq處理程式不必考慮因為重新對映所導致的儲存器邊界問題 用來處理 空間中段邊界仲裁的sram和boot block向量的使用大大減少 為超過單字轉移指令範圍的跳轉提供空間來儲存常量。arm中的重對映是指在程式執行過程中通過寫某個功能暫存器位操作達到重新分配其儲存器位址空...

入門ARM必須要理解的22個常用概念

入門arm 文章羅列了關於arm的22個常用概念。包括一些使用注意事項 arm啟動 設計 arm處理器執行模式 arm體系結構所支援的異常型別和一些基本操作方法等等。當改變mam定時值時,必須先通過向mamcr寫入0來關閉mam,然後將新值寫入mamtim。最後,將需要的操作模式的對應值寫入mamc...