FreeRTOS源码详解与应用开发—基于STM32
本书辅以大量的例程,全面讲解了Fr e eRTOS的原理以及源码,主要内容包括任务管理和任 务调度、系统裁减和配置、时间管理、队列、信号量、软件定时器、事件标志组、任务通知、低功耗 Ti ck l e s s模式、空闲任务以及内存管理等。同时,本书配有大量的图例,对于想要深入学习RTOS 类系统原理的人来说是一个不错的选择。 本书配套资料包括视频教程、文档教程、各个例程的源码及相关参考资料,所有资料均可在开 源电子网(网址为. openedv. c om)免费下载。 本书适合那些想要学习Fr e eRTOS的初学者,也可作为高等院校计算机、电子技术、自动化、 嵌入式等相关专业的教材。
背景知识 近年来微处理器的性能呈爆炸式增长,尤其是在ARM公司发布了Co r t ex M 内核以后,全球很多大型半导体厂商都推出了基于Co r t ex M内核的MCU。以ST (意法半导体)为例,先后推出了STM32F1、 STM32F4、 STM32F7和近刚推出的 STM32H7,其性能已经远超曾经的ARM7,甚至已经超过了大多数的ARM9处理 器。强大的性能意味着复杂的功能、复杂的应用,随着应用中所需功能的增多,裸机 开发越来越吃力,应用中各功能模块的管理遇到了前所未有的挑战。这时候,一个科 学的、合理的模块化管理方法显得尤为重要,而这个正是操作系统的基本功能,即任 务管理。 提起操作系统,大多数人的反应应该是 Wi ndows、 L i nux、And r o i d和IOS 等这些常用的大型操作系统。很不幸的是,对于Co r t ex M这种级别的MCU来讲, 这些系统一个都用不了,它们有自己专用的操作系统,叫RTOS类操作系统。RTOS 是Re a lTimeOpe r a t i ngSys t em的缩写,也就是实时操作系统。RTOS类操作系统 有很多,如μC/OSI I / I I I、 RTX、 RT Thr e ad、 Fr e eRTOS等。那为何本书选择Fr e eRTOS呢? 主要的原因就是Fr e eRTOS免费,而且全球占有量很大,很多第三方 组件厂商都选择Fr e eRTOS作为默认操作系统,比如STM32官方库、 TouchGFX图 形界面、各种 Wi F i和蓝牙的协议栈等,因此本书选择了Fr e eRTOS。系统的运行需 要一个平台,本书选取ALIENTEK推出的STM32F429阿波罗开发板,本书所涉及 的例程都是基于此款开发板编写的;如果读者使用其他类型的开发板,则只需要对例 程稍做修改即可。 本书特点 ? 由简入深,从基本的API函数使用方法讲起,让读者对于Fr e eRTOS先有 一个基本的概念,后续章节再对Fr e eRTOS的各功能模块进行详细讲解。 ? 对Fr e eRTOS中重要的功能模块,比如信号量、队列、列表和列表项等,进行 了源码级的剖析,对其中重要的API函数源码做了详细分析。 ? 针对Fr e eRTOS的移植过程,笔者每操作一步都记录下来编写进本书,尽可 能保证移植过程合理、无误,尽量确保读者通过参考本书的移植过程可以将Fr e eRTOS移植到任何Fr e eRTOS所支持的MCU上。 ? 对于本书中晦涩难懂的原理性知识,我们都会配有相应的图形,采用图文结 合的方式加深对原理的理解。所有图形都采用Vi s i o软件进行绘制,保证图 形质量,图形配色合理、大气。 ? 操作系统是运行在处理器上的,因此,肯定会涉及处理器架构方面的知识,本 书中涉及的地方都会标记出可以参考的书籍以及章节,方便想要深入了解的 读者去阅读参考。 ? 基本上每章都有相应的练习和使用例程,通过理论加实践的方式来加强对 Fr e eRTOS操作系统的掌握。 ? 考虑到不同读者的C语言使用水平不同,本书涉及的例程中都没有使用复杂 的C语言语法,基本都是常用的语法。 使用对象 ? 使用Fr e eROTS操作系统的研发人员,或者毕业设计等需要使用Fr e eRTOS 的学生。 ? 对Fr e eRTOS感兴趣、想要深入了解其运行原理的爱好者。 ? 学习过其他RTOS类操作系统、想要再掌握一种RTOS类操作系统的爱 好者。 软硬件平台 使用Fr e eRTOS肯定避免不了编写、编译程序,程序编译完成以后肯定也需要 下载到硬件上去运行。编写程序的IDE和运行程序的硬件平台有很多种,本书使用 的软硬件平台如下: 硬件平台: ALIENTEK推出的STM32F429阿波罗开发板。拥有这款开发板的 读者可以直接下载本书中的所有例程,无须做任何修改。ALIENTEK有多款 STM32开发板,包括STM32F103、 STM32F407、 STM32F429和STM32F767,本书 所有例程都有这些开发板的对应版本,拥有这些开发板的读者可以直接下载对应的 例程。使用其他开发板的读者也不用着急,本书例程操作的都是STM32基本的 外设,比如串口、定时器、 I /O等,只须稍做修改就可以将例程在自己的开发板上运行 起来。 IDE开发工具: Ke i l公司的MDK5. 22。 Fr e eRTOS版本: V9. 0. 0版本的Fr e eRTOS。 STM32库: ST新推出的HAL库,版本为V1. 4. 2。 参考资料 本书编写过程中参考过很多资料,但是有用的就只有那几份文档和书籍,首推 的就是Fr e eRTOS官方的两份文档:《 Fr e eRTOS_Re f e r enc e_Manua l_V9. 0. 0》和《Ma s t e r i ng_t he _Fr e eRTOS_Re a l _Time _Ke rne l A_Hands On_Tu t o r i a l _Gu i de》, 读者可以在Fr e eRTOS官网下载。另外,涉及Co r t ex M内核的时候推荐读者参考《 ARMCo r t ex M3与Co r t ex M4指南(第3版)》,此书对Co r t ex M3/M4内 核做了详细讲解。本书重点讲解Fr e eROTS的原理和使用,不会对STM32的使用 做过多讲解,这方面的资料可以参考ALIENTEK推出的精通STM32F4系列丛书 和ST官方的参考手册、数据手册等。 配套资料 本书配套资料包括视频教程、文档教程、各个例程的源码及相关参考资料,所有 资料均可在开源电子网免费下载,网址为. openedv. c om。 感 谢 本书获得了ALIENTEK公司的大力支持,它为本书的编写提供了很多便利条 件,并且给予了大量的建议。衷心感谢刘军、张洋、刘勇财、周莉、刘海涛、李振勇、黄 树乾、吴振阳、彭立峰、罗建等人的审稿,感谢开源电子网广大网友对本书提出的 建议。 由于编者水平有限,加之时间仓促,难免会有错误和不足之处,希望广大读者能 够提出宝贵意见。如果发现有错误的地方可以发邮件到邮箱: zuo zhaongka i@ ou t l ook. c om,或者在论坛ww. openedv. 上留言。
STM32F7原理与应用——寄存器版(上)
本套书籍以ST公司的STM32F767为目标芯片,详细介绍了STM32F7的特点、片内外资源的使用,并辅以65个例程,由浅入深地介绍了STM32F7的使用。所有例程都经过精心编写,从原理开始介绍,到代码编写、下载验证,一步步教读者如何实现。所有源码都配有详细注释,且经过严格测试。另外,源码有生成好的hex文件,读者只需要通过仿真器下载到开发板即可看到实验现象,亲自体验实验过程。套书总共分为4册:
《STM32F7原理与应用———寄存器版(上)》、《STM32F7原理与应用———寄存器版(下)》、
《STM32F7原理与应用———HAL库版(上)》和《STM32F7原理与应用———HAL库版(下)》。本书是《STM32F7原理与应用———寄存器版(上)》,分为3个篇:①硬件篇,主要介绍本书的硬件平台;②软件篇,主要介绍STM32F7常用开发软件的使用以及一些下载调试的技巧,并详细介绍几个常用的系统文件(程序);③实战篇,通过30个实例(后35个见下册)带领读者一步步深入了解STM32F7。本书适合STM32F7初学者和自学者学习参考,对有一定经验的电子工程技术人员也具有实用参考价值。本书也可以作为高校电子、通信、计算机、信息等相关专业的教学参考用书。
STM32F7原理与应用——寄存器版(上)
序
2014年底,意法半导体(ST)发布了STM32F7系列芯片。该芯片采用ARM公司近发布的新、强的ARMCortexM7内核,其性能约为意法半导体原有强处理器STM32F4(采用ARMCortexM4内核)的两倍。STM32F7系列微控制器的工作频率高达216MHz,采用6级超标量流水线和硬件浮点单元(FloatingPointUnit,FPU),测试分数高达1000CoreMark。在STMCU高级市场部经理曹锦东先生的帮助下,作者有幸于2015年拿到了STM32F7的样片和评估板。STM32F7强大的处理能力以及丰富的外设资源足以应付各种需求,在工业控制、音频处理、智能家居、物联网和汽车电子等领域,有着广泛的应用前景。其强大的DSP处理性能足以替代一部分DSP处理器,在中高端通用处理器市场有很强的竞争力。由于STM32F7和ARMCortexM7公布都不久,除了ST官方的STM32F7文档和源码,网络上很少有相关的教程和代码,遇到问题时也很少有人可以讨论。作为STM32F7在国内较早的使用者,作者经过近两年的学习和研究,将STM32F7的所有资源摸索了一遍,在此过程中,发现并解决了不少bug。为了让没接触过STM32F7的朋友更快、更好地掌握STM32F7,作者设计了一款STM32F7开发板(阿波罗STM32F767开发板),并对STM32F7的绝大部分资源编写了例程和详细教程。这些教程浅显易懂,使用的描述语言很自然,而且图文并茂,每一个知识点都设计了一个可以运行的示例程序,非常适合初学者学习。时至今日,书已成型,两年的时间包含了太多的心酸与喜悦,终呈现给读者的是包括:《STM32F7原理与应用———寄存器版(上)》、《STM32F7原理与应用———寄存器版(下)》、《STM32F7原理与应用———HAL库版(上)》和《STM32F7原理与应用———HAL库版(下)》共4本书的一套书籍。这主要有以下几点考虑:①STM32F7的代码编写有两种方式:寄存器和HAL库。寄存器方式编写的代码具有精简、高效的特点,但是需要程序员对相关寄存器比较熟悉;HAL库方式编写的代码具有简单、易用的特点,但是效率低,代码量较大。一般想深入学习了解的话,建议选择寄存器方式;想快速上手的话,建议选择HAL库方式。实际应用中,这两种方式都有很多朋友选择,所以分为寄存器和库函数两个版本出版。②STM32F7的功能十分强大,外设资源也非常丰富,因此教程篇幅也相对较大,而一本书的厚度是有限的,无法将所有内容都编到一本书上,于是分成上下两册。
由于STM32F7的知识点非常多,即便分成上下两册,对很多方面也没有深入探讨,需要后续继续研究,而一旦有新的内容,我们将尽快更新到开源电子网(.openedv.)。STM32F7简介STM32F7是ST公司推出的款基于ARMCortexM7内核的微处理器,具有6级流水线、硬件单/双精度浮点计算单元、L1I/DCache、支持Flash零等待运行代码、支持DSP指令、主频高达216MHz,实际性能是STM32F4的两倍;另外,还有QSPI、FMC、TFTLCD控制器、SAI、SPDIF、硬件JPEG编解码器等外设,资源十分丰富。套书特色本套书籍作为学习STM32F7的入门级教材,也是市面上套系统地介绍STM32F7原理和应用的教材,具有如下特色:新。新芯片,使用新的STM32F767芯片;新编译器,使用新的MDK5.21编译器;新库,基于ST主推的HAL库编写(HAL库版)代码,不再使用标准库。全。书中包含了大量例程,基本上STM32F7的所有资源都有对应的实例,每个实例都从原理开始讲解→硬件设计→软件设计→结果测试,详细介绍了每个步骤,力求全面掌握各个知识点。循序渐进。书本从实验平台开始→硬件资源介绍→软件使用介绍→基础知识讲解→例程讲解,一步一步地学习STM32F7,力求做到心中有数,循序渐进。由简入难。书本例程从基础的跑马灯开始→复杂的综合实验,由简入难,一步步深入,完成对STM32F7各个知识点的学习。无限更新。由于书本的特殊性,无法随时更新,一旦有新知识点的教程和代码,作者都会发布在开源电子网(.openedv.),读者多关注即可。套书结构本套书籍一共分为2个版本,共4本:《STM32F7原理与应用———寄存器版(上)》、
《STM32F7原理与应用———寄存器版(下)》、《STM32F7原理与应用———HAL库版(上)》和《STM32F7原理与应用———HAL库版(下)》。其中,寄存器版本全部基于寄存器操作,精简高效,适合深入学习和研究;HAL库版本全部采用HAL库操作,简单易用,适合快速掌握和使用。上册详细介绍了实验平台的硬件、开发软件的入门和使用、新建工程、下载调试和30个基础例程,并且这30个基础例程绝大部分都是针对STM32F7内部一些基本外设的使用,比较容易掌握,也是灵活使用STM32F7的基础。对于想入门,或者刚接触STM32F7的朋友,上册版本是您的理想之选。下册则详细介绍了34/35(寄存器版多了综合实验)个高级例程,针对STM32F7内部的一些高级外设和第三方代码(FATFS、Lwip、μC/OS和音频解码库等)的使用等做了详细介绍,对学习者要求比较高,适合对STM32F7有一定了解、基础比较扎实的朋友学习。本套书籍的结构如下所示:
使用本套书籍对于时间充足、有过单片机使用经验、对底层驱动感兴趣的朋友,建议选择寄存器版本学习。因为它全部是基于底层的寄存器操作,对学习者要求比较高,需要较多的时间来掌握,但是学会之后,编写代码思路会清晰很多,而且代码精简,效率极高。对于想快速入门、对底层接口兴趣不大,专注应用层软件的朋友,建议选择HAL库版本学习。因为它的底层驱动,全部由ST官方写好了,读者只须学会函数和参数的使用,就能实现对相关外设的驱动,有利于快速编写驱动代码,无须繁琐地查看寄存器,容易入门,能有更多的时间来实现应用层的功能。对于没有学习过STM32F7的初学者,建议先学习上册的内容,它对STM32F7的软硬件开发环境进行了详细的介绍,从新建工程教起,包括30个STM32F7内部资源使用的基础例程,每个例程都有详细的解说和示例程序,非常适合初学者入门。对于有一定单片机编程基础、对STM32F7有一定了解(好学过本套书籍上册内容)、想进一步提高的朋友,推荐学习下册内容,它对STM32F7的一些高级外设有详细介绍和参考代码,并且对第三方代码组件也有比较详细的介绍,非常适合较大工程的应用。致谢感谢北京航空航天大学出版社,它的支持才让本套书籍得以和大家见面。感谢开源电子网的网友,是他们的支持和帮助才让我一步一步走了下来,其中有一些朋友还参与了本套书籍的审校和代码审核工作,特别感谢:八度空间、春风、jerymy_z、yyx112358等网友,他们参与了本书的审校工作。是众多朋友的认真工作,才使得本套书籍可以较早地出版。由于作者技术水平有限,精力有限,书中难免出现错误和代码设计缺陷,恳请读者批评指正(邮箱:liujun6037@foxmail.)。读者可以在开源电子网(.openedv.)免费下载到本套书籍的全部源码,并查看与本套书籍对应的不断更新的系列教程。
刘军2017年2月于广州
前言
作为CortexM系列通用处理器市场的大占有者,STM32以其优异的性能、超高的、丰富的本地化教程,迅速占领了市场。ST公司自2007年推出款STM32以来,先后推出了STM32F0/F1/F2/F3/F4/F7等系列产品,涵盖了CortexM0/M3/M4/M7等内核,总出货量超过18亿颗,是ARM公司CortexM系列内核的霸主。STM32F7系列是ST推出的基于ARMCortexM7内核的处理器,采用6级流水线,性能高达5CoreMark/MHz,在200MHz工作频率下测试数据高达1000CoreMarks,远超此前性能高的STM32F4(CortexM4内核)系列(DSP性能超过STM32F4的两倍)。STM32F76x系列(包括STM32F765/767/768/769等),主要有如下优势:更先进的内核,采用CortexM7内核,具有16KB指令/数据Cache,采用ST独有的自适应实时加速技术(ARTAccelerator),性能高达5CoreMark/MHz。更丰富的外设,拥有高达512KB的片内SRAM,并且支持SDRAM、带TFTLCD控制器、带图形加速器(ChormeART)、带摄像头接口(DCMI)、带硬件JPEG编解码器、带QSPI接口、带SAI&I2S;音频接口、带SPDIFRX接口、USB高速OTG、真随机数发生器、OTP存储器等。更高的性能,STM32F767高运行频率可达216MHz,具有6级流水线,带有指令和数据Cache,大大提高了性能,性能大概是STM32F4的两倍。而且STM32F76x自带了双精度硬件浮点单元(DFFPU),在做DSP处理的时候具有更好的性能。STM32F76x系列自带了LCD控制器和SDRAM接口,对于想要驱动大屏或需要大内存的朋友来说,是个非常不错的选择;更重要的是集成了硬件JPEG编解码器,可以秒解JPEG图片,做界面的时候可以大大提高加载速度,并且可以实现视频播放。本书将以STM32F767为例,向大家讲解STM32F7的学习。内容特点学习STM32F767有几份资料经常用到:《STM32F7中文参考手册》、《STM32F7xx参考手册》英文版、《STM32F7编程手册》。其中,常用的是《STM32F7中文参考手册》。该文档是ST官方针对STM32F74x/75x的一份中文参考资料,里面有绝大部分寄存器的详细描述,内容翔实,但是没有实例,也没有对CortexM7构架进行大多介绍,读者只能根据自己对书本的理解来编写相关代码。另外,对STM32F767特有的部分外设(比如硬件JPEG编解码器、DFSDM等),则必须参考《STM32F7xx参考手册》英文版来学习。
《STM32F7编程手册》文档则重点介绍了CortexM7内核的汇编指令及其使用、内核相关寄存器(比如SCB、NVIC、SYSTICK等寄存器)是《STM32F7中文参考手册》的重要补充。很多在《STM32F7中文参考手册》无法找到的内容,都可以在这里找到答案,不过目前该文档没有中文版本,只有英文版。本书将结合以上3份资料,从寄存器级别出发,深入浅出地向读者展示STM32F767的各种功能。总共配有65个实例,基本上每个实例均配有软硬件设计,在介绍完软硬件之后马上附上实例代码,并带有详细注释及说明,让读者快速理解代码。这些实例涵盖了STM32F7的绝大部分内部资源,并且提供了很多实用级别的程序,如内存管理、NANDFlashFTL、拼音输入法、手写识别、图片解码、IAP等。所有实例均在MDK5.21A编译器下编译通过,读者只须下载程序到ALIENTEK阿波罗STM32开发板即可验证实验。读者对象不管你是一个STM32初学者,还是一个老手,本书都非常适合。尤其对于初学者,本书将手把手地教你如何使用MDK,包括新建工程、编译、仿真、下载调试等一系列步骤,让你轻松上手。本书不适用于想通过HAL库学习STM32F7的读者,因为本书的绝大部分内容都是直接操作寄存器的;如果想通过HAL库学习STM32F7,可看本套书的HAL库版本。配套资料本书的实验平台是ALIENTEK阿波罗STM32F7开发板,有这款开发板的朋友可以直接拿本书配套资料上的例程在开发板上运行、验证。而没有这款开发板而又想要的朋友,可以上淘宝购买。当然,如果已有了一款自己的开发板,而又不想再买,也是可以的,只要你的板子上有和ALIENTEK阿波罗STM32F7开发板上的相同资源(需要实验用到的),代码一般都是可以通用的,你需要做的就只是把底层的驱动函数(比如I/O口修改)稍做修改,使之适合你的开发板即可。本书配套资料包括ALIENTEK阿波罗STM32F7开发板相关模块原理图(pdf格式)、视频教程、文档教程、配套软件、各例程程序源码和相关参考资料等,所有这些资料读者都可以在.openedv./thread1391211.html免费下载。
刘军2017年2月于广州
STM32F7原理与应用——寄存器版(下)
本套书籍以ST公司的STM32F767为目标芯片,详细介绍了STM32F7的特点、片内外资源的使用,并辅以65个例程,由浅入深地介绍了STM32F7的使用。所有例程都经过精心编写,从原理开始介绍,到代码编写、下载验证,一步步教读者如何实现。所有源码都配有详细注释,且经过严格测试。另外,源码有生成好的hex文件,读者只需要通过仿真器下载到开发板即可看到实验现象,亲自体验实验过程。套书总共分为4册:
《STM32F7原理与应用———寄存器版(上)》、《STM32F7原理与应用———寄存器版(下)》、
《STM32F7原理与应用———HAL库版(上)》和《STM32F7原理与应用———HAL库版(下)》。本书为《STM32F7原理与应用———寄存器版(下)》,共35章,通过35个高级实验例程(对应实验31~实验65),带领大家深入了解STM32F7的使用。对于没有学过STM32的初学者,强烈建议先阅读上册内容,再来学习本书内容。本书适合STM32F7初学者学习参考,对有一定经验的电子工程技术人员也具有实用参考价值。本书也可以作为高等院校电子、通信、计算机、信息等相关专业的教学参考用书。
STM32F7原理与应用——寄存器版(下)
序
2014年底,意法半导体(ST)发布了STM32F7系列芯片。该芯片采用ARM公司近发布的新、强的ARMCortexM7内核,其性能约为意法半导体原有强处理器STM32F4(采用ARMCortexM4内核)的两倍。STM32F7系列微控制器的工作频率高达216MHz,采用6级超标量流水线和硬件浮点单元(FloatingPointUnit,FPU),测试分数高达1000CoreMark。在STMCU高级市场部经理曹锦东先生的帮助下,作者有幸于2015年拿到了STM32F7的样片和评估板。STM32F7强大的处理能力以及丰富的外设资源足以应付各种需求,在工业控制、音频处理、智能家居、物联网和汽车电子等领域,有着广泛的应用前景。其强大的DSP处理性能足以替代一部分DSP处理器,在中高端通用处理器市场有很强的竞争力。由于STM32F7和ARMCortexM7公布都不久,除了ST官方的STM32F7文档和源码,网络上很少有相关的教程和代码,遇到问题时也很少有人可以讨论。作为STM32F7在国内较早的使用者,作者经过近两年的学习和研究,将STM32F7的所有资源摸索了一遍,在此过程中,发现并解决了不少bug。为了让没接触过STM32F7的朋友更快、更好地掌握STM32F7,作者设计了一款STM32F7开发板(阿波罗STM32F767开发板),并对STM32F7的绝大部分资源编写了例程和详细教程。这些教程浅显易懂,使用的描述语言很自然,而且图文并茂,每一个知识点都设计了一个可以运行的示例程序,非常适合初学者学习。时至今日,书已成型,两年的时间包含了太多的心酸与喜悦,终呈现给读者的是包括:《STM32F7原理与应用———寄存器版(上)》、《STM32F7原理与应用———寄存器版(下)》、《STM32F7原理与应用———HAL库版(上)》和《STM32F7原理与应用———HAL库版(下)》共4本书的一套书籍。这主要有以下几点考虑:①STM32F7的代码编写有两种方式:寄存器和HAL库。寄存器方式编写的代码具有精简、高效的特点,但是需要程序员对相关寄存器比较熟悉;HAL库方式编写的代码具有简单、易用的特点,但是效率低,代码量较大。一般想深入学习了解的话,建议选择寄存器方式;想快速上手的话,建议选择HAL库方式。实际应用中,这两种方式都有很多朋友选择,所以分为寄存器和库函数两个版本出版。②STM32F7的功能十分强大,外设资源也非常丰富,因此教程篇幅也相对较大,而一本书的厚度是有限的,无法将所有内容都编到一本书上,于是分成上下两册。
由于STM32F7的知识点非常多,即便分成上下两册,对很多方面也没有深入探讨,需要后续继续研究,而一旦有新的内容,我们将尽快更新到开源电子网(.openedv.)。STM32F7简介STM32F7是ST公司推出的款基于ARMCortexM7内核的微处理器,具有6级流水线、硬件单/双精度浮点计算单元、L1I/DCache、支持Flash零等待运行代码、支持DSP指令、主频高达216MHz,实际性能是STM32F4的两倍;另外,还有QSPI、FMC、TFTLCD控制器、SAI、SPDIF、硬件JPEG编解码器等外设,资源十分丰富。套书特色本套书籍作为学习STM32F7的入门级教材,也是市面上套系统地介绍STM32F7原理和应用的教材,具有如下特色:新。新芯片,使用新的STM32F767芯片;新编译器,使用新的MDK5.21编译器;新库,基于ST主推的HAL库编写(HAL库版)代码,不再使用标准库。全。书中包含了大量例程,基本上STM32F7的所有资源都有对应的实例,每个实例都从原理开始讲解→硬件设计→软件设计→结果测试,详细介绍了每个步骤,力求全面掌握各个知识点。循序渐进。书本从实验平台开始→硬件资源介绍→软件使用介绍→基础知识讲解→例程讲解,一步一步地学习STM32F7,力求做到心中有数,循序渐进。由简入难。书本例程从基础的跑马灯开始→复杂的综合实验,由简入难,一步步深入,完成对STM32F7各个知识点的学习。无限更新。由于书本的特殊性,无法随时更新,一旦有新知识点的教程和代码,作者都会发布在开源电子网(.openedv.),读者多关注即可。套书结构本套书籍一共分为2个版本,共4本:《STM32F7原理与应用———寄存器版(上)》、
《STM32F7原理与应用———寄存器版(下)》、《STM32F7原理与应用———HAL库版(上)》和《STM32F7原理与应用———HAL库版(下)》。其中,寄存器版本全部基于寄存器操作,精简高效,适合深入学习和研究;HAL库版本全部采用HAL库操作,简单易用,适合快速掌握和使用。上册详细介绍了实验平台的硬件、开发软件的入门和使用、新建工程、下载调试和30个基础例程,并且这30个基础例程绝大部分都是针对STM32F7内部一些基本外设的使用,比较容易掌握,也是灵活使用STM32F7的基础。对于想入门,或者刚接触STM32F7的朋友,上册版本是您的理想之选。下册则详细介绍了34/35(寄存器版多了综合实验)个高级例程,针对STM32F7内部的一些高级外设和第三方代码(FATFS、Lwip、μC/OS和音频解码库等)的使用等做了详细介绍,对学习者要求比较高,适合对STM32F7有一定了解、基础比较扎实的朋友学习。本套书籍的结构如下所示:
使用本套书籍对于时间充足、有过单片机使用经验、对底层驱动感兴趣的朋友,建议选择寄存器版本学习。因为它全部是基于底层的寄存器操作,对学习者要求比较高,需要较多的时间来掌握,但是学会之后,编写代码思路会清晰很多,而且代码精简,效率极高。对于想快速入门、对底层接口兴趣不大,专注应用层软件的朋友,建议选择HAL库版本学习。因为它的底层驱动,全部由ST官方写好了,读者只须学会函数和参数的使用,就能实现对相关外设的驱动,有利于快速编写驱动代码,无须繁琐地查看寄存器,容易入门,能有更多的时间来实现应用层的功能。对于没有学习过STM32F7的初学者,建议先学习上册的内容,它对STM32F7的软硬件开发环境进行了详细的介绍,从新建工程教起,包括30个STM32F7内部资源使用的基础例程,每个例程都有详细的解说和示例程序,非常适合初学者入门。对于有一定单片机编程基础、对STM32F7有一定了解(好学过本套书籍上册内容)、想进一步提高的朋友,推荐学习下册内容,它对STM32F7的一些高级外设有详细介绍和参考代码,并且对第三方代码组件也有比较详细的介绍,非常适合较大工程的应用。致谢感谢北京航空航天大学出版社,它的支持才让本套书籍得以和大家见面。感谢开源电子网的网友,是他们的支持和帮助才让我一步一步走了下来,其中有一些朋友还参与了本套书籍的审校和代码审核工作,特别感谢:八度空间、春风、jerymy_z、yyx112358等网友,他们参与了本书的审校工作。是众多朋友的认真工作,才使得本套书籍可以较早地出版。由于作者技术水平有限,精力有限,书中难免出现错误和代码设计缺陷,恳请读者批评指正(邮箱:liujun6037@foxmail.)。读者可以在开源电子网(.openedv.)免费下载到本套书籍的全部源码,并查看与本套书籍对应的不断更新的系列教程。
刘军2017年2月于广州
STM32F7原理与应用—HAL库版(上)
STM32F7原理与应用—HAL库版(下)
评分
评分
评分
评分
评分
评分
评分
评分
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等,本站所有链接都为正版商品购买链接。
© 2025 windowsfront.com All Rights Reserved. 静流书站 版权所有