描述
开 本: 16开纸 张: 胶版纸包 装: 平装是否套装: 否国际标准书号ISBN: 9787512416703
内容简介
《嵌入式系统开发与实践——基于STM32F10x系列》从实战角度出发,从基础开始,以设计案例为主线,基于旺宝红龙103型开发板,结合代码分析,详细介绍了基于CortexM3内核的STM32处理器的全部设计过程,包括STM32处理器的基本性能参数、硬件电路设计及针对性很强的整体项目方案的剖析。读者只需要跟着作者的思路,就能完全掌握STM32的开发和设计,可以独立完成项目。
《嵌入式系统开发与实践——基于STM32F10x系列》可以作为工程技术人员进行STM32应用设计与开发的参考书,也可以作为高等院校电子信息、通信工程、自动化、电气控制类等专业学生参加全国大学生电子设计竞赛、进行电子制作、课程设计、毕业设计的教学参考书。
《嵌入式系统开发与实践——基于STM32F10x系列》可以作为工程技术人员进行STM32应用设计与开发的参考书,也可以作为高等院校电子信息、通信工程、自动化、电气控制类等专业学生参加全国大学生电子设计竞赛、进行电子制作、课程设计、毕业设计的教学参考书。
目 录
第1章嵌入式系统概述
1.1嵌入式系统简介
1.2嵌入式系统微处理器
1.3ARM系列嵌入式微处理器
1.4嵌入式操作系统
1.5本章小结
第2章STM32F10x微处理器的组成及编程模式
2.1为什么选择STM32F10x微处理器
2.2STM32F10x开发工具介绍
2.3MDK在STM32F10x处理器上的使用
2.3.1MDK的安装
2.3.2实例:工程的建立和配置
2.3.3使用MDK进行STM32的程序开发
第3章ARM CortexM3基础知识
3.1ARM CortexM3寄存器组
3.2ARM CortexM3指令集
3.3ARM CortexM3的存储器系统
3.4ARM CortexM3使用异常系统
3.5ARM CortexM3调试系统
第4章ARM7应用程序移植到CortexM3处理器
4.1应用简介
4.2系统性质
4.3汇编源程序
4.4C源程序
第5章STM32F10x的开发
5.1选择一款CortexM3产品
5.2CortexM3版本0与版本1的区别
5.3开发工具
5.4库函数
5.5STM32固件库简介
5.6红龙开发板简介
5.7开发板接口简介
第6章通用I/O(GPIO)
6.1概述
6.2可选择的端口功能
6.3相关寄存器
6.4典型硬件电路设计
6.5例程源代码分析
第7章EXTI中断系统理论与实战
7.1STM32中断系统的简介
7.2嵌套向量中断控制器
7.3外部中断/事件控制器
7.4EXTI寄存器描述
7.5典型硬件电路设计
7.6例程源代码分析
第8章RTC实时时钟理论与实战
8.1RTC实时时钟的功能
8.2RTC相关寄存器介绍
8.3典型硬件电路设计
8.4例程源代码分析
第9章通用定时器
9.1概述
9.2时基单元介绍
9.3相关寄存器介绍
9.4典型硬件电路设计
9.5例程源代码分析
第10章定时器外部脉冲计数
10.1TIMx外部脉冲计数功能简介
10.2典型硬件电路设计
10.3例程源码分析
第11章PWM理论与实战
11.1概述
11.2PWM输出的工作原理
11.4PWM输出信号的频率和占空比
11.5相关寄存器
11.6典型硬件电路设计
11.7例程源代码分析
第12章通用同步/异步收发器(USART)
12.1概述
12.2USART操作
12.3USART特殊功能寄存器
12.4典型硬件电路设计
12.5例程源代码分析
第13章RS485通信
13.1概述
13.2SP3485芯片简介
13.3典型硬件电路设计
13.4例程源码分析
第14章DMA实验
14.1概述
14.2DMA的工作原理及结构
14.3相关寄存器简介
14.4典型硬件电路设计
14.5例程源码分析
第15章窗口看门狗
15.1概述
15.2窗口看门狗的工作原理
15.3相关寄存器介绍
15.4典型硬件电路设计
15.5例程源码分析
第16章ADC转换
16.1ADC转换原理
16.2ADC控制寄存器介绍
16.3典型硬件电路设计
16.4例程源代码分析
第17章DAC实验
17.1概述
17.2STM32 DAC的功能
17.3相关寄存器简介
17.4典型硬件电路设计
17.5例程源码分析
第18章I2C总线设备
18.1概述
18.2I2C总线工作原理
18.3相关寄存器
18.4典型硬件电路设计
18.5例程源代码分析
第19章CAN总线
19.1概述
19.2STM32 CAN总线的特点
19.3STM32 bxCAN的功能
19.4相关寄存器简介
19.5典型硬件电路设计
19.6例程源码分析
第20章STM32的系统时钟
20.1STM32的时钟树
20.2系统时钟
20.3相关寄存器
20.4典型硬件电路设计
20.5例程源码分析
第21章FSMC控制器
21.1概述
21.2FSMC功能描述
21.3FSMC外部设备地址映像
21.4FSMC扩展SRAM时序的分析
21.5典型硬件电路设计
21.6例程源码分析
第22章NOR Flash实验
22.1概述
22.2FSMC NOR Flash的配置说明
22.3典型硬件电路设计
22.4例程源码分析
第23章NAND Flash实验
23.1概述
23.2NAND Flash的存储结构
23.3典型硬件电路设计
23.4例程源码分析
第24章TFT彩屏FSMC驱动
24.1概述
24.2TFT彩屏工作原理
24.3TFT的FSMC接口
24.4典型硬件电路设计
24.5例程源码分析
第25章SDIO介绍
25.1概述
25.2SDIO功能介绍
25.3典型硬件电路设计
25.4例程源码分析
第26章SD卡的读取
26.1概述
26.2SD卡的结构
26.3典型硬件电路设计
26.4例程源码分析
第27章SPI通信及FAT32文件读/写
27.1概述
27.2SPI工作原理
27.3FAT32简介
27.4典型硬件电路设计
27.5例程源码分析
第28章USB转串口实验
28.1概述
28.2PL2303的简介
28.3典型硬件电路设计
28.4例程源码分析
第29章USB通信
29.1USB通信原理
29.2STM32的USB电路设计
29.3例程源代码分析
第30章PS2接口
30.1概述
30.2PS2协议
30.3典型硬件电路设计
30.4例程源码分析
第31章NRF24L01无线通信
31.1概述
31.2NRF24L01模块的结构特性
31.3典型硬件电路设计
31.4例程源码分析
第32章红外遥控实验
32.1红外遥控简介
32.2红外遥控的工作原理
32.3典型硬件电路设计
32.4例程源码分析
参考文献
1.1嵌入式系统简介
1.2嵌入式系统微处理器
1.3ARM系列嵌入式微处理器
1.4嵌入式操作系统
1.5本章小结
第2章STM32F10x微处理器的组成及编程模式
2.1为什么选择STM32F10x微处理器
2.2STM32F10x开发工具介绍
2.3MDK在STM32F10x处理器上的使用
2.3.1MDK的安装
2.3.2实例:工程的建立和配置
2.3.3使用MDK进行STM32的程序开发
第3章ARM CortexM3基础知识
3.1ARM CortexM3寄存器组
3.2ARM CortexM3指令集
3.3ARM CortexM3的存储器系统
3.4ARM CortexM3使用异常系统
3.5ARM CortexM3调试系统
第4章ARM7应用程序移植到CortexM3处理器
4.1应用简介
4.2系统性质
4.3汇编源程序
4.4C源程序
第5章STM32F10x的开发
5.1选择一款CortexM3产品
5.2CortexM3版本0与版本1的区别
5.3开发工具
5.4库函数
5.5STM32固件库简介
5.6红龙开发板简介
5.7开发板接口简介
第6章通用I/O(GPIO)
6.1概述
6.2可选择的端口功能
6.3相关寄存器
6.4典型硬件电路设计
6.5例程源代码分析
第7章EXTI中断系统理论与实战
7.1STM32中断系统的简介
7.2嵌套向量中断控制器
7.3外部中断/事件控制器
7.4EXTI寄存器描述
7.5典型硬件电路设计
7.6例程源代码分析
第8章RTC实时时钟理论与实战
8.1RTC实时时钟的功能
8.2RTC相关寄存器介绍
8.3典型硬件电路设计
8.4例程源代码分析
第9章通用定时器
9.1概述
9.2时基单元介绍
9.3相关寄存器介绍
9.4典型硬件电路设计
9.5例程源代码分析
第10章定时器外部脉冲计数
10.1TIMx外部脉冲计数功能简介
10.2典型硬件电路设计
10.3例程源码分析
第11章PWM理论与实战
11.1概述
11.2PWM输出的工作原理
11.4PWM输出信号的频率和占空比
11.5相关寄存器
11.6典型硬件电路设计
11.7例程源代码分析
第12章通用同步/异步收发器(USART)
12.1概述
12.2USART操作
12.3USART特殊功能寄存器
12.4典型硬件电路设计
12.5例程源代码分析
第13章RS485通信
13.1概述
13.2SP3485芯片简介
13.3典型硬件电路设计
13.4例程源码分析
第14章DMA实验
14.1概述
14.2DMA的工作原理及结构
14.3相关寄存器简介
14.4典型硬件电路设计
14.5例程源码分析
第15章窗口看门狗
15.1概述
15.2窗口看门狗的工作原理
15.3相关寄存器介绍
15.4典型硬件电路设计
15.5例程源码分析
第16章ADC转换
16.1ADC转换原理
16.2ADC控制寄存器介绍
16.3典型硬件电路设计
16.4例程源代码分析
第17章DAC实验
17.1概述
17.2STM32 DAC的功能
17.3相关寄存器简介
17.4典型硬件电路设计
17.5例程源码分析
第18章I2C总线设备
18.1概述
18.2I2C总线工作原理
18.3相关寄存器
18.4典型硬件电路设计
18.5例程源代码分析
第19章CAN总线
19.1概述
19.2STM32 CAN总线的特点
19.3STM32 bxCAN的功能
19.4相关寄存器简介
19.5典型硬件电路设计
19.6例程源码分析
第20章STM32的系统时钟
20.1STM32的时钟树
20.2系统时钟
20.3相关寄存器
20.4典型硬件电路设计
20.5例程源码分析
第21章FSMC控制器
21.1概述
21.2FSMC功能描述
21.3FSMC外部设备地址映像
21.4FSMC扩展SRAM时序的分析
21.5典型硬件电路设计
21.6例程源码分析
第22章NOR Flash实验
22.1概述
22.2FSMC NOR Flash的配置说明
22.3典型硬件电路设计
22.4例程源码分析
第23章NAND Flash实验
23.1概述
23.2NAND Flash的存储结构
23.3典型硬件电路设计
23.4例程源码分析
第24章TFT彩屏FSMC驱动
24.1概述
24.2TFT彩屏工作原理
24.3TFT的FSMC接口
24.4典型硬件电路设计
24.5例程源码分析
第25章SDIO介绍
25.1概述
25.2SDIO功能介绍
25.3典型硬件电路设计
25.4例程源码分析
第26章SD卡的读取
26.1概述
26.2SD卡的结构
26.3典型硬件电路设计
26.4例程源码分析
第27章SPI通信及FAT32文件读/写
27.1概述
27.2SPI工作原理
27.3FAT32简介
27.4典型硬件电路设计
27.5例程源码分析
第28章USB转串口实验
28.1概述
28.2PL2303的简介
28.3典型硬件电路设计
28.4例程源码分析
第29章USB通信
29.1USB通信原理
29.2STM32的USB电路设计
29.3例程源代码分析
第30章PS2接口
30.1概述
30.2PS2协议
30.3典型硬件电路设计
30.4例程源码分析
第31章NRF24L01无线通信
31.1概述
31.2NRF24L01模块的结构特性
31.3典型硬件电路设计
31.4例程源码分析
第32章红外遥控实验
32.1红外遥控简介
32.2红外遥控的工作原理
32.3典型硬件电路设计
32.4例程源码分析
参考文献
在线试读
当今电子技术发展迅猛,我们熟悉的单核低主频的处理器发展到现在的多核高主频处理器,发展之快令我们叹为观止。在这样的条件下,如何学习一款通用性比较强、性价比比较高、功能强悍的处理器成为电子专业的学生及工程师值得思考的问题。STM32处理器的出现,以其极高的性价比和丰富的外设给电子爱好者们提供一个新的学习方向。
STM32芯片的版本比较多,但使用方法大同小异,本书以STM32F10x处理器为例,详细讲解STM32的开发设计流程,书中涉及的操作方法对STM32家族的其他处理器都是适用的。
本书从实战角度出发,从基础开始,以设计案例为主线,基于旺宝红龙103型开发板,结合代码分析,详细介绍了基于CortexM3内核的STM32处理器的全部设计过程,包括STM32处理器的基本性能参数、硬件电路设计及针对性很强的整体项目方案的剖析。读者只需要跟着作者的思路,就能完全掌握STM32的开发和设计,可以独立完成项目。
如果读者自己有STM32F103开发板也可以,只需要联系作者索取本书整套开发板的原理图即可方便调试。
全书首先介绍基础知识,然后按照设计STM32处理器的实际流程,详细介绍了如何设计硬件电路、如何根据硬件电路编写程序以实现我们想要的功能。本书结合了作者实际做项目的成功案例,详细列出了硬件电路和全部软件的设计方法和步骤,争取让读者一看即懂,达到理论联系实践的目的。
阅读本书不一定要完全按照章节顺序进行,可以根据实际情况灵活调整。如果读者从未接触过嵌入式系统的设计,建议首先扎实学习基础知识(1~4章),以便对嵌入式处理器有一个初步的了解。然后阅读后面的深入应用(5~30章),这部分内容不需要全部记住,但硬件电路必须分析得很清楚,软件的设计流程以及一些程序的初始化、调用等必须很清楚地把握和理解。后结合项目实践(31、32章),动手设计自己的嵌入式系统项目,这个阶段遇到问题时可以查阅前面的相关内容。
如果读者已经对嵌入式处理器有了一定的基础和把握,想换一种比较新的处理器来应用的话,建议直接读5~30章。如果读者已经对嵌入式处理器STM32有一个很清楚的了解,那么本书可以作为您的中文datasheet,有了这本书,从而方便您的嵌入式系统的开发。
本书由郑亮、郑士海任主编,并负责全书的统稿,袁健男、李丹任副主编。第1~25章由郑亮编写,第26、27章由郑士海编写,28~30章由袁健男编写,31、32章由李丹编写。在此向所有支持和帮助本教材编写的同仁们一并表示感谢。
由于时间仓促,作者水平有限,书中难免有疏漏或不足之处,恳请读者批评指正。
STM32芯片的版本比较多,但使用方法大同小异,本书以STM32F10x处理器为例,详细讲解STM32的开发设计流程,书中涉及的操作方法对STM32家族的其他处理器都是适用的。
本书从实战角度出发,从基础开始,以设计案例为主线,基于旺宝红龙103型开发板,结合代码分析,详细介绍了基于CortexM3内核的STM32处理器的全部设计过程,包括STM32处理器的基本性能参数、硬件电路设计及针对性很强的整体项目方案的剖析。读者只需要跟着作者的思路,就能完全掌握STM32的开发和设计,可以独立完成项目。
如果读者自己有STM32F103开发板也可以,只需要联系作者索取本书整套开发板的原理图即可方便调试。
全书首先介绍基础知识,然后按照设计STM32处理器的实际流程,详细介绍了如何设计硬件电路、如何根据硬件电路编写程序以实现我们想要的功能。本书结合了作者实际做项目的成功案例,详细列出了硬件电路和全部软件的设计方法和步骤,争取让读者一看即懂,达到理论联系实践的目的。
阅读本书不一定要完全按照章节顺序进行,可以根据实际情况灵活调整。如果读者从未接触过嵌入式系统的设计,建议首先扎实学习基础知识(1~4章),以便对嵌入式处理器有一个初步的了解。然后阅读后面的深入应用(5~30章),这部分内容不需要全部记住,但硬件电路必须分析得很清楚,软件的设计流程以及一些程序的初始化、调用等必须很清楚地把握和理解。后结合项目实践(31、32章),动手设计自己的嵌入式系统项目,这个阶段遇到问题时可以查阅前面的相关内容。
如果读者已经对嵌入式处理器有了一定的基础和把握,想换一种比较新的处理器来应用的话,建议直接读5~30章。如果读者已经对嵌入式处理器STM32有一个很清楚的了解,那么本书可以作为您的中文datasheet,有了这本书,从而方便您的嵌入式系统的开发。
本书由郑亮、郑士海任主编,并负责全书的统稿,袁健男、李丹任副主编。第1~25章由郑亮编写,第26、27章由郑士海编写,28~30章由袁健男编写,31、32章由李丹编写。在此向所有支持和帮助本教材编写的同仁们一并表示感谢。
由于时间仓促,作者水平有限,书中难免有疏漏或不足之处,恳请读者批评指正。
评论
还没有评论。