RISC-V架構嵌入式系統原理與應用——CH32V103單片機編程與項目實踐( 簡體 字) | |
作者:裴曉芳 | 類別:1. -> 電腦組織與體系結構 -> 單晶片 -> RISC-V |
出版社:北京航空航天大學出版社 | 3dWoo書號: 54800 詢問書籍請說出此書號! 有庫存 NT售價: 345 元 |
出版日:6/1/2021 | |
頁數:340 | |
光碟數:0 | |
站長推薦: | |
印刷:黑白印刷 | 語系: ( 簡體 字 ) |
ISBN:9787512435070 | 加入購物車 │加到我的最愛 (請先登入會員) |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證, 繁體書的下載亦請直接連絡出版社) | |
第1章 嵌入式系統簡介 1
1.1 嵌入式系統概述 1 1.1.1 嵌入式系統特點 1 1.1.2 嵌入式系統發展趨勢 2 1.2 ARM 架構介紹 3 1.2.1 ARM 的歷史背景 3 1.2.2 ARM 系列簡介 4 1.2.3 ARM 的發展趨勢 6 1.3 RISC-V架構介紹 7 1.3.1 RISC-V架構的歷史背景 7 1.3.2 RISC-V架構的發展趨勢 7 本章小結 7 第2章 RISC-V指令集架構簡介 8 2.1 RISC-V架構設計特點 8 2.2 RISC-V架構特性 8 2.3 RISC-V與其他架構的比較 14 2.4 RISC-V與CH32V103的關係 15 本章小結 15 第3章 RISC-V架構的中斷和異常 16 3.1 RISC-V中斷和異常概述 16 3.1.1 中斷概述 16 3.1.2 異常概述 16 3.2 RISC-V中斷機制 17 3.2.1 中斷類型 17 3.2.2 中斷遮罩 17 3.2.3 中斷級別、優先順序與仲裁 18 3.2.4 進入中斷處理 18 3.2.5 退出中斷處理 18 3.2.6 中斷嵌套 19 3.3 RISC-V異常機制 19 3.3.1 異常遮罩 19 3.3.2 異常的優先順序 20 3.3.3 進入異常處理模式 20 3.3.4 退出異常處理模式 20 3.3.5 異常服務程式 20 3.4 CSR寄存器介紹 21 本章小結 26 第4章 CH32V103硬體基礎 27 4.1 CH32系列單片機外部結構 28 4.1.1 CH32系列單片機命名規則 28 4.1.2 CH32系列單片機引腳功能 29 4.2 CH32V103單片機內部結構 30 4.2.1 CH32V103單片機內部匯流排結構 30 4.2.2 CH32V103單片機內部時鐘系統 32 4.2.3 CH32V103單片機內部重定系統 34 4.2.4 CH32V103單片機內部記憶體結構 35 4.3 CH32V103最小系統設計 36 本章小結 38 第5章 CH32V103軟體發展環境 39 5.1 開發軟體MRS簡介與安裝 39 5.2 軟體環境 42 5.3 創建項目 43 5.4 編譯代碼 45 5.5 下載代碼 51 5.6 調試代碼 52 本章小結 55 第6章 CH32單片機的輸入/輸出介面GPIO 56 6.1 GPIO主要特徵 56 6.2 GPIO功能說明 58 6.2.1 工作模式 58 6.2.2 外部中斷 58 6.2.3 複用功能 58 6.2.4 鎖定機制 59 6.3 GPIO庫函數 59 6.4 GPIO使用流程 63 6.4.1 普通GPIO配置 63 6.4.2 引腳複用功能配置 63 6.5 專案實戰:流水燈 66 6.5.1 硬體設計 66 6.5.2 軟體設計 66 6.5.3 系統調試 68 本章小結 69 第7章 CH32單片機外部中斷EXTI 70 7.1 CH32V103中斷系統組成結構 70 7.1.1 中斷源及中斷向量 70 7.1.2 外部中斷系統結構 73 7.2 中斷控制 74 7.2.1 中斷遮罩控制 74 7.2.2 中斷優先順序控制 75 7.3 中斷控制常用庫函數介紹 76 7.3.1 快速可程式設計中斷控制器庫函數 76 7.3.2 CH32V103外部中斷EXTI庫函數 78 7.4 外部中斷使用流程 82 7.4.1 PFIC配置 82 7.4.2 中斷埠設置 82 7.4.3 中斷處理 83 7.5 專案實戰:按鍵中斷控制LED燈 84 7.5.1 硬體設計 84 7.5.2 軟體設計 84 7.5.3 系統調試 89 本章小結 89 第8章 通用同步非同步收發器USART 90 8.1 串列通信簡介 90 8.1.1 串列通信與並行通信 90 8.1.2 單工通信、半雙工通信與雙工通信 91 8.1.3 同步通信與非同步通信 91 8.1.4 串列非同步通信的資料傳輸格式 91 8.2 USART的結構及工作方式 92 8.2.1 結構框圖 92 8.2.2 工作模式 94 8.2.3 CH32V103串列非同步通信的工作方式 95 8.3 常用庫函數介紹 96 8.4 使用流程 103 8.5 專案實戰:串口資料查詢方式收發 104 8.5.1 硬體設計 104 8.5.2 軟體設計 105 8.5.3 系統調試 107 本章小結 108 第9章 計時器TIM 109 9.1 CH32V103計時器概述 109 9.1.1 計時器類型 109 9.1.2 計數模式 110 9.1.3 主要功能介紹 110 9.2 CH32V103通用計時器的結構 111 9.2.1 輸入時鐘 112 9.2.2 核心計數器 112 9.2.3 比較捕獲通道 112 9.2.4 通用計時器的功能寄存器 113 9.2.5 通用計時器的外部觸發及輸入/輸出通道 113 9.3 CH32V103通用計時器的功能 113 9.3.1 輸入捕獲模式 114 9.3.2 比較輸出模式 114 9.3.3 強制輸出模式 115 9.3.4 PWM 輸入模式 115 9.3.5 PWM 輸出模式 115 9.3.6 單脈衝模式 116 9.3.7 編碼器模式 116 9.3.8 計時器同步模式 117 9.3.9 調試模式 117 9.4 通用計時器常用庫函數 117 9.5 通用計時器使用流程 128 9.5.1 PFIC設置 128 9.5.2 計時器中斷配置 128 9.5.3 計時器中斷處理 129 9.6 專案實戰1:精確定時實驗 129 9.6.1 硬體設計 129 9.6.2 軟體設計 129 9.6.3 系統調試 131 9.7 專案實戰2:脈寬調製 131 9.7.1 硬體設計 131 9.7.2 軟體設計 132 9.7.3 系統調試 133 本章小結 134 第10章 看門狗計時器 135 10.1 CH32V103看門狗概述 135 10.2 獨立看門狗 135 10.2.1 獨立看門狗主要特徵 135 10.2.2 獨立看門狗結構框圖 136 10.3 窗口看門狗 136 10.3.1 視窗看門狗主要特徵 136 10.3.2 視窗看門狗結構框圖 136 10.3.3 視窗看門狗功能說明 137 10.4 常用庫函數介紹 138 10.5 看門狗使用流程 144 10.5.1 獨立看門狗使用流程 144 10.5.2 視窗看門狗使用流程 144 10.6 專案實戰1:獨立看門狗應用 145 10.6.1 硬體設計 145 10.6.2 軟體設計 145 10.6.3 系統調試 148 10.7 專案實戰2:視窗看門狗應用 149 10.7.1 硬體設計 149 10.7.2 軟體設計 149 10.7.3 系統調試 153 本章小結 153 第11章 直接記憶體存取控制DMA 154 11.1 CH32V103的DMA控制器 154 11.2 DMA功能描述 155 11.2.1 仲裁優先順序 155 11.2.2 DMA配置 155 11.2.3 迴圈模式 156 11.2.4 DMA處理狀態 156 11.2.5 可程式設計的資料傳輸總量/資料位元寬/對齊方式 156 11.2.6 DMA請求映射 156 11.3 DMA常用庫函數 158 11.4 DMA使用流程 163 11.4.1 PFIC設置 163 11.4.2 DMA模式及中斷配置 163 11.4.3 DMA中斷服務程式 164 11.5 專案實戰:DMA記憶體到記憶體 164 11.5.1 硬體設計 164 11.5.2 軟體設計 164 11.5.3 系統調試 168 本章小結 168 第12章 串列設備通信介面SPI 169 12.1 SPI匯流排通信簡介 169 12.1.1 SPI匯流排的組成 169 12.1.2 SPI匯流排的功能 170 12.2 SPI結構框圖 170 12.3 SPI功能描述 171 12.3.1 從選擇管理 171 12.3.2 時鐘相位與極性 172 12.3.3 主模式 173 12.3.4 從模式 173 12.3.5 單工模式 173 12.3.6 CRC校驗 174 12.3.7 DMA的SPI通信 174 12.3.8 錯誤狀態 174 12.3.9 中 斷 174 12.4 SPI常用庫函數 175 12.5 SPI使用流程 181 12.6 專案實戰:W25Q16讀寫實驗 182 12.6.1 硬體設計 183 12.6.2 軟體設計 183 12.6.3 系統調試 189 本章小結 189 第13章 內部積體電路匯流排I2C 190 13.1 I2C匯流排通信簡介 190 13.1.1 I2C匯流排特點 190 13.1.2 I2C匯流排術語 191 13.1.3 I2C實體層 191 13.1.4 I2C協議層 192 13.1.5 資料傳輸格式 193 13.2 CH32V103的I2C功能與結構框圖 195 13.3 I2C的通信模式 196 13.3.1 主模式 196 13.3.2 從模式 198 13.3.3 錯 誤 199 13.3.4 時鐘延長 199 13.3.5 SMBus 200 13.3.6 DMA 200 13.3.7 中 斷 201 13.3.8 包錯誤校驗 202 13.4 I2C常用庫函數介紹 202 13.5 I2C使用流程 213 13.6 專案實戰:讀寫EEPROM 晶片AT24C02 213 13.6.1 硬體設計 213 13.6.2 軟體設計 217 13.6.3 系統調試 221 本章小結 222 第14章 即時時鐘RTC 223 14.1 CH32V103的RTC概述 223 14.1.1 CH32V103的RTC 223 14.1.2 UNIX時間戳記 223 14.2 RTC結構框圖 224 14.3 常用庫函數介紹 225 14.4 使用流程 230 14.5 專案實戰:利用RTC實現萬年曆 231 14.5.1 硬體設計 231 14.5.2 軟體設計 232 14.5.3 系統調試 238 本章小結 238 第15章 迴圈冗餘校驗CRC 239 15.1 CRC校驗概述 239 15.2 CH32V103中的CRC計算單元 239 15.2.1 主要特徵 239 15.2.2 功能描述 239 15.2.3 結構框圖 240 15.3 CRC應用 240 15.4 常用庫函數介紹 240 15.5 專案實戰:CRC資料校驗 243 15.5.1 硬體設計 243 15.5.2 軟體設計 243 15.5.3 系統調試 244 本章小結 244 第16章 模/數轉換器ADC 245 16.1 ADC概述 245 16.1.1 ADC分類 245 16.1.2 ADC性能指標 245 16.2 CH32V103的ADC簡介 246 16.3 CH32V103的ADC結構框圖 246 16.4 ADC的功能描述 248 16.4.1 開關、時鐘及通道 248 16.4.2 轉換模式控制 249 16.4.3 中斷和DMA請求 250 16.4.4 其他功能 251 16.5 ADC常用庫函數介紹 253 16.6 ADC使用流程 269 16.7 專案實戰:外部電壓採集 269 16.7.1 硬體設計 269 16.7.2 軟體設計 270 16.7.3 系統調試 272 本章小結 273 第17章 USB全速主機/設備控制器USBHD 274 17.1 USB簡介及協議基礎 274 17.1.1 USB簡介 274 17.1.2 USB的電氣特性 274 17.1.3 USB的插入檢測機制 274 17.1.4 USB的描述符 275 17.1.5 USB包的結構 276 17.1.6 USB的四種傳輸類型 277 17.2 CH32V103的USBHD主要特徵 278 17.3 功能說明 278 17.3.1 USB全域寄存器 278 17.3.2 USB設備控制寄存器 278 17.3.3 USB主機控制寄存器 279 17.4 庫函數介紹 279 17.5 專案實戰1:U盤文件讀寫 282 17.5.1 硬體設計 282 17.5.2 軟體設計 282 17.5.3 系統調試 286 17.6 專案實戰2:實現CDC串口 287 17.6.1 硬體設計 287 17.6.2 軟體設計 287 17.6.3 系統調試 288 本章小結 289 第18章 綜合案例:藍牙加密U盤 290 18.1 藍牙加密U盤介紹 290 18.2 CH573簡介 290 18.2.1 概 述 290 18.2.2 功能說明 291 18.2.3 系統框圖 292 18.2.4 無線通訊介紹 293 18.3 CH569簡介 293 18.3.1 CH569概述 293 18.3.2 功能說明 293 18.3.3 系統框圖 294 18.3.4 SD/EMMC控制器介紹 296 18.3.5 USB 3.0控制器介紹 296 18.4 硬體設計 296 18.5 軟體設計 299 18.6 系統調試 304 18.6.1 CH573程式下載 304 18.6.2 藍牙調試 306 18.6.3 U盤功能測試 308 本章小結 308 第19章 行業應用案例實戰:智慧家居應用 309 19.1 機智雲物聯網開發步驟 309 19.1.1 創建新項目 309 19.1.2 安裝手機App 311 19.1.3 自動生成代碼 313 19.1.4 虛擬裝置調試 314 19.1.5 Wi Fi模組固件燒錄 316 19.1.6 移植機智雲代碼 317 19.1.7 App綁定設備 317 19.2 功能分析 318 19.3 硬體設計 318 19.4 軟體設計 319 19.4.1 主程序功能軟體設計 319 19.4.2 溫濕度檢測軟體設計 319 19.4.3 機智雲控制設計 321 19.4.4 物聯網功能實現 321 19.5 系統調試 322 本章小結 324 附錄A RISC-V虛擬指令集 325 附錄B RISC-V寄存器介紹 327 B1 通用寄存器 327 B2 控制和狀態寄存器 328 附錄C RISC-V指令編碼清單 336 C1 RV32I指令編碼 336 C2 RV32M指令編碼 337 C3 RV32F指令編碼 337 C4 RV32A指令編碼 338 C5 RV32D指令編碼 338 C6 RV32Q指令編碼 339 C7 RV32C指令編碼 339 參考文獻 341 本書以南京沁恒微電子股份有限公司自主研發的基於RISC-V內核的CH32V103單片機基本結構與原理為主線,詳細闡述CH32V103的功能結構與應用系統開發的一般技術。
全書共19章。前3章簡要敘述RISC-V架構的背景知識,第4章和第5章介紹CH32V103單片機的軟硬體開發環境,第6~17章介紹CH32V103單片機的外設模組及應用實例,第18章和第19章是藍牙加密U盤和智慧家居應用兩個綜合實驗案例。 本書可作為高等學校電子資訊工程、通信工程、電腦科學與技術、物聯網工程、自動化等專業的教材,也可作為對RISC-V處理器感興趣或者有應用需求的工程技術人員的參考書。 書中相關常式下載請見前言。 |