摘要: 在介紹基于ARM 體系的嵌入式系統 啟動流程的基礎上,結合編程 實例,詳細、系統地敘述了BSP(板級支持包)程序的各個組成部分及其具體設計方案,并就實際程序設計中的幾個難點問題做了說明。
ARM公司 在32位RISC 的CPU 開發領域不斷取得突破,其結構已經從V3發展到V6。
BSP(Board Support Package)板級支持包介于主板硬件和操作系統 之間,其功能與PC機上的BIOS 相類似,主要完成硬件初始化并切換到相應的操作系統。BSP是相對于操作系統而言的,不同的操作系統對應于不同定義形式的BSP,例如VxWorks 的BSP和Linux 的BSP相對于某一CPU來說,盡管實現的功能一樣,可是寫法和接口 定義是完全不同的。另外,仔細研究所用的芯片資料 也十分重要,例如盡管ARM在內核上兼容,但每家芯片都有自己的特色。所以這就要求BSP程序員 對硬件、軟件和操作系統都要有一定的了解。
本文介紹基于ARM體系的嵌入式 應用系統初始化部分BSP的程序設計。本文引用的源碼全部是基于HMS320C7202芯片設計,并已成功運行。
1 初始化過程
盡管各種嵌入式應用系統的結構及功能差別很大,但其系統初始化部分完成的操作有很大一部分是相似的。嵌入式系統的啟動流程如圖1所示。
1.1 設置入口指針
啟動程序首先必須定義指針,而且整個應用程序只有一個入口指針。一般地,程序在編譯鏈接時將異常中斷向量表鏈接在0地址處,并且作為整個程序入口點。入口點代碼如下:
ENTRY(_start) ;開始
1.2 設置異常中斷向量表
ARM要求中斷向量表必須放置在從0開始、連續8×4字節的空間內。各異常中斷向量地址以及中斷的算是優先級如表1:表1 各異常中斷的中斷向量地址以及中斷的處理優先級
中斷向量地址 異常中斷類型 異常中斷模式 優先級(6最低) 0x0 復位 特權模式(SVC) 1 0x4 未定義中斷 未定義指令中止模式(Undef) 6 0x8 軟件中斷(SWI) 特權模式(SVC) 6 0x0c 指令預取中止 中止模式 5 0x10 數據訪問中止 中止模式 2 0x14 保留 未使用 未使用 0x18 外部中斷請求(IRQ) 外部中斷(IRQ)模式 4 0x1c 快速中斷請求(FIQ) 快速中斷(FIQ)模式 3
每當一個中斷發生后,ARM處理器 便強制把程序計數器(PC)指針置為向量表中對應中斷類型的地址值。因為每個中斷向量僅占據放置1條ARM指令的空間,所以通常放置1條跳轉指令或向程序計數器(PC)寄存器 賦值的數據訪問指令,使程序跳轉到相應的異常中斷處理程序執行。如果異常中斷處理程序起始地址小于32MB,使用B跳轉指令;如果跳轉范圍大于32MB,使用LDR指令。
另外,對于各未用中斷,可使其指向一個只含返回指令的啞函數,以防止錯誤中斷引起系統的混亂。
1.3 初始化存儲系統
初始化存儲系統的編程對象是系統的存儲器控制器 ,一個系統可能存在多種存儲器類型的接口,不同的存儲系統的設計不盡相同。Flash和SRAM 同屬于靜態存儲器類型,可以合用一個存儲器端口 ;而DRAM 因為有動態刷新和地址線復用等特性,通常配有專用的存儲器端口。其中,SD RAM必須在初始化階段進行設置,因為大部分的程序代碼 和數據都要在SDRAM中運行。
在HMS30C7202中,與SDRAM配置有關的寄存器有4個:配置寄存器、刷新定時寄存器、寫緩沖寫回寄存器和等待驅動寄存器,需要根據實際的系統設計對此分別加以正確配置。
SDRAM的初始化過程如下:加電→延遲10ms(各具體SDRAM器件延時時間可能不同)→設置配置寄存器參數→延時→寫刷新定時寄存器,設置刷新周期→延時→使能自動刷新→延時→設置模式寄存器(位于SDRAM內部)。
1.4 存儲器地址分布重映射(remap)和MMU
系統一上電,程序將自動從0地址處開始執行。因此,必須保證在0地址處存在正確的代碼,即要求0地址開始入是非易失性的ROM 或Flash等。但是因為ROM或Flash的訪問速度相對較慢,每次中斷響應發生后,都要從讀取ROM或Flash上面的向量表開始,影響了中斷響應速度。一般程序執行后將SDRAM映射為地址0,并把系統程序加載到SDRAM中運行,其具體步驟可以采用以下的方案:
(1)上電后,從0地址的ROM開始往下執行;
(2)根據映射前的地址,對SDRAM進行必要的代碼和數據拷貝;
(3)拷貝完成后,進行重映射操作;
(4)因為RAM在重映射前準備好了內容,使得PC指針能繼續在RAM里取得正確的指令。
在這種地址映射的變化過程中,程序員需要仔細考慮的是:程序的執行流程不能被這種變化所打斷,注意保證程序流程在重映射前后的承接關系。
存儲器的地址分配是很靈活的,可以將I/O操作映射成內存操作,也可以通過映射對某些不可訪問的地址空間進行保護等。進行存儲器初始化設計時,一定要根據應用程序的具體要求來完成地址分配。對地址管理通過MMU即存儲器管理單元實現。
在ARM系統中,MMU通過頁式虛擬存儲管理,將虛擬空間和物理空間分別分成一個個固定大小的頁,并建立兩者之間的映射關系,從而實現虛擬地址到物理地址的轉換。MMU還可完成存儲器訪問權限的控制和虛擬存儲器空間緩沖特性的設置。
以下是實現MMU的部分代碼:
for=(i=1;i<0x1000;i++){
pagetable[i]=(i<<20)|MMU_SECDESC;
} //建立頁表,每頁大小為1MB,頁表偏移序號是物理地址的高12位;
for(ad dr=SDRAM_BASE;addr<(SDRAM_BASE+SDRAM_SIZE/2);addr+=SIZE_1M)
pagetable[addr>>20]=addr|MMU_SECDESE|
MMU_CACHEABLE|MMU_BUFFERABLE;
//將SDRAM_BASE至(SDRAM_BASE+SDRAM_SIZE/2)空間的設置為不可CACHE和不可BUFFER的
for(addr=SDRAM_BASE+SDRAM_SIZE/2;addr<(SDRAM_BASE+SDRAM_SIZE);addr+=SIZE_1M)
pagetable[addr>>20]=(addr+0x1000000)|
MMU_SECDESC|MMU_CACHEABLE|MMU_BUFFERABLE;
//將這段空間的地址映射關系設置為VA(虛擬地址)=PA(物理地址)+0x1000000
pagetable[0]=(0x42f00000)|MMU_SECDESC|MMU_CACHEABLE|MMU_BUFFERABLE;
//將SDRAM的虛擬地址0x42f00000映射到0處
1.5 初始化各模式下的堆棧指針
因為ARM處理器有7種執行狀態,每一種狀態的堆棧指針寄存器(SP)都是獨立的(System和User三項式使用相同SP寄存器)。因此,對程序中需要用到的每一種模式都要給SP寄存器定義一個堆棧地址。方法是改變狀態寄存器(CPSR)內的狀態位,使處理器切換到不同的狀態,然后給SP賦值。這里列出的代碼定義了三種模式的SP指針,其中,I_Bit表示IRQ的中斷禁止位;F_Bit表示FIQ的中斷禁止位:
@;Set up SVC stac k to be 4K on top of zero-init data
LDR r1,=installStack
ADDsp ,r1,#2048
@;Set up IRQ and FIQ stacks
MOV r0,#(Mode_IRQ32|I_Bit)
MSRcpsr,r0
MOV r0,r0
ADDsp,r1,#2048*2
MOV r0,#(Mode_FIQ32|I_Bit |F_Bit)
MSR cpsr,r0
MOV r0,r0
ADDsp,r1,#2048*3
一般堆棧的大小要根據需要而定,但是要盡可能給堆棧分配快速和高帶寬的存儲器。堆棧性能的提高對系統性能的影響是非常明顯的。
1.6 初始化有特殊要求的端口、設備
有些關鍵的I/O部件必須在使能IRQ和FIQ之前進行初始化。因為如果在使能IRQ和FIQ之前沒有進行初始化,可以產生假的異常中斷信號 。程序中初始化了HMS30C7202的串口1用來調試程序與其它設備通信 。串口1是一個通用全雙工異步接收/發送器(UART ),它支持16C550的大部分功能。UART有接收緩沖/發送保持寄存器、波特率除數鎖存器、中斷允許寄存器等9個寄存器。對串口1的初始化主要是對各寄存器的設置,其實現代碼如下所示:
_outb(ser_base+0x30,1);
_outw(0x8002301c,0xffff9f9f) ;GPIO PORT A Enable
Register
_outw(0x800230A4,0x6060) ;GPIO PORT A Multi Function elect-Register
serial_outb(SERIAL_LCR,0x80);
serial_outb(SERIAL_LCR,0x80);
serial_outb(SERIAL_DLL,baud_data[cur_baud]);
serial_outb(SERIAL_DLM,0x0);
serial_outb(SERIAL_LCR,0x03);
seial_outb(SERIAL_FCR,0x01);
serial_outb(SERIAL_IER,0x00);
serial_outb(SERIAL_MCR,0x03);
1.7 切換處理器模式,開中斷
最后轉換到應用程序運行所需的最終模式,一般是User模式。不要過早切換到User模式進行User模式的堆棧設備。因為進入User模式后就不能再操作CPRS 回到別的模式了,可能會對接下去的程序執行造成影響。
這時才使能異常中斷,通過清除CPRS寄存器中的中斷禁止位實現。如果過早地開中斷,在系統初始化之前就觸發了有效中斷,會導致系統的死機。
1.8 呼叫主應用程序
當所有的系統初始化工作完成后,就需要把程序流程轉入主應用程序。圖2 2 技術難點分析
2.1 多種語言的混合編程
ARM有兩種匯編 指令集:16位THUMB指令集和32位ARM指令集。使用16位的寄存器可以降低成本,而且16位THUMB指令集整體執行速度比ARM 32位指令集快,提高了代碼密度。為了滿足ARM子程序和Thumb子程序互相調用,必須保證編寫的代碼遵循ATPCS。ATPCS規定了子程序調用的基本規則。
ARM系統結構也支持C、C++ 以及匯編語言的混合編程。匯編語言和C/C++語言的混合編程,在一個追求效率的程序中比較常見。許多人認為像BSP這樣底層的程序應該用純匯編語言編寫,其實不然。用匯編語言編寫的程序可讀性不高,而且不宜維護,不便于向其它類型的CPU移植,而這些方面卻是C語言 程序的優勢。BSP能否用純C語言去寫呢?也不行。因為某些操作是用C實現不了的。例如操作特殊寄存器的指令、CP15寄存器的指令、中斷使能及堆棧地址的設定等。在匯編和C/C++之間的函數調用時,也要遵循ATPCS的定義,還要注意的是用C語言編寫嵌入式程序時,要避免使用不能被固化到ROM中的庫函數。
混合編程情況下的程序編譯及鏈接后的輸出代碼與沒有混合編程時是不同的。所以當多個源文件如果使用了不同的設置進行編譯,相互之間的調用可能產生兼容性問題,對此一定要加以仔細考慮。編譯時,要告訴編譯器和鏈接器足夠的信息,一方面,讓編譯器能夠使用正確的指令碼進行編譯;另一方面,在不同的狀態之間發生函數調用時,鏈接器將插入一段鏈接代碼(veneers)來實現狀態轉換。
2.2 MMU的實現過程
頁表是實現MMU的重要手段。頁表存放在內存中,從虛擬地址到物理地址的變換過程其實就是查詢頁表的過程。大小為1MB的存儲塊通常被稱為段,圖2說明了如何查表進行段式尋址的全過程:32位的虛擬地址可分為12位的一級頁表序號和20位的段內地址偏移。12位的一級頁表序號和CP15寄存器的C2中的18位變換表基址合并成一級描述符地址查表找出相應的一級描述符;然后,段對應的物理基地址與段內地址偏移量合并成為真正的存儲器存取地址即物理地址,讀出相應數據。
本文介紹的BSP程序已經在以HMS30C7202為主芯片的開發系統上運行并測試通過,并且成功地引導了Linux內核,文中引用代碼可以直接使用。今后可以在此基礎上添加命令行解釋程序,在引導操作系統前進行存存儲器的讀寫等,擴展開發系統的功能。
點贊
收藏
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
嵌入式 處理器1.2.1 嵌入式 處理器的分類1.2.2 ARM 微處理器1.2.3 Nios微處理器1.2.4 DSP1.2.5 嵌入式 微處理器的選型原則1 3 嵌入式 操作系統 1.3.1 操作系統 的概念
2013-01-05 15:01:02
高中端市場的趨勢。本書以ARM 9處理器和Linux操作系統 為主線,全面介紹了嵌入式 系統 的開發過程,詳細講解了系統 的軟硬件設計、調試,以及嵌入式 操作系統 移植和嵌入式 驅動程序 開發,從部件編程到嵌入式
2016-07-11 18:01:38
大大提升了。本文旨在通過討論系統 程序設計 中的幾個基本方面,來說明基于ARM 的嵌入式 系統 程序 開發的一些特點,并提出和解決了一些常見的問題。文章分成幾個相對獨立的章節刊載。第一部分討論基于ARM 的嵌入式 程序 開發和移植過程中的一些基本概念。 [hide][/hide]
2009-11-13 11:53:54
ARM 嵌入式 系統 中的體系 結構
2021-12-14 08:58:48
GUI程序 開發第12章軟件項目管理第3篇Linux系統 篇第13章ARM 體系 結構及開發實例第14章深入Bootloader第15章解析Linux內核第16章嵌入式 Linux啟動流程第17章Linux文件系統 第18章建立交叉編譯工具鏈第19章強大的命令系統 BusyBox第20章Linux內核移植
2018-09-14 08:57:17
某個新型號的開發版上;二是能寫Linux驅動程序 的人;三是熟悉Linux內核裁減和優化的人。我院在該嵌入式 Linux方面的課程系列是:本科生操作系統 必修課,然后是Linux程序設計 選修課,最后是嵌入式
2018-07-05 08:04:27
ARM 處理器內核的體系 結構典型ARM 處理器內核(ARM 9.Cotex- A.Cotex- M . Cortex- R等的技術特點與應用領域)ARM 處理器指令系統 及匯編語言程序設計 ...
2021-12-22 06:29:30
嵌入式 系統 .第五章.ARM 匯編程序設計 .ARM 匯編程序設計 20 目錄5 ARM 匯編程序設計 5.2 ARM 匯編程序設計 25.2.1課堂重點5.2.2測試與作業6 下一章0 目錄5 ARM 匯編程序設計 5.2 ARM 匯編程序設計 25.2.1課堂重點5.2.2測試與作業6 下一章博客地址: ...
2021-12-14 07:03:54
過渡,向網絡化功能發展,ARM 等齊頭并進,嵌入式 操作系統 呈多元化趨勢,所有的嵌入式 處理器都是基于一定的架構的,即IP核(Intellectual Property,知識產權)。談及體系 我們都會想到ARM
2020-05-18 14:36:57
文章目錄嵌入式 系統 概述基本概念嵌入式 系統 的發展發展歷史發展趨勢組成結構設備驅動層硬件抽象層HAL板級支持包BSP 設備驅動程序 實時操作系統 RTOSOS的應用程序 接口API應用程序 APP嵌入式 處理器
2021-07-16 08:15:30
當今嵌入式 處理器的生產已遠遠超過了為桌面系統 所設計的處理器。本書通過介紹8位微控制器(MCU)的開發原理和C語言的相關知識,向讀者展示了如何用C語言編寫8位嵌入式 MCU程序 ,內容涉及數據類型和變量
2017-02-24 21:59:45
什么是嵌入式 系統 的微模塊化程序設計 ?嵌入式 系統 的微模塊化程序設計 有何作用?
2021-12-24 06:35:06
嵌入式 系統 的知識體系 嵌入式 系統 的學習誤區嵌入式 系統 基礎階段的學習建議
2021-02-19 07:06:43
學習嵌入式 的基礎語言是C語言,因此先掌握C語言對于后續嵌入式 的學習有著非常大的意義。下面講解下嵌入式 C語言程序設計 基礎,尤其是C語言的一些語言特點。 C語言是一種結構化的程序設計 語言,它的優點
2021-11-09 07:13:02
、《Linux高級程序設計 》 楊宗德著硬件基礎1、《ARM 體系 結構與編程》杜春雷著2、S3C2410 Datasheet英語基礎1、《計算機與通信專業英語》系統 教程1、《嵌入式 系統 ――體系 結構、編程
2020-06-24 14:39:37
》 系統 教程 1、《嵌入式 系統 ――體系 結構、編程與設計》 2、《嵌入式 系統 ――采用公開源代碼和StrongARM/Xscale處理器》毛德操 胡希明著 3、《Building
2014-07-20 10:29:13
》 系統 教程 1、《嵌入式 系統 ――體系 結構、編程與設計》 2、《嵌入式 系統 ――采用公開源代碼和StrongARM/Xscale處理器》毛德操 胡希明著 3、《Building
2014-12-12 09:49:06
干貨來了,本文創客學院嵌入式 linux培訓講師和學員分享嵌入式 程序設計 和系統 開發與維護的相關知識點。希望對學習嵌入式 開發的學員有所幫助。 嵌入式 開發教程之程序設計 與開發維護: 一、嵌入式
2017-05-26 14:59:52
嵌入式 操作系統 是ARM CPU的軟件基礎,從8位/16位單片機發展到以arm CPU核為代表的32位嵌入式 處理器,嵌入式 操作系統 將替代傳統的由手工編制的監控程序 或調度程序 ,成為重要的基礎組件。更重
2020-04-07 07:13:19
慕課電子科技大學.嵌入式 系統 .第二章.嵌入式 硬件系統 (第一部分.嵌入式 系統 存儲體系 0 目錄2 嵌入式 硬件系統 (第一部分)2.5 嵌入式 系統 存儲體系 2.5.1課堂重點2.5.2測試與作業3 下一章0
2021-12-17 08:08:09
嵌入式 系統 設計師學習筆記二十七:嵌入式 軟件程序設計 ②——嵌入式 程序設計程序設計 語言機器語言:由二進制所組成的,機器能識別的二進制串。(在機器上運算速度最快,開發效率最低)匯編語言:將二進制串符號化
2021-12-21 08:28:48
嵌入式 開發人員的參考書。圖書目錄:第1章 嵌入式 系統 基礎知識 1.1 嵌入式 系統 概述 1.2 嵌入式 系統 的組成 1.3 嵌入式 操作系統 舉例 1.4 嵌入式 系統 開發概述 第2章 arm 技術概述
2019-08-27 15:35:05
1章和第2章為理論部分,主要介紹嵌入式 系統 的概念及開發方法。第3~5章為基礎部分,主要介紹ARM 7體系 結構、指令系統 及LPC2000系列ARM 微控制器的結構原理。第6~8章為應用部分,主要
2019-04-04 23:27:25
:第1章和第2章為理論部分,主要介紹嵌入式 系統 的概念及開發方法。第3~5章為基礎部分,主要介紹ARM 7體系 結構、指令系統 及LPC2000系列ARM 微控制器的結構原理。第6~8章為應用部分,主要
2017-06-12 17:59:55
嵌入式 系統 的概念及應用領域,嵌入式 系統 軟硬件及設計方法基本知識,ARM 微處理器體系 結構與匯編語言程序設計 ,?C/OS-II實時操作系統 分析,嵌入式 系統 硬件接口設計,嵌入式 系統 軟件設計與編程以及嵌入式 系統
2018-03-01 17:26:54
`編輯推薦 本書以ARM 920T微處理器為硬件平臺,結合Linux操作系統 ,詳細介紹了嵌入式 應用系統 的設計、調試方法,以及嵌入式 驅動程序 開發。全書內容豐富,語言通俗易懂,具有很強的可讀性。內容簡介
2017-12-25 17:33:32
嵌入式 系統 的概念及應用領域,嵌入式 系統 軟硬件及設計方法基本知識,ARM 微處理器體系 結構與匯編語言程序設計 ,?C/OS-II實時操作系統 分析,嵌入式 系統 硬件接口設計,嵌入式 系統 軟件設計與編程以及嵌入式 系統
2018-02-01 17:10:47
`ARM 處理器體系 、嵌入式 系統 詳解,結構及系統 工程設計方法。`
2021-03-29 14:37:42
嵌入式 系統 原理及應用教程- -嵌入式 程序設計 基礎 l
2018-12-02 22:20:16
隨著互聯網應用的普及,越來越多的信息化產品需要接入互聯網通過Web頁面進行遠程訪問。嵌入式 Web系統 提供了一種經濟、實用的互聯網嵌入式 接入方案。這里結合一種嵌入式 WebServer BOA來介紹嵌入式 Linux系統 下的CGI程序設計 技術。
2019-09-20 07:21:39
單片機與嵌入式 系統 程序設計 技術
2012-11-02 09:47:52
基本要求1.具有嵌入式 系統 、微電子技術、數字媒體以及計算機網絡的基礎知識2.熟悉嵌入式 微處理器的體系 結構、功能特點,初步掌握ARM 匯編語言程序設計 3.熟悉嵌入式 系統 硬件的組成,掌握常用I/O 接口
2021-07-22 09:24:34
小、高度自動化、響應速度快、特別適合于要求實時和多任務的體系 等特點[1]在嵌入式 系統 中獲得了越來越廣泛的應用。這使得基于ARM 的嵌入式 監測系統 具有成本低、功耗低、實時性能好及智能程度高等優點,在工業監測與控制領域具有較為廣闊的應用前景[2]。本文設計了基于ARM 的嵌入式 監測系統 。
2019-10-09 06:19:25
嵌入式 軟件的啟動代碼嵌入式 軟件開發關鍵技術嵌入式 實時操作系統 程序 的鏈接定位軟件調試技術http://“ARM ”軟件設計基礎“ARM ”軟件調試與運行啟動代
2006-03-25 15:03:06 203 嵌入式 系統 的C程序設計
2006-04-07 22:42:43 86 基于ARM 的嵌入式 程序設計 從硬件到軟件共8章1
2006-04-08 00:27:01 567 嵌入式 系統 的C程序設計
2007-11-10 08:59:57 54 嵌入式 系統 的設計方法從嵌入式 系統 的C程序設計 開始講,一步步深入。
2009-03-28 09:45:43 38 基于VxWorks實時嵌入式 操作系統 的設備驅動程序設計
2009-03-29 12:28:28 28 在詳細介紹一種嵌入式 Web 服務器BOA 的實現與配置方法的基礎上,以一個Web 在線遠程監控GPIO(通用輸入/ 輸出)的程序 為實例, 介紹嵌入式 Linux 系統 下CGI 程序設計 技術。
2009-04-15 09:35:30 28 通過對Windows和Linux環境下設備驅動程序設計 模型的比較,結合通信領域嵌入式 系統 的特點,提出了嵌入式 通信系統 設備驅動程序設計 標準化的構想;通過參考常用的設備驅動程序 的
2009-05-07 20:39:37 17 在詳細介紹一種嵌入式 Web 服務器BOA 的實現與配置方法的基礎上,以一個Web 在線遠程監控GPIO(通用輸入/ 輸出)的程序 為實例, 介紹嵌入式 Linux 系統 下CGI 程序設計 技術。
2009-05-16 14:40:43 23 本文簡單介紹了嵌入式 實時程序設計 的特點和嵌入式 系統 設計中語言的選擇,著重介紹了以下幾種在嵌入式 實時程序設計 中優化 C/C++代碼的方法[關鍵詞] 嵌入式 實時操作系統 (
2009-08-07 08:47:03 15 在嵌入式 系統 實驗中,了解ARM 的體系 結構、熟悉嵌入式 操作系統 是關鍵。為了掌握常用外部設備接口驅動程序 、接口應用程序 的設計,培養學生的硬件、軟件協同設計能力,實現對
2009-09-01 08:53:11 10 基于ARM 的嵌入式 系統 及SNMP的設計與實現隨著Internet的發展和后PC時代的到來,嵌入式 系統 成為當前IT產業的焦點之一,呈現了巨大的市場需求。但同時大量的嵌入式 應
2010-02-10 15:12:00 39 嵌入式 系統 的c程序設計
2010-02-11 09:21:31 65 在介紹基于ARM 體系 的嵌入式 系統 啟動流程基礎上,結合編程實例
詳細系統 地敘述了BSP (板級支持包)程序 的各個部分及其設計方案
并就實際程序設計 的幾個難點問題
2010-06-25 14:24:27 43 應用程序 的固化是嵌入式 產品開發和生產過程中一個重要環節。基于ARM 的嵌入式 系統 常用的程序 固化方法是,用仿真器通過JTAG 口將程序 燒錄到Flash里,在產品的開發階段,使用仿真
2010-07-01 16:56:16 45 本書主要內容包括:嵌入式 系統 的基本概念與開發流程,ARM 微處理器與嵌入式 系統 硬件電路的原理,存儲映射及嵌入式 軟件開發技術,ARM 指令、程序設計 以及開發工具的使用方法,Lin
2011-10-13 16:52:13 0 《ARM 體系 結構與程序設計 》是ARM 體系 結構與程序設計 的一本實用指導書籍,通過案例詳細介紹了ARM 體系 結構與程序設計 ,案例中的程序 都取自實際的項目,且對程序 有詳細注解。
2011-10-27 16:37:27 2614 本文僅介紹了幾種常用的基于xilkernel的嵌入式 應用程序設計 方法,讀者還可以利用互斥、軟件定時器等實現其它的功能。讀者也可以根據嵌入式 開發的經驗和xilkernel的強大功能,構建復
2011-12-12 14:38:40 2254 本書全面、深入地介紹了基于ARM SoC的嵌入式 系統 開發技術,包括ARM 系統 結構與匯編程序設計 、基于ARM 的嵌入式 系統 啟動代碼bootloader設計、實時嵌入式 操作系統 及其移植方法、嵌入式 系
2011-12-28 10:39:03 0 本文介紹了嵌入式 檢測系統 的應用程序設計 ,它是基于USB接口的檢測設備。應用程序 的任務是把用戶對設備的請求翻譯成相應的控制代碼,并將其傳遞給驅動程序 ,同時還負責接收從驅
2012-05-29 11:16:09 1399 電子發燒友網站提供《嵌入式 系統 開發基礎_基于ARM 9微處理器C語言程序設計 (第二版).txt》資料免費下載
2015-01-15 16:21:54 0 嵌入式 系統 的C程序設計
有需要的朋友下來看看
2015-12-29 17:56:35 1 基于ARM 的嵌入式 鑰匙加工系統 設計與應用
2016-06-17 16:48:12 2 嵌入式 系統 的C程序設計 ,感興趣的小伙伴們可以看看。
2016-07-26 10:26:39 42 基于ARM 的嵌入式 系統 教學與科研應用
2017-01-08 14:27:49 9 基于ARM 的嵌入式 系統 程序 開發要點(1)
2017-01-14 12:33:04 7 隨著嵌入式 控制在工業領域的不斷滲入,進入21世紀之后,基于ARM 體系 Linux操作系統 的嵌入式 一體化工業控制系統 成為了工業控制的主要發展方向,ARM 芯片不僅體積小,功耗低,而且功能強;Linux由于其開源,穩定以及成本低的優點,在嵌入式 系統 中得到了廣泛的應用。
2017-09-01 10:47:09 5 用嵌入式 系統 ,有些嵌入式 系統 還包含操作系統 , 但大多數嵌入式 系統 都是是由單個程序 實現整個控制邏輯。 所謂ARM 仿真器,即用于調試基于ARM 內核芯片的一個硬件模塊。ARM 內核包括ARM 7,ARM 9,ARM 11,Cortex-A,Cortex-M,Cortex-R等系列,而基于這些
2017-10-18 13:24:27 1 本章主要介紹嵌入式 應用程序 的設計方法。本章中的一些實例程序 是以ARM 公司的Realview2.2為開發平臺。由于目前嵌入式 應用環境相差非常大,這里主要是通過這些實例程序 來更直接地介紹嵌入式 應用系統
2017-10-19 09:22:50 1 MATLAB平臺的DSP嵌入式 應用程序設計 的研究
2017-10-19 13:22:24 7 基于MATLAB平臺的DSP嵌入式 應用程序設計 的研究
2017-10-20 15:09:45 5 基于ARM 的嵌入式 系統 程序 開發要點(六)--開發高效程序 的技巧
2017-10-25 11:31:02 4 嵌入式 系統 與C程序設計
2017-10-30 10:20:29 13 嵌入式 Linux的中斷驅動程序設計
2017-10-31 11:29:58 3 ARM 公司在32位RISC的CPU開發領域不斷取得突破,其結構已經從V3發展到V6。 BSP (Board Support Package)板級支持包介于主板硬件和操作系統 之間,其功能與PC機上
2017-11-07 10:35:27 12 本文檔的主要內容詳細介紹的是ARM 嵌入式 系統 教程之ARM 嵌入式 系統 的四個實驗介紹詳細實驗包括了:實驗一實驗平臺熟悉與ADS開發環境,實驗二ARM 匯編語言及C語言程序設計 , 實驗三ARM 的I/0與中斷實驗, 實驗四鍵盤接口和七段數碼管控制實驗
2018-11-14 09:24:02 20 結構與匯編語言程序設計 ,UC/OS-II實時操作系統 分析,嵌入式 系統 硬件接口設計,嵌入式 系統 軟件設計與編程以及嵌入式 系統 的應用開發案例等知識體系 。
2018-12-10 08:00:00 34 介紹了一種基于ARM 的嵌入式 系統 的設計方法; 首先簡要介紹了嵌入式 硬件設計方案, 然后重點闡述BootLoader 程序 的設計、uCLinux 的編譯與移植, 最后對uCLinux 下的網絡編程進行了分析。
2019-03-08 14:47:24 14 本文檔的主要內容詳細介紹的是嵌入式 系統 原理及應用教程之ARM 匯編語言程序設計 的詳細資料說明包括了:1.偽操作和偽指令 ,2.ARM 匯編語言語句格式,3.ARM 匯編語言的程序 格式,4.相關的程序 示例
2019-03-20 10:26:18 11 嵌入式 系統 由硬件環境、嵌入式 操作系統 和應用程序 組成,硬件環境是操作系統 和應用程序 運行的硬件平臺,它隨應用的不同而有不同的要求。硬件平臺的多樣性是嵌入式 系統 的主要特點,如何使嵌入式 操作系統 在不同的硬件
2019-04-02 14:42:11 2736 本文簡要介紹了ARM 處理器的特點及其基本結構,詳細論述了基于ARM 的嵌入式 linux系統 的關鍵技術,包括引導加載程序 、Linux內核、文件系統 、用戶應用程序 。對linux系統 的各部分開發設計做了較深入清晰地分析,總結了linux系統 的特點,及其在嵌入式 操作系統 競爭中的優勢。
2019-05-06 18:22:00 10 基于ARM 的嵌入式 處理器指令系統 ;第5章介紹嵌入式 系統 的程序設計 基礎,包括匯編語言程序設計 及其與C/C++語言的混合編程技術;第6章介紹典型嵌入式 操作系統 uC Linux;第7章詳細解剖嵌入式 系統 的Boot Loader;第8章詳細討論嵌入式 系統 的設計技術并給出設計實例。
2019-06-28 16:07:06 813 的,不同的操作系統 對應于不同定義形式的BSP ,例如VxWorks的BSP 和Linux 的BSP 相對于某一CPU來說,盡管實現的功能一樣,可是寫法和接口定義是完全不同的。另外,仔細研究所用的芯片資料也十分重要, 例如盡管ARM 在內核上兼容, 但每家芯片都有自己的特色。所以這就要求BSP 程序 員對硬件、
2020-07-17 15:55:37 26 將嵌入式 技術與PLC技術相結合提出了一種基于ARM 9的嵌入式 PLC系統 的實現方法,給出了以嵌入式 Linux操作系統 為軟件系統 的嵌入式 PLC體系 結構。詳細分析了軟件系統 中驅動程序 與應用程序 的設計.
2020-09-07 17:03:00 18 ARM 公司在32 位RISC 的CPU 開發領域不斷取得突破, 其結構已經從V3 發展到V6。BSP ( Board Support Package)板級支持包介于主板硬件和操作系統 之間,其功能
2020-10-22 17:15:32 8 ARM 公司在32 位RISC 的CPU開發領域不斷取得突破,其結構已經從V3發展到V6。BSP ( Board Support Package )板級支持包介于主板硬件和操作系統 之間,其功能與PC機上
2020-12-04 16:46:22 13 基于ARM 11的嵌入式 通信系統 (嵌入式 開發設計需要什么軟件)-基于ARM 11的嵌入式 通信系統 ? ? ? ? ? ??
2021-07-30 14:40:26 20 ARM 嵌入式 系統 BSP 的程序設計 總結(嵌入式 開發模式稱為)-該文檔為ARM 嵌入式 系統 BSP 的程序設計 總結文檔,是一份很不錯的參考資料,具有較高參考價值,感興趣的可以下載看看………………
2021-08-04 10:37:18 5 ARM 開發教程之ARM 體系 的嵌入式 系統 BSP 的程序設計 (嵌入式 開發工資很低嗎)-該文檔為ARM 開發教程之ARM 體系 的嵌入式 系統 BSP 的程序設計 總結文檔,是一份很不錯的參考資料,具有較高參考價值,感興趣的可以下載看看………………
2021-08-04 11:21:30 6 ARM 嵌入式 系統 原理及應用教程(嵌入式 開發全套課程)-該文檔為ARM 嵌入式 系統 原理及應用教程文檔,是一份很不錯的參考資料,具有較高參考價值,感興趣的可以下載看看………………
2021-08-04 11:33:28 42 ARM 開發教程之ARM 體系 的嵌入式 系統 BSP 的程序 的設計說明(android板嵌入式 開發)-該文檔為ARM 開發教程之ARM 體系 的嵌入式 系統 BSP 的程序 的設計說明總結文檔,是一份很不錯的參考資料,具有較高參考價值,感興趣的可以下載看看………………
2021-08-04 11:36:34 11 套接字向網絡發出請求或者應答網絡請求,用于TCP/IP協議的應用程序 之間的相互通信。論文選擇了ARM 體系 結構的嵌入式 LPC2200處理器,根據系統 的需求,在綜合各種設計方案的基礎上,選擇移植帶有TCP
2021-08-04 14:16:05 5 嵌入式 RFID的驅動程序設計 (嵌入式 開發專業有前途嗎)-本課題將RFID技術與嵌入式 技術相結合,創新性的提出了嵌入式 RFID的驅動解決方案。完成了基于nRF905射頻模塊的多平臺嵌入式 驅動設計與移植
2021-08-04 14:51:18 16 ARM 嵌入式 系統 復習要點(嵌入式 開發版使用什么系統 好)-文檔為ARM 嵌入式 系統 復習要點總結文檔,是一份不錯的參考資料,感興趣的可以下載看看,,,,,,,,,,,,,
2021-08-04 15:07:21 13 前言嵌入式 知識點復習一嵌入式 知識點復習二 --體系 結構嵌入式 知識點復習三 --ARM -LINUX嵌入式 開發環境嵌入式 知識點復習四 --arm -linux文件編程嵌入式 知識點復習五
2021-10-19 18:32:42 28 一、常見的ARM 嵌入式 系統 開發環境配置:1、編譯器/匯編器2、指令系統 模擬器3、在線仿真器或調試探測器4、目標開發板5、跟蹤捕捉儀6、嵌入式 操作系統 ARM 嵌入式 系統 C編譯器:ARM 公司,keil公司
2021-10-20 18:20:59 6 ARM 嵌入式 系統 的基本結構和常見的ARM 微處理器ARM 被稱為嵌入式 微處理器核。ARM 嵌入式 系統 由3部分組成,即嵌入式 系統 硬件平臺,嵌入式 操作系統 (代碼)和嵌入式 系統 應用。1、嵌入式 系統 硬件平臺主要
2021-10-21 12:51:00 17 來介紹嵌入式 Linux系統 下的CGI程序設計 技術。2 Web Server BOA的實現與配置2.1 uClinux下,主要有三個Web Server:HTTPD、THTTPD和BOA。HTTPD 是最...
2021-11-02 13:06:23 13 嵌入式 系統 由硬件環境、嵌入式 操作系統 和應用程序 組成,硬件環境是操作系統 和應用程序 運行的硬件平臺,它隨應用的不同而有不同的要求。硬件平臺的多樣性是嵌入式 系統 的主要特點,如何使嵌入式 操作系統 在不同的硬件
2021-11-02 14:51:27 7 學習嵌入式 的基礎語言是C語言,因此先掌握C語言對于后續嵌入式 的學習有著非常大的意義。下面講解下嵌入式 C語言程序設計 基礎,尤其是C語言的一些語言特點。 C語言是一種結構化的程序設計 語言,它的優點
2021-11-03 21:06:01 32 嵌入式 系統 設計師學習筆記二十六:嵌入式 軟件程序設計 ①——嵌入式 應用開發的過程一個嵌入式 應用項目的開發過程是一個硬件設計和軟件設計的綜合過程,一般而言要經歷以下幾個步驟:①硬件的設計與實現②設備驅動
2021-11-04 10:06:16 18 文章目錄嵌入式 程序 組件狀態機循環緩沖區和面向流的程序設計 FIR濾波器C編寫的數字濾波器II型IIR 濾波器隊列和生產者 / 消費者系統 程序 的模型數據流圖(DFG,Data flow graph)控制
2021-11-04 10:36:05 14 抽象層的引入3.2 BSP 的特點與功能3.3 BSP 的設計與實現嵌入式 系統 初始化以及BSP 的功能硬件相關的設備驅動程序 3.4 設計實現BSP 的方法設計實現BSP 的一般方法方法一:以經典BSP 為參考方法二:使用操作系統 提供的BSP 模板此設計思想針對嵌入式 系統 RTOS級別(BSP ),而非Linux級別(PO
2021-12-08 12:06:11 13 電子發燒友網站提供《嵌入式 linux-聊天程序設計 .doc》資料免費下載
2023-10-26 11:42:48 8
已全部加載完成
評論