登入帳戶  | 訂單查詢  | 購物車/收銀台( 0 ) | 在線留言板  | 付款方式  | 聯絡我們  | 運費計算  | 幫助中心 |  加入書簽
會員登入 新註冊 | 新用戶登記
HOME新書上架暢銷書架好書推介特價區會員書架精選月讀2023年度TOP分類閱讀雜誌 香港/國際用戶
最新/最熱/最齊全的簡體書網 品種:超過100萬種書,正品正价,放心網購,悭钱省心 送貨:速遞 / EMS,時效:出貨後2-3日

2024年03月出版新書

2024年02月出版新書

2024年01月出版新書

2023年12月出版新書

2023年11月出版新書

2023年10月出版新書

2023年09月出版新書

2023年08月出版新書

2023年07月出版新書

2023年06月出版新書

2023年05月出版新書

2023年04月出版新書

2023年03月出版新書

2023年02月出版新書

『簡體書』嵌入式系统基础与实践——基于ARM Cortex-M3内核的STM32微控制器

書城自編碼: 3527526
分類: 簡體書→大陸圖書→教材研究生/本科/专科教材
作者: 刘黎明
國際書號(ISBN): 9787121390890
出版社: 电子工业出版社
出版日期: 2020-09-01

頁數/字數: /
書度/開本: 16开 釘裝: 平装

售價:NT$ 466

我要買

share:

** 我創建的書架 **
未登入.



新書推薦:
郭建龙亚洲三部曲:印度、穿越蒙古国、三千佛塔
《 郭建龙亚洲三部曲:印度、穿越蒙古国、三千佛塔 》

售價:NT$ 1305.0
工作:从平凡到非凡(原书第5版)  [英]理查德·泰普勒 陶尚芸 译
《 工作:从平凡到非凡(原书第5版) [英]理查德·泰普勒 陶尚芸 译 》

售價:NT$ 330.0
带献帝去旅行--历史书写的中古风景(论衡系列)
《 带献帝去旅行--历史书写的中古风景(论衡系列) 》

售價:NT$ 325.0
爱的能力:为什么我们既渴望爱,又害怕走进爱(第13版)
《 爱的能力:为什么我们既渴望爱,又害怕走进爱(第13版) 》

售價:NT$ 391.0
环艺设计手绘 景观 室内马克笔手绘效果图技法精解
《 环艺设计手绘 景观 室内马克笔手绘效果图技法精解 》

售價:NT$ 447.0
明清与李朝时代
《 明清与李朝时代 》

售價:NT$ 381.0
商业人像摄影
《 商业人像摄影 》

售價:NT$ 447.0
抗争表演
《 抗争表演 》

售價:NT$ 347.0

