嵌入式學習筆記(之一)
前言
筆者在大一下學期一時沖動,直接跳過計算機二級報名考計算機三級嵌入式。沒錯,我覺得我沖動了,當時想着接觸一下嵌入式,學點皮毛也好,考個證下來就更好了,結果,看書做題,發現,我高估自己了喔。
八十塊錢報名費極大可能打水漂,但看完書還是認認真真的把題庫刷一遍吧,前面八十分基本全是概念啊,全是啊,我滴天,孩子最不擅長的就是背這些balabala的,哭了,孩子快哭了啊!!!太難啦!!!
做過題記一下筆記吧,加深些印象也好,嗚嗚嗚~
大致提綱
一、嵌入式系統概論
(1)嵌入式系統介紹及其特性:
專用性;隱蔽性;資源受限;高可靠性;實時性;軟件固化。
(2)嵌入式系統的應用
(3)嵌入式系統的邏輯組成:
軟硬件兩部分:硬件主體是中央處理器和存儲器,它們通過輸入/輸出(I/O)接口和輸入/輸出設備與外部世界聯系,並借助總線相互連接,這些硬件連同嵌入式軟件一同構成完整的嵌入式系統。
(4)嵌入式處理芯片:
嵌入式系統的CPU一般具有四個特點:支持實時處理;低功耗;結構可擴展;集成了測試電路。
(5)目前嵌入式處理芯片類型:
微處理器(MCU);數字信號處理器(DSP);微控制器(單片機);片上系統(SoC)。
(6)嵌入式系統的多種分類方法
可以按用途分類;按實時性分類;按產品形態分類;按系統的復雜程度分類。
(7)SoC芯片的介紹
(8)IP核及其復用
軟核;固核;硬核。
2.嵌入式系統與數字媒體
(1)數字(電子)文本
(2)數字圖像
(3)數字音頻與數字視頻
3.數字通信與計算機網絡
(1)數字通信:
模擬通信與數字通信;有線與無線通信。
調制與解調技術;多路復用技術;交換技術。
(2)計算機網絡
(3)互聯網
二、嵌入式處理器
1.嵌入式處理器概述:
(1)嵌入式處理器的結構類型
嵌入式處理器的體系結構按命令集可分為兩大類:復雜命令集結構(CISC)及精簡命令集結構(RISC)。進一步細分,按存儲機制分為馮.諾依曼結構和哈佛結構;按字長分為8位、16位、32位和64位結構;按不同內核系列又可分為51、AVR、PIC、MSP430、MIPS、PowerPC、MC68K、ColdFire、ARM等。
(2)ARM處理器概述
主要特點:單周期操作;只使用加載、存儲(Load/Store)命令訪問內存;命令長度固定為32位長;三地址命令格式;命令流水線技術;低功耗設計。
2.典型ARM處理器介紹
(1)ARM處理器的分類:
經典ARM處理器(T表示支持Thumb命令集,D表示支持片上調試,M表示具有快速的64位乘法,I表示提供片內在線仿真,-S表示該處理器以IP軟核的形式提供授權)、ARM Cortex嵌入式處理器(Cortex -M)、ARM Cortex實時嵌入式處理器(Cortex -R)、ARM Cortex應用處理器(Cortex -A)以及ARM Cortex專家處理器。
3.ARM處理器體系結構
(1)ARM處理器工作狀態:
ARM狀態;Thumb狀態及Thumb-2狀態;調試狀態。
(2)ARM處理器的工作模式:
用戶模式(User);快速中斷模式(FIQ);外部中斷模式(IRQ);管理模式(SVC);中止模式(ABT);未定義命令模式(UND);系統模式(SYS)。
(3)ARM異常種類及優先級
復位RESET(1);未定義的命令UND(6);軟件中斷SWI(6);命令預取中止PABT(5);數據訪問中止DABT(2);外部中斷請求IRQ(4);快速中斷請求FIQ(3)。
(4)ARM處理器中的MMU(內存管理單元);MPU(存儲器保護單元)。
4.ARM處理器命令集
(太多了,不好記,這部分我還是回去看資料吧。。。ε=(´ο`*)))唉)
5.ARM匯編語言進程設計
三、嵌入式系統硬件組成
1.嵌入式最小硬件系統
大專欄 計算機三級嵌入式學習筆記 電源電路;時鍾電路;復位電路;JTAG測試接口。
2.嵌入式處理芯片
(1)ARM的AMBA總線體系結構及標准
(2)基於ARM內核的嵌入式芯片的硬件組成
存儲器及控制器;中斷控制器;DMA控制器;電源管理與時鍾控制器;GPIO端口;定時計數組件;模擬通道組件;互聯通信組件。
3.嵌入式系統的存儲器
隨機訪問存儲器;只讀存儲器;鐵電存儲器;磁性存儲器。
4.I/O接口及常用的I/O設備
通用I/O接口GPIO;集成電路互連總線接口I²C;串行外設接口SPI;串行異步通信接口UART;通用串行總線USB;高清多媒體接口HDMI;常用簡單輸入設備;常用簡單輸出設備。
5.ARM內核典型嵌入式處理芯片
6.嵌入式系統外部通信接口
基於UART的RS-232/RS-485接口;CAN總線接口;以太網通信接口;常用無線通信接口。
四、嵌入式系統軟件
1.嵌入式系統的軟件組成
(1)嵌入式軟件的特點:
軟件與硬件一體化;軟件代碼時空效率要求高;軟件可裁剪,盡可能去除冗余;軟件應用環境復雜,安全性和可靠性要求高;軟件開發難度大;軟件面向用戶、面向商品、面向應用,受限於功能和具體應用環境;軟件產業高度分散;軟件具有較長的生命周期。
(2)嵌入式軟件的軟件結構:
簡單的輪詢結構;帶中斷的輪詢結構;監控式操作系統+應用軟件的結構;通用嵌入式操作系統+應用軟件的結構。
(3)硬件抽象層與板級支持包
(4)引導加載進程
引導加載進程的概念和功能;嵌入式操作系統的加載方式;引導加載進程的執行過程;U-Boot簡介。
(5)嵌入式系統的設備驅動設備
2.嵌入式操作系統
(1)實時系統與實時操作系統
實時系統:硬實時任務;軟實時任務;准實時任務。
實時操作系統:事件驅動;多級中斷嵌套處理;細粒度的任務優先級控制;實時搶占式調度。
實時操作系統的實時性指標:中斷延遲時間;任務切換時間;任務搶占時間。
(2)嵌入式操作系統概述
嵌入式操作系統的特點和分類
嵌入式操作系統的內核結構:單內核和微內核。
常用嵌入式操作系統簡介。
3.uC/OS嵌入式操作系統
(1)uC/OS操作系統概述
uC/OS-Ⅱ內核大致可以划分為任務調度、任務管理、時間管理、任務間同步與通信以及內存管理、系統管理等模塊。系統管理又包括系統初始化、系統啟動、中斷管理、時鍾中斷及事件處理等部分。
(2)uC/OS-Ⅱ的任務及其管理
任務的進程代碼;任務堆棧;任務控制塊。
(3)uC/OS-Ⅱ的系統服務
uC/OS-Ⅱ的任務管理服務;uC/OS-Ⅱ的時鍾節拍與時間管理服務;uC/OS-Ⅱ的任務間通信與同步服務。
(4)uC/OS-Ⅲ操作系統的改進與提高
時間片輪轉調度;內核對象的數量無限制;任務消息和任務信號;優先級的時鍾節拍處理;可針對的時鍾節拍處理;可針對處理器體系結構進行優化;時間戳;增強的內置性能測試功能。
五、嵌入式系統的開發
1.開發嵌入式系統的基礎知識
(1)嵌入式系統的開發過程
需求分析與規格說明;系統設計;構件設計;系統集成與測試。
(2)嵌入式系統的開發特點
使用宿主機-目標機的開發架構;與底層硬件控制進程的關系密切;軟硬件資源受限制;需要固化進程。
(3)嵌入式系統的調試
在線仿真器;片上調試技術-JTAG;駐留監控軟件調試;命令集模擬器。
2.系統開發工具軟件
(1)ADS1.2工具軟件
(2)RVDS
(3)GNU
是一種常用於開發基於Linux操作系統的嵌入式軟件的工具包簡稱。
結語
本篇文章為看完資料書做的大致提綱,梳理知識點與思路,為之后刷題做個鋪墊,然鵝好像仍然沒有記住多少。。。這知識它不進腦子呀。。。