




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、ARMARM嵌入式開發模式和基本開發流程嵌入式開發模式和基本開發流程第第2 2章章ARMARM嵌入式開發模式和基嵌入式開發模式和基本流程本流程ARMARM嵌入式開發模式和基本開發流程嵌入式開發模式和基本開發流程ARMARM(Advanced RISC MachinesAdvanced RISC Machines),既可以認為是一個),既可以認為是一個公司公司的名字的名字,也可以認為是對一類,也可以認為是對一類微處理器的通稱微處理器的通稱,還可以認為,還可以認為是是一種技術一種技術的名字。的名字。19911991年年ARMARM公司公司成立于英國劍橋,主要成立于英國劍橋,主要出售芯片設計技術的出
2、售芯片設計技術的授權授權。目前,采用。目前,采用ARMARM技術知識產權(技術知識產權(IPIP)核的微處理器,)核的微處理器,即我們通常所說的即我們通常所說的ARMARM微處理器微處理器,已遍及工業控制、消費類,已遍及工業控制、消費類電子產品、通信系統、網絡系統、無線系統等各類產品市場,電子產品、通信系統、網絡系統、無線系統等各類產品市場,基于基于ARMARM技術的微處理器應用約占據了技術的微處理器應用約占據了3232位位RISCRISC微處理器微處理器7575以上的市場份額,以上的市場份額,ARMARM技術正在逐步滲入到我們生活的各技術正在逐步滲入到我們生活的各個方面。個方面。ARM公司公
3、司是專門從事基于是專門從事基于RISC技術芯片設計開發的公司,技術芯片設計開發的公司,作為知識產權供應商,作為知識產權供應商,本身不直接從事芯片生產,靠轉讓設本身不直接從事芯片生產,靠轉讓設計許可由合作公司生產各具特色的芯片計許可由合作公司生產各具特色的芯片,世界各大半導體生,世界各大半導體生產商從產商從ARM公司購買其設計的公司購買其設計的ARM微處理器核微處理器核,根據各自,根據各自不同的應用領域,加入適當的不同的應用領域,加入適當的外圍電路外圍電路,從而形成自己的,從而形成自己的ARMARM微處理器芯片微處理器芯片進入市場。目前,全世界有幾十家大的半進入市場。目前,全世界有幾十家大的半導
4、體公司都使用導體公司都使用ARM公司的授權,因此既使得公司的授權,因此既使得ARM技術獲技術獲得更多的第三方工具、制造、軟件的支持,又使整個系統成得更多的第三方工具、制造、軟件的支持,又使整個系統成本降低,使產品更容易進入市場被消費者所接受,更具有競本降低,使產品更容易進入市場被消費者所接受,更具有競爭力。爭力。 參考教材參考教材6.1節。節。ARMARM嵌入式開發模式和基本開發流程嵌入式開發模式和基本開發流程內內 容容2.1 ARM嵌入式開發模式嵌入式開發模式2.2 ARM嵌入式開發流程嵌入式開發流程2.3使用使用MDK開發無操作系統的嵌入式軟件開發無操作系統的嵌入式軟件2.4 ARM嵌入式
5、系統控制界面嵌入式系統控制界面EduKit2410下使用下使用MDK燒寫代碼燒寫代碼ARMARM嵌入式開發模式和基本開發流程嵌入式開發模式和基本開發流程2.1 ARM嵌入式開發模式嵌入式開發模式目標機目標機/宿主機(或稱下位機宿主機(或稱下位機/上位機)開發模式上位機)開發模式v宿主機需要運行一些軟件進行程序編輯、編譯和調試宿主機需要運行一些軟件進行程序編輯、編譯和調試等功能,這些軟件通常稱為等功能,這些軟件通常稱為集成開發環境集成開發環境(IDE)ARMARM嵌入式開發模式和基本開發流程嵌入式開發模式和基本開發流程集成開發環境集成開發環境1、針對處理器的集成開發環境:、針對處理器的集成開發環
6、境:v傳統的單片機程序開發環境一樣,是針對特定處理傳統的單片機程序開發環境一樣,是針對特定處理器的,而不是針對特定程序或者操作系統的。器的,而不是針對特定程序或者操作系統的。v主要采用在線仿真模式進行調試,主要用于調試無主要采用在線仿真模式進行調試,主要用于調試無操作系統的程序和沒有指定編譯環境和集成開發環操作系統的程序和沒有指定編譯環境和集成開發環境的操作系統(如境的操作系統(如uC/OS-II)。)。v如如ARM ADS、ARM MDK等。等。2、針對操作系統的集成開發環境:、針對操作系統的集成開發環境:v不是針對某一種處理器,而是針對某一種操作系統,不是針對某一種處理器,而是針對某一種操
7、作系統,并支持多種不同的處理器。并支持多種不同的處理器。v如開發如開發VxWorks的的Tornado和和WorkBench、開發、開發Windows CE的的Platform Builder、開發、開發Linux的的GNU工具鏈等。工具鏈等。ARMARM嵌入式開發模式和基本開發流程嵌入式開發模式和基本開發流程2.2 ARM嵌入式開發流程嵌入式開發流程需需求求分分析析1 芯片選型2 軟件設計方案(操作系統選擇)硬硬件件設設計計、調調試試系系統統移移植植1 啟動代碼2 bootloader移植2 操作系統移植應應用用程程序序設設計計、調調試試系系統統測測試試形形成成產產品品軟件開發ARMARM嵌
8、入式開發模式和基本開發流程嵌入式開發模式和基本開發流程2.2.1 需求分析需求分析1 硬件需求分析硬件需求分析v處理性能處理性能v技術指標和成本技術指標和成本v功耗功耗v操作系統和軟件支持工具的選擇操作系統和軟件支持工具的選擇2 軟件需求分析軟件需求分析v實時性實時性v系統的功能系統的功能v開發的難度開發的難度v成本成本ARMARM嵌入式開發模式和基本開發流程嵌入式開發模式和基本開發流程2.2.2 硬件設計、調試硬件設計、調試電路設計、電路設計、印刷電路板印刷電路板(PCB)設計與制作、設計與制作、元器件焊接、元器件焊接、電路板調試等電路板調試等PC機系統主板機系統主板內存內存總線插槽總線插槽
9、網卡網卡CPUCPU串行接口串行接口USB接口接口芯片組芯片組顯卡顯卡( (視頻控視頻控制器制器) )ARMARM嵌入式開發模式和基本開發流程嵌入式開發模式和基本開發流程硬件示例:硬件示例:S3C2440A通用型核心板通用型核心板 S3C2440A通用型核心板采用通用型核心板采用SAMSUNG高性高性能能ARM920T內核處理器內核處理器S3C2440,可方便嵌入,可方便嵌入在各種以在各種以ARM9開發為主的產品中開發為主的產品中,節省開發周節省開發周期期,降低開發難度降低開發難度,加快產品上市周期。加快產品上市周期。6層層PCB設計設計,性能穩定。體積小性能穩定。體積小,適合嵌入各種手持等設
10、適合嵌入各種手持等設備中使用。備中使用。 ARMARM嵌入式開發模式和基本開發流程嵌入式開發模式和基本開發流程硬件示例:硬件示例:S3C2440A通用型核心板(續)通用型核心板(續)超小尺寸超小尺寸:78.7mm38mm1.6mm、6層層PCB工藝,運行穩定工藝,運行穩定CPU SAMSUNG S3C2440A,主頻,主頻400MHz SDRAM 64MB NAND Flash 64MB 4個個LED指示燈指示燈 JTAG測試下載接口測試下載接口 擴展出所有的擴展出所有的I/O接口,方便二次開發使用接口,方便二次開發使用 多種供電方式多種供電方式 完全支持完全支持WindowsCE4.2/5.
11、0、6.0及及Linux2.6等等操作系統操作系統ARMARM嵌入式開發模式和基本開發流程嵌入式開發模式和基本開發流程硬件示例硬件示例:EM-S3C6410-II開發板開發板 采用核心板加底板設計采用核心板加底板設計,該平臺適用于該平臺適用于GPS,PDA,移動電視,智能手機,手持設備,平板電腦等消移動電視,智能手機,手持設備,平板電腦等消費類電子產品以及工業控制等領域。費類電子產品以及工業控制等領域。ARMARM嵌入式開發模式和基本開發流程嵌入式開發模式和基本開發流程硬件示例硬件示例:EM-S3C6410-II開發板(續)開發板(續)采用核心板加底板設計,采用核心板加底板設計,核心板核心板P
12、CB采用采用6層板層板設計,尺寸設計,尺寸81.2mm55.8mm,底板底板PCB采用采用4層板設計,尺寸層板設計,尺寸200mm140mm。核心板核心板上集成了上集成了Samsung 667M CPU S3C6410(ARM1176JZF-S內核內核)、128M Mobile DDR和和256M Nand Flash,通過,通過4個個1.27mm雙排雙排插針引出所有信號。插針引出所有信號。底板底板集成了集成了2M NorFlash、100M以太網、以太網、USB HOST接口、接口、USB DEVICE接口、接口、AC97接口、接口、SD接口、串口、攝像頭接口、接口、串口、攝像頭接口、TV
13、OUT接口、接口、LCD接口和接口和VGA接口等等。接口等等。 ARMARM嵌入式開發模式和基本開發流程嵌入式開發模式和基本開發流程硬件示例硬件示例:EM-S3C6410-II開發板(續),開發板(續),可支持的操作系統運行圖可支持的操作系統運行圖ARMARM嵌入式開發模式和基本開發流程嵌入式開發模式和基本開發流程2.2.3 嵌入式軟件開發嵌入式軟件開發無操作系統的軟件開發無操作系統的軟件開發v啟動代碼開發啟動代碼開發v應用程序開發應用程序開發基于操作系統的軟件開發基于操作系統的軟件開發vBootloader開發開發v操作系統移植操作系統移植v板級支持包(板級支持包(BSP)v應用程序開發應用
14、程序開發ARMARM嵌入式開發模式和基本開發流程嵌入式開發模式和基本開發流程無操作系統的軟件開發:無操作系統的軟件開發:啟動代碼啟動代碼功能功能v初始化硬件電路初始化硬件電路v為為C語言編寫的軟件做好語言編寫的軟件做好運行前準備的運行前準備的v是一小段匯編語言程序,是一小段匯編語言程序,是任何處理器上電復位時是任何處理器上電復位時的程序運行入口點的程序運行入口點 特征特征v通常用匯編語言編寫通常用匯編語言編寫v程序復位運行入口點程序復位運行入口點v代碼量非常小代碼量非常小程序流程程序流程v設置中斷、異常入口設置中斷、異常入口v關中斷關中斷v硬件寄存器初始化硬件寄存器初始化(GPIO配置、總線配
15、配置、總線配置、置、PLL時鐘)時鐘)v初始化棧指針初始化棧指針v數據區初始化數據區初始化v執行如下匯編語句進執行如下匯編語句進入入C程序程序 LDR PC,=Main ARMARM嵌入式開發模式和基本開發流程嵌入式開發模式和基本開發流程無操作系統的軟件開發:無操作系統的軟件開發:應用程序應用程序功能功能v硬件驅動硬件驅動v具體業務功能實現具體業務功能實現特征特征v通常用通常用C語言或者嵌入語言或者嵌入式匯編語言編寫式匯編語言編寫v程序較復雜,代碼量程序較復雜,代碼量較大較大ARMARM嵌入式開發模式和基本開發流程嵌入式開發模式和基本開發流程基于操作系統的軟件開發:基于操作系統的軟件開發:bo
16、otloader(引導(引導加載程序)加載程序)功能(與功能(與PC機中的機中的BIOS功能相似)功能相似)v對硬件檢測、初始化(如創建中斷向量、設置各種寄存對硬件檢測、初始化(如創建中斷向量、設置各種寄存器值)器值),從而將系統的軟硬件環境設置為一個合適的狀,從而將系統的軟硬件環境設置為一個合適的狀態,以便為調用操作系統內核準備好正確的運行環境。態,以便為調用操作系統內核準備好正確的運行環境。v引導操作系統引導操作系統v下載程序(串口、網口、下載程序(串口、網口、USB)v燒寫燒寫flash特征特征v不同類型的主板都對應自己相應的不同類型的主板都對應自己相應的bootloaderv系統在上電
17、或復位時通常都從地址系統在上電或復位時通常都從地址 0 x00000000 處開始執處開始執行,此地址處就存放行,此地址處就存放bootloader程序程序v通常用匯編語言和通常用匯編語言和C語言編寫,代碼量較小語言編寫,代碼量較小ARMARM嵌入式開發模式和基本開發流程嵌入式開發模式和基本開發流程PC機中機中BIOS的功能的功能BIOS(“Basic Input Output System”, “基本輸入輸出系統基本輸入輸出系統”)。它是一)。它是一組固化到計算機內主板上一個組固化到計算機內主板上一個ROM芯片芯片上的程序,它保存著計算機最重要上的程序,它保存著計算機最重要的基本輸入輸出的程
18、序、系統設置信息、開機后自檢程序和系統自啟動程的基本輸入輸出的程序、系統設置信息、開機后自檢程序和系統自啟動程序。序。 其主要功能是為計算機提供最底層的、最直接的硬件設置和控制。其主要功能是為計算機提供最底層的、最直接的硬件設置和控制。主要功能:主要功能:v 1、用于電腦剛接通電源時對硬件部分的檢測,也叫做加電自檢,檢查電腦是否、用于電腦剛接通電源時對硬件部分的檢測,也叫做加電自檢,檢查電腦是否良好,良好,v 2、初始化,包括創建中斷向量、設置寄存器、對一些外部設備進行初始化和檢、初始化,包括創建中斷向量、設置寄存器、對一些外部設備進行初始化和檢測測 v 3、加載操作系統的引導扇區:從軟盤或硬
19、盤的開始扇區讀取引導代碼,如果沒、加載操作系統的引導扇區:從軟盤或硬盤的開始扇區讀取引導代碼,如果沒有找到,則會在顯示器上顯示沒有引導設備,如果找到引導記錄會把電腦的控有找到,則會在顯示器上顯示沒有引導設備,如果找到引導記錄會把電腦的控制權轉給引導代碼,由引導記錄把操作系統裝入電腦,在操作系統啟動成功后,制權轉給引導代碼,由引導記錄把操作系統裝入電腦,在操作系統啟動成功后,BIOS的任務就完成了。的任務就完成了。ARMARM嵌入式開發模式和基本開發流程嵌入式開發模式和基本開發流程常見的常見的BootloaderEBootEboot是用于是用于Windows CE操作系統開發操作系統開發的的bo
20、otloader。它通過以太網和主機的集成開發環境它通過以太網和主機的集成開發環境Platform Builder進行通信,可以實現進行通信,可以實現Windows CE內核的下載、調試。內核的下載、調試。此外此外Eboot提供提供Flash固化等功能。固化等功能。ARMARM嵌入式開發模式和基本開發流程嵌入式開發模式和基本開發流程常見的常見的Bootloaderu-boot支持支持PowerPC、ARM、Xscale、MIPS、Coldfire和和x86等。等。除了支持除了支持Linux系統的引導外,還支持系統的引導外,還支持NetBSD、VxWorks、QNX、RTEMS、ARTOS、Ly
21、nxOS等多種嵌入式操作系統的引導。等多種嵌入式操作系統的引導。用戶接口用戶接口類似于類似于Linux的的shell界面界面,通過串口連,通過串口連接,用戶可以交互式的輸入命令和看到結果。接,用戶可以交互式的輸入命令和看到結果。使用使用u-boot可通過串口、以太網等接口從宿主機可通過串口、以太網等接口從宿主機下載程序并引導系統,同時還可以將程序固化到下載程序并引導系統,同時還可以將程序固化到Flash中,它提供靈活的環境變量操作接口,方中,它提供靈活的環境變量操作接口,方便實現自主模式和引導模式之間的切換。便實現自主模式和引導模式之間的切換。ARMARM嵌入式開發模式和基本開發流程嵌入式開發
22、模式和基本開發流程常見的常見的BootloaderBootRomBootRom是用于是用于VxWorks操作系統開發操作系統開發的的bootloader。和和Tornado等集成開發環境緊密結合。等集成開發環境緊密結合。可通過某種可選擇的通信手段(如網口、可通過某種可選擇的通信手段(如網口、串口),將串口),將VxWorks內核加載到目標板。內核加載到目標板。ARMARM嵌入式開發模式和基本開發流程嵌入式開發模式和基本開發流程復習:復習: GeekOS系統引導 GeekOS系統啟動涉及三個文件:系統啟動涉及三個文件:v Fd_bin.bin(由(由fd_boot.asm編譯得到編譯得到),se
23、tup_bin(由(由setup.asm編編譯得到譯得到), kernel.bin(編譯系統內核得到)(編譯系統內核得到)對對GeekOS編譯后,在編譯后,在build目錄下會生成一個軟盤鏡像文目錄下會生成一個軟盤鏡像文件件fd.img,這個文件由以上三個文件組成。,這個文件由以上三個文件組成。引導軟盤引導軟盤:保存:保存fd.img,其中首扇區的最后兩個字節是,其中首扇區的最后兩個字節是55AA,這是引導扇區,這個軟盤也就是引導盤。,這是引導扇區,這個軟盤也就是引導盤。Bochs開始運行系統后,會自動檢測啟動設備,開始運行系統后,會自動檢測啟動設備, 我們把這我們把這里里Bochs配置為從軟
24、盤啟動。配置為從軟盤啟動。軟盤首扇區最后一個字軟盤首扇區最后一個字55AA是在編譯操作系統時寫入的是在編譯操作系統時寫入的,表示把這個軟盤設置為啟動盤。表示把這個軟盤設置為啟動盤。ARMARM嵌入式開發模式和基本開發流程嵌入式開發模式和基本開發流程復習:OS啟動過程機器加電后,機器加電后,BIOS會自動檢測啟動設備,會自動檢測啟動設備, 我們把我們把Bochs被配被配置為從軟盤啟動,所以置為從軟盤啟動,所以BIOS把把引導程序引導程序(位于軟盤的引導扇(位于軟盤的引導扇區)復制到從內存地址區)復制到從內存地址0 x7c00開始的一塊內存區,之后跳轉開始的一塊內存區,之后跳轉到這個地址開始執行引
25、導程序。到這個地址開始執行引導程序。v引導程序的功能:將自己復制到內存的引導程序的功能:將自己復制到內存的0 x9000處,將處,將setup.bin復制到復制到0 x9020處,將處,將kernel.bin復制到復制到0 x1000處。處。然后然后跳轉到跳轉到setup執行執行。Setup程序程序完成裝載臨時完成裝載臨時GDT、IDT描述符,打開描述符,打開A20地址線,地址線,初始化初始化PIC中斷控制器,完成由實模式轉換到保護模式,最中斷控制器,完成由實模式轉換到保護模式,最后后跳轉到內核跳轉到內核main.c中的中的Main函數函數,這是操作系統內核入口,這是操作系統內核入口點。點。M
26、ain函數函數:初始化內核,開始執行內核級線程或用戶線線程。:初始化內核,開始執行內核級線程或用戶線線程。ARMARM嵌入式開發模式和基本開發流程嵌入式開發模式和基本開發流程復習:GeekOS系統初始化 Main函數在函數在src/src/geekos/main.c中實現。中實現。Main函數通過調用內核各模塊的初始化函數來完成系統內核的初始化。函數通過調用內核各模塊的初始化函數來完成系統內核的初始化。void Main(struct Boot_Info* bootInfo) Init_BSS(); Init_Screen(); Init_Mem(bootInfo); Init_CRC32()
27、; Init_TSS(); Init_Interrupts(); Init_Scheduler(); Init_Traps(); Init_Timer(); Init_Keyboard(); .ARMARM嵌入式開發模式和基本開發流程嵌入式開發模式和基本開發流程基于操作系統的軟件開發:基于操作系統的軟件開發:操作系統移植操作系統移植必須根據硬件平臺和應用場合將某種操作系統必須根據硬件平臺和應用場合將某種操作系統進行進行定制和代碼修改定制和代碼修改使其能夠運行在該硬件平使其能夠運行在該硬件平臺上,這個過程就是操作系統的移植。臺上,這個過程就是操作系統的移植。v操作系統提供商將針對某一個處理器的操
28、作系統提供商將針對某一個處理器的公板公板移植代移植代碼進行發布,用戶進行移植時只需要選擇和你使用碼進行發布,用戶進行移植時只需要選擇和你使用相同處理器的公板移植代碼,并根據你的硬件進行相同處理器的公板移植代碼,并根據你的硬件進行適當修改,這種移植稱為板級移植。適當修改,這種移植稱為板級移植。v如果你所使用的處理器在操作系統的發布中還沒有如果你所使用的處理器在操作系統的發布中還沒有一個公板代碼,則針對處理器部分的代碼都需要由一個公板代碼,則針對處理器部分的代碼都需要由用戶重寫,這種移植成為片級移植。用戶重寫,這種移植成為片級移植。由于硬件資源的限制,嵌入式操作系統通常需由于硬件資源的限制,嵌入式
29、操作系統通常需要進行裁減以減少代碼大小和提高運行效率。要進行裁減以減少代碼大小和提高運行效率。需要的功能加上,不需要的功能去掉。需要的功能加上,不需要的功能去掉。ARMARM嵌入式開發模式和基本開發流程嵌入式開發模式和基本開發流程基于操作系統的軟件開發:基于操作系統的軟件開發:操作系統移植操作系統移植Linux:需要需要MMU支持支持Windows CE :需要需要MMU支持支持uC/OS II:源代碼開放,內核高度裁減,可以裁減到源代碼開放,內核高度裁減,可以裁減到非常小非常小uClinux:在在Linux基礎上,專門為沒有基礎上,專門為沒有MMU的嵌入的嵌入式應用修改后的,目前廣泛應用于嵌
30、入式開發中式應用修改后的,目前廣泛應用于嵌入式開發中ARMARM嵌入式開發模式和基本開發流程嵌入式開發模式和基本開發流程基于操作系統的軟件開發:基于操作系統的軟件開發: BSP板級支持包板級支持包功能功能(教材教材6.2節)節)v為操作系統提供統一的操作硬件接口為操作系統提供統一的操作硬件接口特征特征v高度硬件相關,高度依賴于具體硬件平臺高度硬件相關,高度依賴于具體硬件平臺v各種操作系統各異各種操作系統各異硬件抽象層硬件抽象層設備驅動程序設備驅動程序配置文件配置文件Bootloader某一具體的開發板某一具體的開發板BSP具體的操作系統具體的操作系統ARMARM嵌入式開發模式和基本開發流程嵌入
31、式開發模式和基本開發流程基于操作系統的軟件開發:基于操作系統的軟件開發:應用程序開發應用程序開發1、圖形用戶界面:、圖形用戶界面:vWindows CE的用戶界面則保持傳統的的用戶界面則保持傳統的Windows風風格界面格界面vLinux下的下的QT Embedded、MicroWindows等等vVxWorks下的下的WindML2、實時性:在應用程序設計中同樣也要考慮。、實時性:在應用程序設計中同樣也要考慮。3、功耗:在應用程序設計時須充分考慮系統、功耗:在應用程序設計時須充分考慮系統功耗,在不影響系統功能的同時將功耗降到最功耗,在不影響系統功能的同時將功耗降到最低。低。4、程序大小、程序
32、大小ARMARM嵌入式開發模式和基本開發流程嵌入式開發模式和基本開發流程內內 容容2.1 ARM嵌入式開發模式嵌入式開發模式2.2 ARM嵌入式開發流程嵌入式開發流程2.3使用使用MDK開發無操作系統的嵌入式軟件開發無操作系統的嵌入式軟件2.4 ARM嵌入式系統控制界面嵌入式系統控制界面實驗一:實驗一:EduKit2410下使用下使用MDK燒寫代碼燒寫代碼ARMARM嵌入式開發模式和基本開發流程嵌入式開發模式和基本開發流程2.3使用使用MDK開發開發無操作系統的嵌入式無操作系統的嵌入式軟件軟件啟動代碼啟動代碼應用程序應用程序嵌入式軟件設計和調試流程嵌入式軟件設計和調試流程ARMARM嵌入式開發
33、模式和基本開發流程嵌入式開發模式和基本開發流程復習:復習:啟動代碼啟動代碼功能功能v初始化硬件電路初始化硬件電路v為為C語言編寫的軟件做好語言編寫的軟件做好運行前準備的運行前準備的v是一小段匯編語言程序,是一小段匯編語言程序,是任何處理器上電復位時是任何處理器上電復位時的程序運行入口點的程序運行入口點 特征特征v通常用匯編語言編寫通常用匯編語言編寫v程序復位運行入口點程序復位運行入口點v代碼量非常小代碼量非常小程序流程程序流程v設置中斷、異常入口設置中斷、異常入口v關中斷關中斷v硬件寄存器初始化硬件寄存器初始化(GPIO配置、總線配置、配置、總線配置、PLL時鐘)時鐘)v初始化棧指針初始化棧指
34、針v數據區初始化數據區初始化v執行如下匯編語句進入執行如下匯編語句進入C程序程序 LDRPC,=Main ,參考S3C2410A.S中第1108行ARMARM嵌入式開發模式和基本開發流程嵌入式開發模式和基本開發流程復習:復習:應用程序應用程序功能功能v硬件驅動硬件驅動v具體業務功能實現具體業務功能實現特征特征v通常用通常用C語言或者嵌入式匯編語言編寫語言或者嵌入式匯編語言編寫v程序較復雜,代碼量較大程序較復雜,代碼量較大ARMARM嵌入式開發模式和基本開發流程嵌入式開發模式和基本開發流程2.3.1嵌入式軟件設計和調試流程嵌入式軟件設計和調試流程編輯編輯v創建工程創建工程v添加文件、編寫程序添加
35、文件、編寫程序v匯編語言加匯編語言加C語言語言編譯編譯v配置編譯、匯編和連配置編譯、匯編和連接參數接參數v編寫連接腳本文件編寫連接腳本文件v編譯編譯調試調試v連接調試器連接調試器v下載程序下載程序v運行、調試運行、調試固化固化v通過仿真器燒寫通過仿真器燒寫flashv專用或通用的編程器專用或通用的編程器v通過通過bootloader燒寫燒寫flashARMARM嵌入式開發模式和基本開發流程嵌入式開發模式和基本開發流程RealView Microcontroller Development Kit(MDK-ARM) MDK-ARM開發工具源自德國開發工具源自德國Keil公司公司,被全球超過被全球超過10萬的嵌入式開發工程師驗萬的嵌入式開發工程師驗證和使用,是證和使用,是ARM公司公司目前最新推出的目前最新推出的針對各種嵌入式處理器的軟件開發工具。針對各種嵌入式處理器的軟件開發工具。 ARMARM嵌入式開發模式和基本開發流程嵌入式開發模式和基本開發流程MDK運行截圖運行截圖ARMARM嵌入式開發模式和基本開發流程嵌入式開
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 物料質量保障合同范本
- 解除雙方公司合同范本
- 活動板房施工合同范本
- 美甲店出資入股合同范本
- 代銷商品合同范本
- 大酒店施工合同范本
- 私人借款正規合同范本
- 工廠內銷合同范本
- 房產傭金協議合同范本
- 軟裝訂單合同范本
- 2024可信數據服務多方數據價值挖掘體系框架
- 故事繪本一園青菜成了精
- 衛健系統消防安全培訓課件
- 轉氨酶升高患者護理查房
- 讀后續寫:萬能升華主旨句3-脫險型(解析版)-新高考英語讀后續寫滿分攻略
- 初中英語導學案名詞 公開課教學設計
- 個人業績相關信息采集表
- 模具維護保養記錄表
- 003-04-PFMEA第五版表格模板-(帶實例)-2020.2.3
- 電大行政管理畢業論文細談我國選人用人機制存在的問題及對策
- 加氣站罩棚專項施工方案
評論
0/150
提交評論