內容簡介:
本书全面介绍了嵌入式系统开发与应用技术,以基于ARM Cortex-M3内核的STM32F103系列微控制器为硬件平台,系统讲述了嵌入式系统开发的基本知识、基本方法以及以STM32F103系列微控制器为核心的嵌入式系统软、硬件开发过程。主要内容包括:嵌入式系统开发基础知识;ARM技术概述;基于ARM的嵌入式系统应用程序设计;基于STM32F103的嵌入式系统应用开发实例;uCOS-III操作系统及应用开发。
目錄
目 录
第1章 嵌入式系统概述 1
1.1 信息技术的发展 1
1.1.1 计算机的诞生 1
1.1.2 通用信息处理 2
1.1.3 人工智能 3
1.2 嵌入式系统 5
1.2.1 嵌入式系统案例分析 6
1.2.2 嵌入式系统概念 9
1.2.3 嵌入式系统与物联网 10
1.3 嵌入式初学者杂谈 11
1.3.1 MCU、MPU、ARM、FPGA、DSP概念 11
1.3.2 MCU开发与ARM-Linux开发的区别 15
1.3.3 开源硬件Arduino和树莓派 16
1.4 嵌入式系统开发流程 17
1.4.1 系统需求分析 17
1.4.2 系统总体设计 18
1.4.3 系统软硬件设计 20
1.4.4 系统软硬件测试 21
习题1 21
第2章 ARM Cortex-M3内核与STM32微控制器 22
2.1 嵌入式系统基础知识 22
2.1.1 冯诺依曼结构与哈佛结构 22
2.1.2 ARM存储模式 24
2.1.3 CISC和RISC 25
2.1.4 流水线技术 27
2.2 ARM 29
2.2.1 ARM介绍 29
2.2.2 ARM体系结构 30
2.3 ARM Cortex-M3内核 33
2.3.1 内核架构 34
2.3.2 寄存器 37
2.3.3 存储结构 39
2.3.4 中断与异常(NVIC) 40
2.4 STM32微控制器结构 42
2.4.1 STM32系统结构 42
2.4.2 STM32总线结构 43
2.4.3 STM32存储结构 44
2.4.4 STM32中断 46
2.4.5 STM32时钟系统 48
习题2 49
第3章 STM32微控制器及开发环境搭建 50
3.1 STM32介绍 50
3.2 STM32微控制器开发模式 55
3.2.1 寄存器开发模式 56
3.2.2 标准外设库开发模式 57
3.2.3 HAL库开发模式 58
3.3 开发平台的搭建 60
3.3.1 嵌入式开发环境 60
3.3.2 集成开发环境Keil 62
3.3.3 下载和安装Packs包 63
3.4 基于标准外设库开发平台搭建 66
3.4.1 STM32标准外设库文件结构 66
3.4.2 基于标准外设库新建工程模板 73
3.5 基于HAL库开发平台的搭建 87
3.5.1 Java运行环境的安装 87
3.5.2 安装STM32CubeMX软件 87
3.5.3 STM32CubeF1库文件结构 89
3.5.4 STM32CubeMX生成的工程架构解析 90
习题3 96
第4章 STM32最小系统与嵌入式C语言 98
4.1 STM32最小系统 98
4.1.1 电源电路 98
4.1.2 时钟电路 100
4.1.3 复位电路 101
4.1.4 调试和下载电路 102
4.2 嵌入式C语言 104
4.2.1 STM32的数据类型 105
4.2.2 const关键字 108
4.2.3 static关键字 108
4.2.4 volatile关键字 110
4.2.5 extern关键字 110
4.2.6 struct结构体 112
4.2.7 enum 113
4.2.8 typedef 114
4.2.9 #define 115
4.2.10 #ifdef、#ifndef、#else、#if条件编译 117
4.2.11 指针 119
4.2.12 回调函数 125
4.3 HAL库文件源代码分析 126
4.3.1 stm32f1xx.h 126
4.3.2 stm32f103xe.h 131
4.3.3 stm32f1xx_hal.c和stm32f1xx_hal.h 135
4.3.4 stm32f1xx_hal_gpio.c和stm32f1xx_hal_gpio.h 138
习题4 140
第5章 通用输入输出 141
5.1 GPIO概述 141
5.2 STM32的GPIO工作原理 142
5.2.1 STM32F103引脚图 143
5.2.2 GPIO内部结构 144
5.2.3 GPIO工作模式 145
5.2.4 GPIO输出速度 148
5.3 GPIO标准外设库接口函数及应用 148
5.3.1 GPIO标准外设库接口函数 148
5.3.2 GPIO标准外设库应用实例 151
5.3.3 基于标准外设库开发的一般流程 154
5.4 GPIO的HAL库接口函数及应用 156
5.4.1 GPIO的HAL库接口函数 156
5.4.2 GPIO的HAL库应用实例 161
5.4.3 基于HAL库开发的一般流程 175
5.5 编程思想之模块化编程 176
习题5 179
第6章 中断 180
6.1 中断的相关概念 180
6.1.1 什么是中断? 180
6.1.2 为什么使用中断? 181
6.1.3 中断处理流程 181
6.2 STM32中断和异常 183
6.2.1 STM32中断和异常向量表 183
6.2.2 STM32中断优先级 188
6.2.3 STM32中断服务程序 190
6.3 STM32外部中断EXTI 191
6.4 EXTI标准外设库接口函数及应用 194
6.4.1 EXTI标准外设库接口函数 194
6.4.2 EXTI标准外设库中断配置步骤 196
6.4.3 EXTI标准外设库应用实例 197
6.5 EXTI的HAL库接口函数及应用 201
6.5.1 EXTI的HAL库接口函数 201
6.5.2 EXTI的HAL库应用实例 202
习题6 208
第7章 串口通信 209
7.1 通信概述 209
7.2 异步串行通信 212
7.2.1 异步串行通信协议 212
7.2.2 异步串行通信接口 213
7.3 STM32的USART模块 215
7.3.1 USART内部结构 215
7.3.2 USART接口 218
7.3.3 USART编程模式 219
7.4 USART标准外设库接口函数及应用 220
7.4.1 USART标准外设库接口函数 220
7.4.2 USART串口应用编程步骤 225
7.4.3 USART标准外设库应用实例 226
7.5 USART的HAL库接口函数及应用 232
7.5.1 UART的HAL库接口函数 232
7.5.2 USART的HAL库应用实例 236
7.5.3 USART应用实例拓展 241
7.6 编程思想之自定义串口通信协议 243
习题7 246
第8章 DMA 247
8.1 DMA基础理论知识 247
8.2 STM32的DMA模块 248
8.2.1 STM32的DMA内部结构 248
8.2.2 DMA优先权 250
8.2.3 DMA中断请求 250
8.3 DMA标准外设库接口函数及应用 252
8.3.1 DMA标准外设库接口函数 252
8.3.2 DMA标准外设库的配置过程 254
8.3.3 DMA标准外设库函数的应用实例 255
8.4 DMA的HAL库接口函数及应用 259
8.4.1 DMA的HAL库接口函数 259
8.4.2 DMA的HAL库应用实例 261
习题8 266
第9章 定时器 267
9.1 STM32定时器 268
9.1.1 STM32通用定时器 269
9.1.2 STM32基本定时器 272
9.1.3 STM32高级定时器 273
9.2 定时器标准外设库接口函数及应用 273
9.2.1 定时器标准外设库接口函数 273
9.2.2 定时器标准外设库配置过程 275
9.2.3 定时器标准外设库应用实例 277
9.3 PWM 279
9.3.1 STM32定时器PWM的工作原理 280
9.3.2 PWM标准外设库输出配置过程 281
9.3.3 PWM标准外设库的应用实例 283
9.4 SysTick定时器 285
9.4.1 SysTick标准外设库函数 285
9.4.2 SysTick定时器的应用实例 287
9.5 定时器HAL库接口函数及应用 289
9.5.1 定时器HAL库接口函数 289
9.5.2 定时器HAL库应用实例 294
9.6 编程思想之状态机设计思想 300
习题9 303
第10章 ADC 304
10.1 ADC基础理论知识 304
10.1.1 AD转换过程 304
10.1.2 AD转换的主要技术参数 305
10.2 STM32的ADC 306
10.2.1 ADC的引脚 306
10.2.2 ADC通道选择 308
10.2.3 ADC中断和DMA请求 309
10.2.4 ADC转换时间 310
10.2.5 ADC数据对齐 310
10.2.6 ADC的转换模式 311
10.2.7 ADC校准 311
10.3 ADC标准外设库接口函数及应用 312
10.3.1 ADC标准外设库接口函数 312
10.3.2 ADC标准外设库配置过程 315
10.3.3 ADC标准外设库的应用实例 317
10.4 ADC的HAL库接口函数及应用 321
10.4.1 ADC的HAL库接口函数 321
10.4.2 ADC的HAL库应用实例 323
习题10 331
第11章 从模块到项目 332
11.1 从模块到项目的开发思路 332
11.1.1 项目需求分析 332
11.1.2 系统总体架构设计 333
11.1.3 系统软硬件设计 335
11.2 项目实践 336
11.2.1 项目需求分析 337
11.2.2 系统总体架构设计 338
11.2.3 系统硬件设计 339
11.2.4 系统软件设计 341
11.3 面向对象的编程思想 343
习题11 344
第12章 嵌入式操作系统 345
12.1 概述 345
12.1.1 嵌入式系统的开发方式 345
12.1.2 计算机系统的分层设计思想 347
12.2 嵌入式操作系统的概念 349
12.2.1 计算机操作系统 349
12.2.2 嵌入式操作系统 351
12.2.3 嵌入式操作系统的分类 351
12.3 嵌入式实时操作系统 352
12.3.1 COS-Ⅲ的任务 352
12.3.2 COS-Ⅲ时钟和中断 361
12.3.3 COS-Ⅲ任务间通信与同步 365
12.4 COS-Ⅲ移植与应用 366
12.4.1 COS-Ⅲ源代码下载 367
12.4.2 COS-Ⅲ移植 369
12.4.3 COS-Ⅲ多任务应用实例 379
习题12 383
参考文献 384
內容試閱
前言
嵌入式系统是一门与行业应用紧密结合的交叉学科,是涉及计算机、电子、通信等技术领域的软硬件综合体。随着微电子技术的飞速发展,嵌入式领域不断变化,各种微处理器架构(如MCS-51架构、MIPS架构、PowerPC架构、ARM架构等)、芯片及开发工具层出不穷,这种百花齐放的局面给嵌入式开发者的学习和开发带来了一定的难度。
嵌入式系统内核架构种类繁多,随着用户对产品功能多元化的追求,对更低功耗、更人性化的人机交互界面以及多任务等需求的增加,传统的基于MCS-51架构的8位51单片机,无论是处理能力还是存储能力都已无法满足此类复杂的应用。ARM公司针对通用MCU(微控制器)领域成功推出了32位ARM Cortex-M系列内核,而各大半导体厂商(如NXP、TI、ST、Atmel等)纷纷基于该内核针对不同的应用领域开发出了各具特色的MCU。采用标准化内核一方面降低了半导体芯片厂商在芯片架构上的研发难度,缩短了产品推向市场的时间;另一方面,由于采用同样的ARM内核,为了实现产品的差异化,使得各大半导体厂商将研发重点放在了外设接口、功耗、存储器资源等方面,针对各自优势应用领域推出系列化的产品。从嵌入式开发者的角度来看,这种方式降低了嵌入式开发人员学习和掌握MCU应用开发的难度。学习者只需要针对通用的内核就某种MCU深入研究,掌握其精髓,就能融会贯通。采用统一的标准化内核设计和生产MCU产品已成为嵌入式MCU发展的趋势。
不仅如此,ARM公司还与各大半导体厂商深度合作,在与芯片相关的开发工具和软件解决方案上形成了一条良好的、完整的生态产业链生态系统,为嵌入式开发人员不仅提供了一系列高效、易用的开发工具(如Keil、IAR等),而且提供了丰富的资源(如OS、固件库、应用例程等),在提高开发效率、降低开发成本、缩短开发周期等关键环节具有明显的优势,如ST公司针对ARM Cortex-M内核开发的STM32系列产品,为STM32的开发提供了各种固件库,如标准外设库、HAL库、LL库等,这些位于嵌入式组成结构中间层的库文件屏蔽了复杂的寄存器开发,使得嵌入式开发人员通过调用API函数的方式就能迅速地搭建系统原型。目前,基于库的开发方式已成为嵌入式系统开发的主流模式。
嵌入式系统知识繁杂,本着从易到难、从单一模块到系统各模块融合的学习方式,本书以基于ARM Cortex-M3内核的32位嵌入式微控制器STM32作为入门引导,对理论进行精简讲授,以动手实践为主,力图使内容紧贴社会需求,技术贴合行业市场发展。
本书定位为初学者入门书籍,只针对简单常用的外设(如GPIO、USART、TIM、ADC等)进行讲解,并给出完整的具体应用范例,力图使初学者能够从整体框架(角度)掌握基本外设的应用开发流程,而非陷入复杂的应用编程细节中,更多编程细节可以随着实际开发实践不断进行扩充与积累。
本书从结构上分为以下4部分。
第一部分为第1章嵌入式系统概述,主要讲述嵌入式系统的概念、嵌入式行业基础知识(如MCU、DSP、FGPA)的区别与联系、嵌入式与物联网和人工智能的联系,以及嵌入式系统的开发流程等。
第二部分由第2章、第3章和第4章组成,主要讲述ARM体系结构与ARM Cortex-M3内核,基于ARM Cortex-M3内核的STM32F103系列微控制器内部架构(如总线结构、存储结构)等,分析STM32微控制器三种开发模式(寄存器开发模式、标准外设库开发模式、HAL库开发模式),详细讲解基于标准外设库和HAL库开发平台的搭建,同时对嵌入式开发中经常用到的嵌入式C语言相关内容进行了补充。
第三部分包含第5~11章。其中,第5~10章按模块对嵌入式开发中常用的外设进行阐述,分别以具体的应用实例按步骤一一讲解,提供了基于标准外设库和HAL库两种开发案例,这部分内容对理论知识进行了精简,重点介绍与工程开发有关的技能实践。第11章简单介绍融合多个模块实现具体项目的思路与方法,紧贴工程实践。
第四部分为第12章嵌入式操作系统,主要介绍嵌入式操作系统的工作原理,以简单的应用实例为嵌入式初学者提供基于嵌入式操作系统的应用程序开发思路。
对STM32初学者来说,可以有选择性地学习本书内容。最后,给嵌入式初学者几点建议,在学习过程中,应重视第一手资料的获取,即从官方网站下载的芯片文档(Reference Manual、Datasheet等),这些文档是很好的参考资料;嵌入式系统是一门技术实践课程,所以动手实践是学习的重要方式;另外,多与同行交流是快速学习的捷径。
由于作者水平有限,书中难免存在错误或不妥之处,恳请读者批评指正。


作者
2020年3月

 

 

書城介紹  | 合作申請 | 索要書目  | 新手入門 | 聯絡方式  | 幫助中心 | 找書說明  | 送貨方式 | 付款方式 香港用户  | 台灣用户 | 海外用户
megBook.com.tw
Copyright (C) 2013 - 2024 (香港)大書城有限公司 All Rights Reserved.