计算机
类型
可以朗读
语音朗读
172千字
字数
2018-05-01
发行日期
展开全部
主编推荐语
微控制器固件开发挑战大增,SDK软件开发套件成主流。
内容简介
随着现代集成电路技术的飞速发展,微控制器系统的复杂度急剧增长。过去仅在处理器系统中出现的图形加速、网络协议栈、多核处理与实时操作系统等技术开始在ARM微控制器上大量的应用。如何可靠和高效的开发微控制器的固件及应用成为嵌入式软件从业人员新的挑战,同时也将是高校电子信息工程方向的教学与实践重点。与在传统单片机上面向寄存器编程方式不同,基于SDK软件开发套件的固件开发利用ARM CMSIS内核访问库和功能强大、统一风格的外设访问API,将开发者彻底从纷繁复杂的数据手册中解放出来。通过整合实时操作系统、协议栈中间件以及多个业界标准的集成开发环境和配置工具,极大的降低了在复杂微控制器上开发的难度和所需的工作量,让开发人员可以更加专注于产品核心业务和差异化的应用开发,也是嵌入式软件开发未来的主流方向。
目录
- 封面
- 版权页
- 物联网与人工智能应用开发丛书指导委员会
- 物联网与人工智能应用开发丛书专家委员会
- 《嵌入式微控制器固件开发与应用》作者
- 物联网与人工智能应用开发丛书
- 序一
- 序二
- 序三
- 序四
- 前言
- 目录
- 第1章 微控制器开发基础
- 1.1 微控制器的发展与趋势
- 1.2 ARM Cortex-M微控制器内核
- 1.2.1 ARM与Cortex处理器的发展
- 1.2.2 Cortex-M家族成员
- 1.2.3 Cortex-M内核技术特点与优势
- 1.3 CMSIS微控制器外设库
- 1.4 Cortex-M集成开发环境和调试工具
- 1.4.1 集成开发环境
- 1.4.2 调试工具
- 1.5 恩智浦LPC5411X系列低功耗通用微控制器
- 1.5.1 家族成员与功能概要
- 1.5.2 系统框图与内存映射
- 1.5.3 评估板与扩展板介绍
- 1.6 小结
- 第2章 MCUXpresso软件与工具开发套件
- 2.1 MCUXpresso IDE集成开发环境
- 2.1.1 MCUXpresso IDE的主要特性
- 2.1.2 安装MCUXpresso IDE
- 2.1.3 初识MCUXpresso IDE
- 2.2 MCUXpresso Config Tools配置工具
- 2.2.1 SDK生成器工具
- 2.2.2 Pins Tool引脚分配工具
- 2.2.3 Clocks Tool时钟配置工具
- 2.3 MCUXpresso SDK软件开发套件
- 2.3.1 架构分析
- 2.3.2 文件目录
- 2.3.3 外设驱动命名与依赖
- 2.3.4 外设驱动API
- 2.4 实例:Hello world
- 2.5 小结
- 第3章 微控制器的启动过程
- 3.1 上电启动后硬件自动执行的操作序列
- 3.2 从复位中断向量进入C程序的世界
- 3.2.1 复位中断函数概述
- 3.2.2 详解LPC54114的启动代码
- 3.3 LPC54114的BootLoader
- 3.3.1 BootLoader概述
- 3.3.2 BootLoader在LPC54114上的应用
- 3.4 小结
- 第4章 时钟子系统与管理
- 4.1 LPC54114的片上时钟系统
- 4.1.1 时钟源
- 4.1.2 上电后默认情况下的时钟系统
- 4.1.3 使用PLL获取更高频率的时钟信号
- 4.2 MCUXpresso SDK时钟管理API
- 4.2.1 常用时钟管理API
- 4.2.2 MCUXpresso SDK应用程序中配置时钟的典型框架
- 4.3 MCUXpresso时钟配置工具Clocks Tool简介
- 4.3.1 概述
- 4.3.2 在Clocks Tool中创建LPC54114Xpresso板配置工程
- 4.4 实例:使用PLL倍频输出产生系统时钟
- 4.5 小结
- 第5章 IO子系统与中断
- 5.1 IO子系统的相关硬件模块
- 5.1.1 IOCON IO引脚配置模块
- 5.1.2 GPIO通用输入/输出模块
- 5.1.3 PINT 引脚中断模块
- 5.1.4 INPUT MUX 输入复用器
- 5.2 MCUXpresso SDK中的GPIO与PINT驱动
- 5.2.1 GPIO驱动API
- 5.2.2 PINT驱动API
- 5.3 MCUXpresso时钟配置工具Pins Tool应用
- 5.3.1 概述
- 5.3.2 在MCUXpresso SDK工程中用Pins Tool分配引脚功能
- 5.4 实例:通过按键控制LED
- 5.5 小结
- 第6章 DMA原理与应用
- 6.1 DMA控制器概述
- 6.2 DMA特性和内部框图
- 6.2.1 LPC5411x DMA特性
- 6.2.2 DMA内部框图
- 6.3 DMA 外部引脚描述
- 6.4 DMA的几个概念和功能说明
- 6.4.1 DMA的工作原理
- 6.4.2 DMA请求和触发
- 6.4.3 DMA传输描述符
- 6.4.4 DMA传输模式
- 6.4.5 DMA低功耗模式
- 6.5 DMA模块的SDK驱动介绍
- 6.6 实例:从DMA Memory到Memory的数据传输
- 6.6.1 环境准备
- 6.6.2 代码分析
- 6.6.3 实验现象
- 6.7 小结
- 第7章 ADC数模转换器原理与应用
- 7.1 逐次逼近型ADC工作原理和过程
- 7.2 ADC数模转换器常用性能指标
- 7.3 ADC特性和内部框图
- 7.3.1 ADC特性
- 7.3.2 ADC内部框图
- 7.4 ADC外部引脚描述
- 7.5 ADC功能说明
- 7.5.1 ADC时钟
- 7.5.2 转换序列
- 7.5.3 触发转换
- 7.5.4 转换模式
- 7.5.5 转换输出
- 7.5.6 偏移误差校准
- 7.6 ADC模块的SDK驱动介绍
- 7.7 实例:使用ADC测量内部温度
- 7.7.1 环境准备
- 7.7.2 代码分析
- 7.7.3 现象描述
- 7.8 小结
- 第8章 USART异步串行通信接口原理与应用
- 8.1 USART控制器概述
- 8.2 USART模块特性和内部框图
- 8.2.1 LPC5411x USART特性
- 8.2.2 LPC5411x USART内部框图
- 8.3 Flexcomm接口概述
- 8.3.1 Flexcomm功能说明
- 8.3.2 Flexcomm内部框图
- 8.4 USART外部引脚描述
- 8.4.1 USART模块引脚功能定义
- 8.4.2 USART引脚配置说明
- 8.5 USART基本功能说明
- 8.5.1 USART模块初始化
- 8.5.2 USART的时钟源与波特率配置
- 8.5.3 收发控制
- 8.5.4 低功耗模式下USART的唤醒
- 8.6 USART模块的SDK驱动介绍
- 8.7 USART数据收发
- 8.7.1 环境准备
- 8.7.2 代码分析
- 8.7.3 现象描述
- 8.8 小结
- 第9章 SPI同步串行通信接口原理与应用
- 9.1 SPI控制器概述
- 9.2 SPI特性和内部框图
- 9.2.1 LPC5411x SPI特性
- 9.2.2 SPI内部框图
- 9.3 SPI 外部引脚描述
- 9.4 SPI功能说明
- 9.4.1 SPI工作模式
- 9.4.2 SPI时钟源和数据传输速率
- 9.4.3 超出16位的数据传输
- 9.4.4 低功耗模式下SPI唤醒
- 9.4.5 SPI数据帧延迟
- 9.5 SPI模块的SDK驱动介绍
- 9.6 实例:SPI读/写外部Flash
- 9.6.1 实验目的和环境准备
- 9.6.2 代码分析
- 9.6.3 实验现象
- 9.7 小结
- 第10章 I2C总线接口与应用
- 10.1 I2C控制器概述
- 10.2 I2C特性和内部框图
- 10.2.1 LPC5411x I2C特性
- 10.2.2 I2C内部框图
- 10.3 I2C外部引脚描述
- 10.4 I2C功能说明
- 10.4.1 I2C协议简介
- 10.4.2 I2C总线速率和时钟延伸
- 10.4.3 I2C的寻址方式和低功耗唤醒
- 10.4.4 I2C的死锁和超时机制
- 10.5 I2C模块的SDK驱动
- 10.6 实例:I2C中断方式实现数据收发
- 10.6.1 实验目的和硬件电路设计
- 10.6.2 实例软件设计
- 10.6.3 main文件
- 10.6.4 现象描述
- 10.7 小结
- 第11章 I2S总线协议与应用
- 11.1 I2S总线协议简介
- 11.2 I2S特性和内部框图
- 11.2.1 I2S特性
- 11.2.2 I2S内部框图
- 11.3 I2S外部引脚描述
- 11.4 I2S功能说明
- 11.4.1 I2S时钟
- 11.4.2 数据速率
- 11.4.3 数据帧格式和模式
- 11.4.4 FIFO缓冲区的使用方法
- 11.5 I2S模块的SDK驱动介绍
- 11.6 实例:使用I2S中断方式传输播放音频
- 11.6.1 环境准备
- 11.6.2 代码分析
- 11.6.3 现象描述
- 11.7 小结
- 第12章 FlashIAP在应用编程模块的应用
- 12.1 IAP在应用编程的通用基础知识
- 12.2 IAP命令执行详解
- 12.3 IAP模块的SDK驱动介绍
- 12.4 使用IAP驱动读/写内部Flash
- 12.4.1 环境准备
- 12.4.2 代码分析
- 12.4.3 现象描述
- 12.5 小结
- 第13章 FreeRTOS实时多任务操作系统原理与应用
- 13.1 嵌入式操作系统概述
- 13.1.1 裸跑与使用操作系统的对比
- 13.1.2 嵌入式操作系统基本概念
- 13.2 FreeRTOS实时多任务操作系统介绍
- 13.2.1 FreeRTOS实时多任务操作系统特色
- 13.2.2 FreeRTOS基本功能解读
- 13.2.3 FreeRTOS的软件授权
- 13.3 FreeRTOS的底层结构与ARM平台的移植
- 13.3.1 FreeRTOS源码结构分析
- 13.3.2 内核配置头文件
- 13.3.3 移植宏定义文件
- 13.3.4 ARM平台的移植实现
- 13.3.5 tick定时器——fsl_tickless相关内容说明
- 13.3.6 portasm.s汇编
- 13.4 MCUXpresso SDK中基于FreeRTOS的外设驱动
- 13.4.1 具有操作系统功能的驱动介绍
- 13.4.2 FreeRTOS下的USART发送与接收
- 13.5 LPC5411x SDK中的FreeRTOS例程分析
- 13.5.1 环境准备
- 13.5.2 Main函数分析
- 13.5.3 FreeRTOS的多任务代码分析
- 13.5.4 操作系统环境的调试与实验说明
- 13.6 小结
- 第14章 异构双核处理器框架与应用
- 14.1 多处理器计算
- 14.2 异构双核
- 14.2.1 双核总线架构
- 14.2.2 内核管理
- 14.2.3 内核间通信
- 14.2.4 双核程序布局
- 14.3 双核应用分析
- 14.3.1 基于双核的安全启动
- 14.3.2 运用双核进行显示后处理
- 14.4 多处理器系统服务框架
- 14.4.1 多核管理模块(mcmgr)
- 14.4.2 轻型远端处理器通信框架(RPMsg-Lite)
- 14.4.3 嵌入式远程过程调用(eRPC)
- 14.5 双核应用开发
- 14.5.1 工程配置
- 14.5.2 预定义宏
- 14.5.3 双核启动
- 14.6 实例:双核远程过程调用
- 14.6.1 环境准备
- 14.6.2 代码分析
- 14.6.3 实验结果
- 14.7 小结
- 第15章 微控制器低功耗设计
- 15.1 系统能耗分析
- 15.1.1 动态功耗分析
- 15.1.2 动态功耗指标
- 15.1.3 静态功耗分析
- 15.1.4 静态功耗指标
- 15.1.5 休眠和唤醒
- 15.1.6 系统能耗估算
- 15.2 微控制器低功耗特性
- 15.2.1 系统模块电压调节
- 15.2.2 数字外设时钟控制
- 15.3 微控制器低功耗应用设计方法
- 15.3.1 硬件设计
- 15.3.2 软件设计
- 15.4 MCUXPRESSO SDK功耗管理库
- 15.5 小结
- 第16章 基于LPC54114和SDK的可穿戴设备原型设计
- 16.1 硬件介绍
- 16.1.1 硬件框图
- 16.1.2 主要元器件
- 16.2 固件与应用设计
- 16.2.1 软件架构
- 16.2.2 主流程
- 16.2.3 传感器模块
- 16.2.4 人机交互模块
- 16.2.5 用户输入模块
- 16.3 功能演示
- 16.4 小结
- 参考文献
- 反侵权盗版声明
展开全部
出版方
电子工业出版社
电子工业出版社成立于1982年10月,是国务院独资、工信部直属的中央级科技与教育出版社,是专业的信息技术知识集成和服务提供商。经过三十多年的建设与发展,已成为一家以科技和教育出版、期刊、网络、行业支撑服务、数字出版、软件研发、软科学研究、职业培训和教育为核心业务的现代知识服务集团。出版物内容涵盖了电子信息技术的各个分支及工业技术、经济管理、科普与少儿、社科人文等领域,综合出版能力位居全国出版行业前列。