從零開始設計你的智能小車

胡青

  • 出版商: 清華大學
  • 出版日期: 2022-05-01
  • 定價: $354
  • 售價: 8.5$301
  • 語言: 簡體中文
  • ISBN: 7302598932
  • ISBN-13: 9787302598930
  • 下單後立即進貨 (約4週~6週)

  • 從零開始設計你的智能小車-preview-1
  • 從零開始設計你的智能小車-preview-2
  • 從零開始設計你的智能小車-preview-3
從零開始設計你的智能小車-preview-1

商品描述

《從零開始設計你的智能小車》從“實戰”出發,以STM32F103VET6單片機為對象,以C語言為開發語言,詳細講解如何在CMSIS固件庫基礎上完成嵌入式應用系統的開發。通過本書的學習,讀者能夠初步瞭解嵌入式系統設計中的硬件設計和軟件設計,掌握硬件和軟件調試技巧,具備設計、規劃和實現一個簡單嵌入式應用系統的能力。 全書以“智能小車設計”作為主線,內容分為基礎篇、提高篇和實踐篇三個層次。“基礎篇”介紹嵌入式開發的基本常識、系統架構等。“提高篇”以小車功能需求為目標來組織各章節內容,每一章實現智能小車的一個功能。“實踐篇”從應用系統設計規劃的角度出發,通過兩個不同的“智能小車”系統設計實例,從功能設計規劃開始,經過硬件需求分析與選型、硬件設計與供電設計,到軟件設計、系統測試,詳細講解從設計規劃到開發實現的完整過程。側重分析設計思路、設計方法,以及項目的組織架構,培養作為系統開發工程師而應該具備的“全局觀”和從系統層面分析、分解系統功能的能力。 本書可作為高等院校自動化、電氣工程等相關專業的教材,也可作為嵌入式開發愛好者的入門書籍。

目錄大綱

目錄

第1章嵌入式系統概述

1.1單片機概述

1.1.1單片機的定義

1.1.2單片機與PC的對比

1.2嵌入式系統

1.3ARM是什麽

1.3.1ARM公司簡介

1.3.2ARM架構、ARM內核與ARM單片機

1.3.3ARM CortexM3內核概述

第2章STM32F103單片機概述

2.1單片機的手冊

2.2STM32F103單片機體系結構概述

2.2.1ARM CortexM3內核

2.2.2STM32F103單片機系統架構

2.3什麽是CMSIS

2.4STM32固件庫

基礎篇

第3章嵌入式程序設計中的C語言

3.1整型

3.1.1整型的位寬

3.1.2訪問硬件模塊的寄存器

3.2volatile關鍵字

3.2.1C語言編譯器的優化功能

3.2.2用volatile關鍵字避免優化

3.3結構體數據類型

3.3.1struct關鍵字

3.3.2訪問單片機片上外設寄存器

3.4枚舉數據類型

3.5static關鍵字

3.5.1靜態全局變量

3.5.2靜態局部變量

3.5.3靜態函數

3.6宏定義

3.7條件編譯與頭文件

3.7.1條件編譯指令

3.7.2頭文件

3.8變量在哪裡

3.8.1堆、棧和靜態區

3.8.2單片機中變量的存儲空間分配

第4章第一個STM32 項目

4.1開發環境與所需硬件

4.1.1搭建開發環境

4.1.2所需硬件

4.1.3所需工具

4.2創建第一個項目

4.3下載與調試程序

4.3.1安裝模擬器驅動

4.3.2在Keil軟件中配置模擬器

4.3.3編譯下載程序

4.3.4Debug調試程序

第5章深入瞭解項目模板

5.1啟動文件的作用

5.1.1定義棧和堆

5.1.2定義中斷向量表

5.1.3定義復位中斷子程序

5.2單片機的時鐘初始化

5.3stm32f10x.h頭文件的作用

5.4項目中的文件管理

5.4.1CMSIS固件庫文件

5.4.2項目中的系統文件

5.4.3項目中的用戶文件

第6章按鍵與小燈的控制——GPIO模塊

6.1GPIO的輸入/輸出模式

6.1.1小燈與GPIO輸出模式

6.1.2按鍵與GPIO輸入模式

6.2GPIO的編程操作 

6.2.1GPIO寄存器

6.2.2GPIO庫函數

6.2.3GPIO的按位操作——位帶別名區

6.3應用實例——8段LED顯示控制

