前 言
习近平总书记在党的二十大报告中指出,“教育、科技、人才是全面建设社会主义现代化国家的基础性、战略性支撑”“必须坚持科技是第一生产力、人才是第一资源、创新是第一动力,深入实施科教兴国战略、人才强国战略”“坚持教育优先发展、科技自立自强、人才引领驱动”“加快建设教育强国、科技强国、人才强国”“全面提高人才自主培养质量,着力造就拔尖创新人才”。本书作为“卓越工程师培养系列”丛书之一,以快速提升工程人才实践能力为目标,通过大量实践,让读者对微控制器底层原理和应用有深入的理解和思考,全面掌握微控制器的基础知识。只有这样,才有可能设计出性能优异的产品。
本书主要介绍微控制器原理与应用,采用的硬件平台为GD32F3苹果派开发板,其主控芯片为GD32F303ZET6(封装为LQFP144),由兆易创新科技集团股份有限公司(以下简称“兆易创新”)研发并推出。兆易创新的GD32 MCU是中国高性能通用微控制器领域的领跑者,主要体现在以下几点:①GD32 MCU是中国最大的ARM MCU产品家族,已经成为中国32位通用MCU市场的主流之选;②兆易创新在中国第一个推出基于ARM Cortex-M3、Cortex-M4、Cortex-M23和Cortex-M33内核的MCU产品系列;③全球首个RISC-V内核通用32位MCU产品系列出自兆易创新;④在中国32位MCU厂商排名中,兆易创新连续五年位居第一。
“微机原理”作为高等院校工科电子类、信息类等专业的一门重要课程,旨在加强学生对计算机系统架构、汇编语言及计算机组成原理的了解。然而,市面上的多数书籍对架构知识涉及较少,或内容晦涩难懂,不利于读者全面了解系统架构知识并加以应用。此外,市面上针对国产32位微控制器的微机原理教材较少。为此,我们希望通过编写本书,使读者能够快速学习汇编语言,从而探索和了解CPU的工作方式,进一步提高编程技术。
“微机原理”教材的发展未来必将走向32位微控制器,这是不争的事实,但是否使用汇编语言,见仁见智。根据产业界的反馈,要理解计算机体系架构,就要了解指令系统。另外,现在很多产品都会涉及操作系统,如果没有汇编语言基础,就很难深入理解操作系统,更谈不上在操作系统上编写高性能、稳定、小尺寸的应用程序。我们建议先基于C语言学习32位微控制器,再基于汇编语言学习32位微控制器。前者可通过GD32系列教材中的《GD32F3开发基础教程——基于GD32F303ZET6》来学习,后者可使用本书学习。两本书在实验编排上有一定的相似性,旨在通过不同的语言来实现同样的功能。读者可以在对比中掌握两种语言的差异性和共性,从而夯实基础,加深对微控制器底层原理的理解。
GD32F303ZET6微控制器采用了最新Cortex-M4内核,同主频下的代码执行效率相比市场同类Cortex-M4产品提高10%~20%,相比Cortex-M3产品提高30%。Cortex-M4内核基于ARM-v7架构。ARM架构为32位精简指令集(RISC)中央处理器架构,广泛应用于嵌入式系统设计中,因此,学习ARM架构是嵌入式系统设计的重要环节之一。
人才是推动行业发展的核心力量,而常年来硬件领域人才缺口大,企业难以招聘到合适的人才。一方面,硬件学习门槛高、周期长;另一方面,难有完善的培养体系可以系统性地建立初学者的硬件知识体系,提升硬件水平。本书希望通过一系列实验,手把手带着读者一起学架构、学指令、学调试,丰富读者知识体系,提高其对嵌入式系统设计的兴趣,并在硬件开发道路上持之以恒、深入钻研,成为国家社会需要的人才。
本书各章内容安排如下:
第1、2章简要介绍本书所用开发平台和工具,以及开发工具的安装与配置,然后介绍微机工作原理和GD32F30x系列微控制器。
第3~8章以仿真实验为主线,对Keil软件的使用,工程的建立、编译和程序下载,以及汇编语言的基础知识进行介绍。
第9~17章介绍GPIO、外部中断、定时器、SysTick、RCU、串口通信、ADC和DAC的原理及相关寄存器,并通过实验进行验证。
本书特点如下:
(1) 本书内容对有一定微控制器基础的读者来说较为友好,建议先学习“卓越工程师培养系列”教材中的《GD32F3开发基础教程——基于GD32F303ZET6》,再学习本书。
(2) 本书适合具有ARM基础的嵌入式工程师学习,也可以作为高等院校电子类专业的教材。
(3) 本书注重理论与实践相结合,对于高深晦涩的原理涉及较少,大多采用通俗易懂的语言深入浅出地进行介绍。原理介绍之后再进行实验,将理论运用到实际工程中,以巩固所学知识。
(4) 书中的所有例程按照统一的工程架构设计,每个子模块都按照统一标准设计,以方便读者后续使用书中所学知识进一步开发,或将其应用于项目当中。
(5) 本书配有丰富的资料包,包含例程、软件包、教学课件、教学视频、参考资料等。这些资料会持续更新,读者可通过扫描二维码获取。
本书由张沛昌、郭文波任主编,唐浒、董磊任副主编,其中,张沛昌和郭文波共同策划编写思路,指导并参与编写,最后对全书进行了统稿。本书配套的GD32F3苹果派开发板和例程由深圳市乐育科技有限公司开发。兆易创新科技集团股份有限公司的金光一、徐杰、王霄同样为本书的编写提供了充分的技术支持。清华大学出版社编辑为本书的出版做了大量的编辑和审校工作。在此一并致以衷心的感谢!
由于编者水平有限,书中难免有不足之处,恳请读者批评指正。读者反馈问题、获取相关资料或遇实验平台技术问题,可发邮件至邮箱:ExcEngineer@163.com。
编 者
2023年5月