前 言
微控制器(或称单片机)系统设计是生物医学工程、医疗器械工程、康复工程等专业的核心课程,学生既要掌握微控制器设计的基本技能,还要将这些技能熟练应用于医用电子技术领域。要想成为一名优秀的医用电子系统设计工程师,还需要进一步掌握软硬件联合调试的技能,具备模块化设计思想,能够从宏观角度进行系统架构设计,并灵活地将各种技术规范融入设计中。
天津大学李刚教授说:勇于实践+深入思考=真才实学。而当今的工科学生普遍缺乏的就是勇于实践,没有大量的实践,就很难对某一个问题进行深入剖析和思考,当然,也就谈不上真才实学。在科学技术日新月异的今天,卓越工程师的培养必须配以高强度的实训。
本书是一本讲解STM32F4系列微控制器设计的书籍,严格意义上讲,本书也是一本实训手册。本书以医疗电子单片机高级开发系统(LY-ST429M型单片机高级开发平台+LY-M501型人体生理参数监测系统)为平台,共安排18个实验,其中实验1~实验13为微控制器基础实验,实验14~实验18为医疗电子专业实验。所有实验均详细介绍了实验内容、设计思路,并且都有详细的步骤和源代码,以确保读者能够顺利完成。每章的最后都安排了一个任务,作为本章实验的延伸和拓展。
目前主流的微控制器的功能比以往的强大得多,想要掌握其知识点,必须花费大量的时间和精力。比如,要学习某一款STM32微控制器,至少要阅读三本手册,即ARM公司的《ARM Cortex-M3与Cortex-M4权威指南》、ST公司的《STM32中文参考手册》和《STM32固件库使用手册》,这些手册加起来有一两千页。除此之外,还要花费大量的时间和精力熟悉STM32的集成开发环境、程序下载工具、串口助手工具等。为了减轻初学者查找资料和熟悉开发工具的负担,能够将更多的精力聚焦在实践环节,快速入门,本书将上述手册中的相关知识点汇总在“实验原理”中,将STM32集成开发环境、程序下载工具、串口助手工具等的使用方法穿插于各章节中。这样,读者就可以通过本书和医疗电子单片机高级开发系统,秉承“勇于实践+深入思考”的思想,轻松踏上学习STM32之路,在实践过程中不知不觉地掌握各种知识和技能。
本书的特点如下:
1.以医疗电子单片机高级开发系统作为实践载体,微控制器选取STM32F429IGT6芯片。主要考虑到STM32是目前市面上使用最为广泛的微控制器之一,且该系列的微控制器具有功耗低、外设多、基于库开发、配套资料多、开发板种类多等优势。
2.详细讲解18个实验所涉及的知识点,未涉及的内容尽量不予讲解,以便于初学者快速掌握微控制器系统设计的核心要点。
3.将各种规范贯穿于整个微控制器系统设计过程中,如Keil集成开发环境参数设置、工程和文件命名规范、版本规范、软件设计规范等。
4.所有实验严格按照统一的工程架构设计,每个子模块按照统一标准设计。
5.配有丰富的资料包,包括医疗电子单片机高级开发系统原理图、例程、软件包、硬件套件,以及配套的PPT、视频等。这些资料会持续更新,下载链接可通过微信公众号“卓越工程师培养系列”获取。
关于本书的使用,建议先通过实验1~实验3快速熟悉整个开发流程;对于实验4~实验7投入较多的时间和精力,重点学习外设架构、寄存器、固件库函数、驱动设计和应用层设计等,并认真总结这4个实验的经验;最后,将前面所学知识灵活运用到后面11个实验中。
本书中的程序严格按照《C语言软件设计规范(LY-STD001-2019)》编写。设计规范要求每个函数的实现必须有清晰的函数模块信息,函数模块信息包括函数名称、函数功能、输入参数、输出参数、返回值、创建日期和注意事项。受限于篇幅,实验3~实验18中的程序省略了函数模块信息,建议读者在编写程序时完善每个函数的模块信息。“函数实现及其模块信息”(位于本书配套资料包的“08.软件资料”文件夹)罗列了所有函数的实现及其模块信息,供读者参考。
本书的编写得到了深圳市乐育科技有限公司的大力支持;深圳大学的覃进宇、刘宇林、郭文波和黄荣祯在教材编写、例程优化和文字校对中做了大量的工作;本书的出版得到了电子工业出版社的鼎力支持,张小乐编辑为本书的顺利出版做了大量的工作。一并向他们表示衷心的感谢。本书获深圳大学教材出版资助。
由于作者水平有限,书中难免有错误和不足之处,敬请读者不吝赐教。
作 者
2020年5月