6.3.1一位8段LED顯示控制

6.3.2多位8段LED顯示控制

6.4IO引腳的電氣特性

6.4.1TTL電平

6.4.2CMOS電平

6.4.3IO引腳的電氣特性

6.4.4IO引腳控制外設

6.5IO引腳的復用功能AFIO

6.5.1IO引腳的復用功能

6.5.2AFIO重映射功能的編程操作

6.5.3調試埠的重映射功能

第7章秒錶的實現——基本定時器

7.1定時器原理概述

7.2基本定時器的工作原理

7.2.1基本定時器的結構

7.2.2基本定時器的時鐘源

7.2.3基本定時器的計數模式

7.2.4定時時間的計算

7.2.5ARR寄存器的預裝載功能

7.3基本定時器的編程操作

7.3.1TIM6、TIM7的相關寄存器

7.3.2基本定時器的相關庫函數

7.4秒錶的設計與實現

7.4.1秒錶功能分析

7.4.2硬件選型

7.4.3硬件設計

7.4.4軟件設計

第8章中斷及中斷管理器NVIC

8.1中斷基本概念

8.1.1中斷的定義

8.1.2中斷向量表

8.1.3中斷優先級與中斷嵌套

8.2STM32單片機的中斷管理

8.2.1中斷源與中斷向量表

8.2.2內核中開放/禁止中斷

8.2.3中斷控制器NVIC

8.3中斷處理過程及相關接口庫

8.3.1片上硬件中斷處理過程

8.3.2中斷處理庫函數總結

8.4應用實例——中斷方式實現秒錶計時

8.4.1定時器的更新中斷

8.4.2中斷機制實現計時

第9章按鍵觸發中斷——EXTI模塊

9.1外部中斷/事件模塊EXTI

9.1.1EXTI功能

9.1.2EXTI寄存器

9.1.3EXTI的相關庫函數

9.1.4EXTI初始化步驟及中斷響應過程

9.2設計實例——中斷方式處理秒錶按鍵

9.2.1分段計時功能

9.2.2硬件設計

9.2.3軟件設計

提高篇

第10章讓小車跑起來——PWM調速

10.1通用定時器的基本定時功能

10.1.1通用定時器概述

10.1.2通用定時器的時鐘源

10.1.3通用定時器的計數模式

10.1.4通用定時器的從模式

10.1.5相關寄存器

10.1.6相關庫函數

10.1.7設計實例——檢測信號頻率

10.2通用定時器的PWM輸出模式

10.2.1PWM信號

10.2.2捕獲比較通道

10.2.3PWM輸出模式

10.2.4相關寄存器

10.2.5相關庫函數

10.3電動機驅動芯片L298N

10.3.1直流電動機驅動模塊L298N

10.3.2單片機控制L298N

10.4應用實例——小車設計

10.4.1小車的硬件設計

10.4.2小車的軟件設計

實踐篇

第11章避障小車——超聲波測距

11.1超聲波測距原理

11.1.1基本原理

11.1.2HCSRF05測距模塊

11.1.3單片機控制超聲波測距模塊

11.2通用定時器的輸入捕獲功能

11.2.1輸入捕獲的基本原理

11.2.2相關寄存器

11.2.3相關庫函數

11.2.4應用實例——捕獲方式實現測距

11.3嘀嗒定時器實現定時測距

11.3.1嘀嗒定時器

11.3.2嘀嗒定時器的寄存器

11.3.3相關庫函數

11.3.4嘀嗒定時器實現定時測距

第12章遙控小車——藍牙遙控

12.1藍牙技術

12.1.1發展歷史

12.1.2基本特性

12.2HC05藍牙模塊

12.2.1功能概述

12.2.2工作原理

12.2.3AT命令

12.2.4PC串口配置藍牙模塊

12.3UART串口通信

12.3.1串口通信基本概念

12.3.2UART模塊概述

12.3.3相關寄存器

12.3.4相關庫函數

12.4應用實例

12.4.1單片機與PC之間的串口通信

12.4.2單片機與手機之間的藍牙通信

第13章智能小車設計方案分析

13.1避障小車設計方案

13.1.1小車功能規劃

13.1.2硬件選型

13.1.3硬件設計分析

13.1.4軟件設計分析

13.2遙控小車設計方案

13.2.1小車功能規劃

13.2.2硬件需求分析

13.2.3硬件設計分析

13.2.4軟件設計分析

習題

參考文獻