编辑推荐
《精通STM32F4(库函数版)》是作者继《例说STM32》《原子教你学STM32》等热销书之后的又一力作,结合大量的开发实例和技巧,讲解由浅入深,循序渐进,适合各个层次的读者阅读;同时,配套资料丰富,读者可以实时和作者互动交流,方便学校、提高。
内容简介
《精通STM32F4(库函数版)》由浅入深,带领读者学习STM32F407的各个功能。本书总共分为3篇:第一篇为硬件篇,主要介绍本书的实验平台;第二篇为软件篇,主要介绍STM32F4常用开发软件的使用以及一些下载调试的技巧,并详细介绍几个常用的系统文件(程序);第三篇为实战篇,通过41个实例带领读者一步步深入了解STM32F4。本书可配套ALIENTEK 探索者STM32F4开发板学习使用,配套资料里面包含详细原理图以及所有实例的完整代码。这些代码都有详细的注释,并且所有源码都已经经过严格测试,不会有任何警告和错误。另外,源码有生成好的hex文件,读者只需要通过串口/仿真器下载到开发板即可看到实验现象,亲自体验实验过程。
本书不仅非常适合广大学生和电子爱好者学习STM32F4,其大量的实验以及详细的解说也是公司产品开发的不二参考。
作者简介
刘军,网名“正点原子”,实践经验丰富,活跃于EDN、eeworld等各大论坛;张洋,ALIENTEK工作室成员,实践经验丰富。共同出版过《例说STM32》《原子教你学STM32》等“正点原子教你学嵌入式系列丛书”,受到读者高度认可。
目录
第1篇硬件篇
第1章实验平台简介
1.1ALIENTEK探索者STM32F4开发板资源初探
1.2ALIENTEK探索者STM32F4开发板资源说明
1.2.1硬件资源说明
1.2.2软件资源说明
第2章实验平台硬件资源详解
2.1开发板原理图详解
2.2开发板使用注意事项
2.3STM32F4学习方法
第2篇软件篇
第3章MDK5软件入门
3.1STM32官方标准固件库简介
3.1.1库开发与寄存器开发的关系
3.1.2STM32固件库与CMSIS标准讲解
3.1.3STM32F4官方库包介绍
3.2MDK5简介
3.3新建基于STM32F40x固件库的MDK5工程模板
3.3.1MDK5安装步骤
3.3.2新建工程模板
3.4程序下载与调试
3.4.1STM32串口程序下载
3.4.2JLINK下载与调试程序
第4章STM32F4开发基础知识入门
4.1MDK下C语言基础复习
4.2STM32F4总线架构
4.3STM32F4时钟系统
4.3.1STM32F4时钟树概述
4.3.2STM32F4时钟初始化配置
4.3.3STM32F4时钟使能和配置
4.4I/O引脚复用器和映射
4.5STM32 NVIC中断优先级管理
4.6MDK中寄存器地址名称映射分析
4.7MDK固件库快速组织代码技巧
第5章SYSTEM文件夹介绍
5.1delay文件夹代码介绍
5.2sys文件夹代码介绍
5.2.1I/O口的位操作实现
5.3usart文件夹介绍
5.3.1printf函数支持
5.3.2uart_init函数
5.3.3USART1_IRQHandler函数
目录精通STM32F4(库函数版本)第3篇实战篇
第6章跑马灯实验
第7章按键输入实验
第8章串口通信实验
第9章外部中断实验
第10章独立看门狗(IWDG)实验
第11章窗口看门狗(WWDG)实验
第12章定时器中断实验
第13章PWM输出实验
第14章输入捕获实验
第15章TFTLCD显示实验
第16章USMART调试组件实验
第17章RTC实时时钟实验
第18章待机唤醒实验
第19章ADC实验
第20章DAC实验
第21章DMA实验
第22章I2C实验
第23章SPI 实验
第24章RS485 实验
第25章CAN通信实验
第26章 触摸屏实验
第27章6轴传感器MPU6050实验
第28章FLASH模拟EEPROM实验
第29章摄像头实验
第30章外部SRAM实验
第31章内存管理实验
第32章SD卡实验
第33章FATFS实验
第34章汉字显示实验
第35章图片显示实验
第36章音乐播放器实验
第37章FPU测试(Julia分形)实验
第38章DSP测试实验
第39章串口IAP实验
第40章USB读卡器(Slave)实验
第41章USB U盘(Host)实验
第42章USB鼠标、键盘(Host)实验
第43章网络通信实验
第44章μC/OSII实验1--任务调度
第45章μC/OSII实验2--信号量和邮箱
第46章μC/OSII实验3--消息队列、信号量集和软件定时器
参考文献
前言/序言
作为CortexM3市场的最大占有者,ST公司在2011年推出了基于CortexM4内核的STM32F4系列产品。相比STM32F1/F2等CortexM3产品,STM32F4最大的优势就是新增了硬件FPU单元以及DSP指令,同时,STM32F4的主频也提高了很多,达到168 MHz(可获得210 DMIPS的处理能力),这使得STM32F4尤其适用于需要浮点运算或DSP处理的应用,也被称为DSC,具有非常广泛的应用前景。 STM32F4相对于STM32F1,主要优势如下:① 更先进的内核。STM32F4采用CortexM4内核,带FPU和DSP指令集,而STM32F1采用的是CortexM3内核,不带FPU和DSP指令集。② 更多的资源。STM32F4拥有192 KB的片内SRAM,带摄像头接口(DCMI)、加密处理器(CRYP)、USB高速OTG、真随机数发生器、OTP存储器等。③ 增强的外设功能。对于相同的外设部分,STM32F4具有更快的模/数转换速度、更低的ADC/DAC工作电压、32位定时器、带日历功能的实时时钟(RTC)、复用功能大大增强的I/O、4 KB的电池备份SRAM以及更快的USART和SPI通信速度。④ 更高的性能。STM32F4最高运行频率可达168 MHz,而STM32F1只能到72 MHz;STM32F4拥有ART自适应实时加速器,可以达到相当于FLASH零等待周期的性能,STM32F1则需要等待周期;STM32F4的FSMC采用32位多重AHB总线矩阵,相比STM32F1总线访问速度明显提高。⑤ 更低的功耗。STM32F40x的功耗为238 μA/MHz,其中,低功耗版本的STM32F401更是低到140 μA/MHz,而STM32F1则高达421 μA/MHz。STM32F4家族目前拥有STM32F40x、STM32F41x、STM32F42x和STM32F43x等几个系列、数十个产品型号,不同型号之间软件和引脚具有良好的兼容性,可方便客户迅速升级产品。其中,STM32F42x/43x系列带了LCD控制器和SDRAM接口,对于想要驱动大屏或需要大内存的读者来说,是个不错的选择。目前,STM32F4这些芯片型号都已量产,可以方便地购买到。不过性价比最高的是STM32F407。本书将以STM32F407为例来讲解STM32F4的学习。
内容特点
学习STM32F4有几份资料经常用到:《STM32F4xx中文参考手册》、《STM32F3与F4系列CortexM4内核编程手册》英文版、《CortexM3与M4权威指南》英文版。其中,最常用的是《STM32F4xx中文参考手册》,该文档是ST官方针对STM32的一份通用参考资料,内容翔实,但是没有实例,也没有对CortexM4构架进行太多介绍,读者只能根据自己对书本的理解来编写相关代码,该文档目前已经有中文版本,极大地方便了读者的学习。《STM32F3与F4系列CortexM4内核编程手册》文档则重点介绍了CortexM4内核的汇编指令及其使用、内核相关寄存器(比如SCB、NVIC、SYSTICK等寄存器),是《STM32F4xx中文参考手册》的重要补充。很多在《STM32F4xx中文参考手册》无法找到的内容,都可以在这里找到答案,不过目前该文档没有中文版本,只有英文版。最后,《CortexM3与M4权威指南》文档详细介绍了CortexM3和CortexM4内核的体系架构,并配有简单实例。对于想深入了解CortexM4内核的读者,此文档是非常好的参考资料。不过该文档目前只有英文版。不过由于CortexM3和CortexM4很多地方都是通用的,所以有的时候可以参考《CortexM3权威指南(中文版)》文档。本书将结合以上3份资料的优点,从库函数级别出发,深入浅出,向读者展示STM32F4的各种功能。总共配有41个实例,基本上每个实例均配有软硬件设计,在介绍完软硬件之后马上附上实例代码,并带有详细注释及说明,让读者快速理解代码。这些实例涵盖了STM32F4的绝大部分内部资源,并且提供很多实用级别的程序,如内存管理、文件系统、图片解码、IAP等。所有实例在MDK5.11A编译器下编译通过,读者只须下载程序到ALIENTEK探索者STM32开发板即可验证实验。
读者对象
不管你是一个STM32初学者,还是一个老手,本书都非常适合。尤其对于初学者,本书将手把手地教你如何使用MDK,包括新建工程、编译、仿真、下载调试等一系列步骤,让你轻松上手。配套资料本书的实验平台是ALIENTEK 探索者STM32开发板,有这款开发板的朋友可直接拿本书配套的例程在开发板上运行、验证。而没有这款开发板的朋友,可以上淘宝购买。当然,如果已有了一款自己的开发板,而又不想再买,也是可以的,只要你的板子上有ALIENTEK探索者STM32开发板上的相同资源(需要实验用到的),代码一般都是可以通用的,你需要做的只是把底层的驱动函数(比如I/O口修改)稍做修改,使之适合你的开发板即可。本书配套资料包括:探索者STM32F407开发板及其相关模块原理图(pdf格式)、视频教程、文档教程、配套软件、各例程程序源码和相关参考资料等。
感谢
衷心感谢意法半导体(ST)中国区高级市场经理曹锦东先生对本书的大力支持,他为本书提供了很多参考资料和指导意见。衷心感谢陈贵东、谭春风、李小虎、刘勇材、罗建、周莉等人审稿,帮我找到了很多缺陷和错误,并提出了宝贵的意见。衷心感谢北航出版社的支持,正是编辑的认真工作才使得本书能够顺利的与读者见面。 作者力求将本书的内容写好,由于能力有限,书中难免会有出错的地方,如果大家发现书本中有什么错误的地方,请与作者联系,也可以去论坛给作者留言,在此先向各位读者表示诚挚的感谢。
精通STM32F4(库函数版) 电子书 下载 mobi epub pdf txt