作 者:(英)姚文祥(Joseph Yiu) 著;吳常玉,張淑,吳衛東 譯 定 價:128 齣 版 社:清華大學齣版社 齣版日期:2018年01月01日 頁 數:608 裝 幀:平裝 ISBN:9787302473312 ●譯者序1
●推薦序3
●前言5
●緻謝7
●術語和縮寫9
●本書約定13
●第1章概論
●1.1歡迎來到嵌入式處理器的世界
●1.1.1處理器有什麼作用
●1.1.2處理器、CPU、內核、微控製器及其命名
●1.1.3嵌入式係統的編程
●1.1.4學習微控製器需要瞭解什麼
●1.2理解處理器的類型
●1.2.1處理器為什麼有很多種類
●1.2.2ARM處理器傢族概述
●1.2.3模糊邊界
●1.2.4ARM Cortex-M處理器係列
●1.2.5ARM Cortex-M0和Cortex-M0+處理器簡介
●1.2.6從Cortex-M0處理器到Cortex-M0+處理器
●1.2.7Cortex-M0和Cortex-M0+處理器的應用
●部分目錄
內容簡介
本書是ARM公司微控製器係統級設計專傢Joseph Yiu的作品。本書全麵係統論述Cortex-M0與Cortex-M0+的內核、體係結構、指令集、編譯器、程序設計及軟件移植。全書共23章,近700頁。深度剖析係統模型、指令集以及中斷處理,以利於理解ARM Cortex-M0與Cortex-M0+的工作方式;綜閤運用匯編語言和C語言實現的豐富的ARM Cortex-M0與Cortex-M0+編程案例,有助於快速動手實踐;係統論述軟件的開發流程,並以常用軟件開發工具為例,介紹程序設計的實例及如何定位程序代碼問題和軟件移植等方麵的知識;全麵揭秘從其他架構處理器進行軟件移植的方法,包括ARM7TDMI、ARM Cortex-M3以及8051微控製器移植的實例;深入解析Cortex-M0和Cortex-M0+處理器架構特性的差異(如非特權執行等級、嚮量錶重定等 (英)姚文祥(Joseph Yiu) 著;吳常玉,張淑,吳衛東 譯 姚文祥(Joseph Yiu),英國ARM公司資曆專傢,12年半導體行業從業經曆(在ARM公司工作15年以上)。曾參與多個處理器設計項目,包括ARM Cortex-M3和Cortex-M0,並參與瞭多種ARM IP(知識産權)産品的開發。Joseph Yiu為微控製器係統級設計專傢,並涉獵瞭諸多相關領域,包括ARM Cortex-M係列微控製器軟件開發、微控製器市場以及片上係統設計技術。其他代錶性著作有《The Definitive Guide to the ARM Cortex-M3等
ARM Cortex-M0與Cortex-M0+權威指南(第2版) 一本深入淺齣的嵌入式係統開發實戰寶典 本書專為廣大嵌入式係統工程師、硬件設計者、軟件開發者以及對此領域充滿熱情的學生和愛好者量身打造。如果您正在尋求一本能夠係統性地、深入地理解 ARM Cortex-M0 和 Cortex-M0+ 微控製器核心架構、指令集、編程模型,並能將這些知識轉化為實際應用的設計寶典,那麼《ARM Cortex-M0與Cortex-M0+權威指南(第2版)》將是您的不二之選。 內容概述 本書並非對 ARM Cortex-M0 和 Cortex-M0+ 硬件規格的簡單堆砌,而是以一種循序漸進、理論與實踐相結閤的方式,引導讀者從宏觀架構到微觀細節,逐步掌握這兩個高性能、低功耗微控製器核心的精髓。我們將深入探討它們的內在設計理念,分析其指令集如何實現高效的代碼執行,並詳細闡述在實際嵌入式項目開發中,如何充分發揮其潛能,優化性能,降低功耗,並提升係統的可靠性。 核心架構深度解析:理解心髒的跳動 本書將從 ARMv6-M 架構齣發,為您詳細剖析 Cortex-M0 和 Cortex-M0+ 的核心組成部分。我們將逐一揭示: 流水綫結構: 深入理解指令的獲取、解碼、執行和寫迴過程,以及不同流水綫階段如何協同工作,實現高效的指令處理。 寄存器組: 詳解通用寄存器、程序計數器 (PC)、棧指針 (SP)、連接寄存器 (LR) 和狀態寄存器 (PSR) 等關鍵寄存器的作用與使用,理解它們在指令執行和函數調用中的重要性。 內存模型: 探討 Cortex-M0/M0+ 的內存映射,包括指令存儲器、數據存儲器、外設寄存器等區域的組織方式,以及如何通過內存訪問進行硬件控製。 中斷與異常處理: 這是嵌入式係統設計的靈魂。我們將詳細講解中斷控製器 (NVIC) 的工作原理,包括中斷優先級、中斷嚮量錶、中斷嵌套等概念,並提供實際的代碼示例,指導您如何編寫高效、可靠的中斷服務例程,應對各種外部事件。 低功耗模式: Cortex-M0/M0+ 在低功耗方麵錶現卓越。本書將深入分析各種低功耗模式(如 Sleep, Deep Sleep 等)的實現機製,以及如何通過軟件和硬件手段進一步優化功耗,滿足電池供電設備的嚴苛要求。 Cortex-M0+ 的增強特性: 重點突齣 Cortex-M0+ 相較於 Cortex-M0 在性能和功耗上的改進,例如單周期 I/O 訪問、更優化的指令執行等,並說明這些改進如何影響實際的開發和應用。 指令集精細解讀:讓代碼奔跑起來 ARMv6-M 指令集是 Cortex-M0/M0+ 的核心語言。本書將帶您領略其簡潔而強大的魅力: Thumb-2 指令集: 詳細介紹 Thumb-2 指令集的特點,包括 16 位和 32 位指令混閤使用帶來的代碼密度和執行效率的平衡。 常用指令分析: 逐一講解數據處理指令 (如 ADD, SUB, AND, ORR)、加載/存儲指令 (如 LDR, STR)、分支指令 (如 B, BL) 和協處理器指令等,並結閤實際場景演示它們的用法。 尋址模式: 深入理解寄存器偏移尋址、基址加偏移尋址等多種尋址模式,掌握如何高效地訪問和操作數據。 匯編語言編程實踐: 提供大量的匯編語言示例,幫助讀者理解 C 語言代碼在底層是如何被翻譯成機器指令的,以及如何通過匯編語言實現一些 C 語言難以達到的優化。 C 語言與嵌入式開發:從硬件到軟件的橋梁 本書將重點關注使用 C 語言進行 Cortex-M0/M0+ 開發的最佳實踐: GCC 編譯器與工具鏈: 詳細介紹如何配置和使用 GCC 編譯器,以及常用的調試工具(如 GDB, OpenOCD)來開發、編譯、下載和調試 Cortex-M0/M0+ 程序。 標準外設驅動開發: 針對常見的微控製器外設,如 GPIO、UART、SPI、I2C、ADC、Timers 等,提供詳細的驅動程序編寫教程和示例,幫助讀者快速上手外設控製。 中斷驅動的編程: 強調中斷驅動編程的重要性,講解如何設計高效、可重入的中斷服務例程,以及如何通過狀態機等技術管理復雜的並發任務。 實時操作係統 (RTOS) 的應用: 介紹 RTOS 的基本概念和原理,並以一款輕量級的 RTOS 為例,演示如何在 Cortex-M0/M0+ 上移植和使用 RTOS,實現多任務並發管理,構建復雜的嵌入式係統。 代碼優化技巧: 分享針對 Cortex-M0/M0+ 的代碼優化策略,包括編譯器優化選項、寄存器使用技巧、數據結構選擇以及算法優化等,幫助讀者在資源受限的嵌入式環境中實現最佳性能。 實際項目與案例分析:理論付諸實踐 紙上得來終覺淺,絕知此事要躬行。本書將通過一係列精心設計的實際項目和案例分析,將理論知識轉化為生動的實踐經驗: LED 閃爍與按鍵掃描: 最基礎的嵌入式入門項目,但我們會深入解析其背後的中斷和延時機製。 串行通信實驗: 通過 UART、SPI、I2C 等接口實現與外部設備的通信,例如連接傳感器、顯示屏或與其他微控製器進行數據交換。 ADC 數據采集與處理: 演示如何使用 ADC 采集模擬信號,並進行數據濾波、分析和應用。 定時器應用: 學習如何使用定時器實現精確延時、脈衝生成、PWM 輸齣等功能,例如控製電機速度或舵機角度。 簡單 I/O 控製係統: 設計一個包含多個輸入輸齣端口的控製係統,例如簡單的溫濕度監測設備或智能傢居節點。 低功耗模式下的睡眠喚醒應用: 實際演示如何利用 Cortex-M0/M0+ 的低功耗特性,設計能夠在長時間待機後被喚醒執行任務的應用。 本書的獨特價值 係統性與全麵性: 涵蓋瞭從底層架構到上層應用的所有關鍵環節,為讀者提供瞭一個完整的學習路徑。 深入淺齣的講解: 采用通俗易懂的語言,配以大量的圖示和代碼示例,使復雜的概念易於理解。 注重實踐: 強調動手實踐的重要性,通過豐富的項目和案例分析,幫助讀者將所學知識融會貫通。 權威性與前沿性: 基於 ARM Cortex-M0 和 Cortex-M0+ 的官方文檔和最新的行業實踐,確保內容的準確性和前沿性。 麵嚮實際應用: 旨在培養讀者獨立解決實際嵌入式開發問題的能力,使其能夠勝任各種復雜的項目開發任務。 誰應該閱讀本書? 嵌入式係統工程師: 希望深入理解 Cortex-M0/M0+ 架構,提升開發效率和産品性能的工程師。 硬件設計者: 需要瞭解微控製器核心如何與外部硬件交互,進行係統級設計的硬件工程師。 軟件開發者: 想要將 C 語言知識應用於嵌入式領域,開發高效、可靠的嵌入式軟件的開發者。 學生與研究人員: 學習嵌入式係統原理,進行相關課程學習或科研項目的學生和研究人員。 業餘愛好者: 對嵌入式開發充滿興趣,希望自己動手製作智能設備的項目愛好者。 結語 《ARM Cortex-M0與Cortex-M0+權威指南(第2版)》不僅僅是一本書,更是一扇通往嵌入式係統世界的大門。通過本書的學習,您將掌握駕馭 ARM Cortex-M0 和 Cortex-M0+ 微控製器核心的利器,開啓您的智能硬件創新之旅,在日新月異的物聯網、人工智能等領域,揮灑您的纔華,創造無限可能。
這本書的封麵設計我真的太喜歡瞭,沉穩中帶著科技感,深藍和銀灰的配色,讓人一看就知道是講嵌入式係統開發的專業書籍。書的紙張質感也很棒,印刷清晰,沒有一點錯彆字,這一點對於技術書籍來說太重要瞭。翻開第一頁,一股淡淡的書墨香撲麵而來,瞬間就勾起瞭我當年在實驗室熬夜寫代碼的迴憶。我買這本書主要是想係統地學習一下ARM Cortex-M0和M0+的架構細節,之前看瞭一些零散的資料,總覺得不夠深入。這本書厚度適中,拿在手裏很有分量,封底的條形碼和齣版信息都很規範,感覺是正版書無疑瞭。我特彆期待書中關於指令集、中斷處理和低功耗模式的講解,這幾個方麵是我目前工作和學習中的瓶頸,希望能通過這本書找到突破口。從目錄來看,內容安排得很閤理,循序漸進,從基礎概念講到具體應用,應該能讓我快速上手。