采用ARM技术知识产权(IP)的微处理器,即我们通常所说的ARM微处理器,已遍及工业控制、消费类电子产品、通信系统、网络系统、无线系统等各类市场,基于ARM技术的微处理器应用占据了32位RISC微处理器90%以上的市场份额,ARM技术正在逐步渗入我们生活的各个方面。 ARM已成为嵌入式的代名词,学习嵌入式就是学习ARM。
ARM Cortex系列提供了一个标准的体系结构来满足不同的性能要求,其处理器基于ARMv7架构的三个分工明确的部分。A部分面向复杂的尖端应用程序,用于运行开放式的复杂操作系统;R部分针对实时系统;M部分为成本控制和微控制器应用提供优化。
面对丰富多彩的嵌入式世界,我们该如何选择学习的内容与形式呢?
ARM公司1985年开发出全球第一款商业 RISC 处理器,ARM7于1993年推出,之后还有ARM9、ARM11,都得到广泛使用。2004年开始推出更新的ARM CortexM3、A8、A9、A15,取代ARM7、ARM9、ARM11,广泛运用在嵌入式领域中。
CortexM3是首款基于ARMv7M架构的处理器,是行业领先的 32 位处理器,适用于具有高确定性的实时应用,是专门为了在微控制器、汽车车身系统、工业控制系统和无线网络等对功耗和成本敏感的嵌入式应用领域实现高系统性能而设计的,它大大简化了编程的复杂性,使ARM架构成为各种应用方案(即使是简单的方案)的上佳选择。
基于CortexM3的STM32系列控制器已经是工业自动化领域的主流微控制器,也是在全国大学生电子设计竞赛中采用的主流微控制器,高校教学必须跟上技术市场的发展。我们已经成功进行9个学年基于CortexM3的STM32教学,并且创造性地使用Proteus仿真主流微控制器STM32进行了3个学期的实验教学,填补了国内外高校Proteus软件仿真STM32实验教学方面的空白。硬件实验+软件仿真,二者结合,很好地完成了实验教学,极大地提高了教学效果。
为了更好地进行嵌入式教学,我们应该积极动手实践。笔者于2010年3月设计了基于STM32F103VBT6的AS05型“STM32SS实验板”,2013年9月又设计了基于STM32F103VET6的AS07型“STM32+ARDUINO实验板”,用于自己的学习与教学中。如果读者需要本教材中的实验板/开发板和程序(下册第5、6章提供了49个实验,其中包括15个Proteus仿真实验。另外还有常见扩展模块实验,GCC实验,项目实训等),课件和课堂练习,可联系hustp_jixie@163.com。
下册教材中包括:STM32CubeMX和HAL库,MDK5,Proteus,机智云,乐为物联,产学合作协同育人项目等。特别是Proteus仿真STM32和LCD,都是首次应用,应注意实际硬件与仿真的区别。为了配合后续实训课程,在第10章编写了教育部2018年第二批产学合作协同育人项目“嵌入式系统原理及应用”的实训项目四轴飞行器,此为与广州粤嵌通信科技股份有限公司合作的教学内容。
第7章和第10章的Zigbee模块和资料由“隔壁科技”提供;第9章的MP3播放器是网友“柯南大侠”的开源作品,电参数模块和资料是艾锐达和立天迅捷提供的,“乐为物联”提供了毕业设计咨询,智能家居使用了“机智云”的平台和资料;第10章的两轮平衡车是由秋阳电子设计制作的,四轴飞行器的资料是匿名科创开源提供的,参考并摘录了一些网友的博客文章(文中已分别注明)。广州风标提供了Proteus仿真软件的试用和指导以及PlayKit开发套件。特此鸣谢!
2011年9月编写了初始讲义,经过8年的教学使用,逐步修改完善并于2019年正式出版。本书有两大特色:首次详细介绍了Proteus仿真STM32的方法;比较全面地叙述了基于STM32的四轴飞行器以及新的光流、UWB、视觉等模块的应用。
这里还要感谢华中科技大学出版社的编辑和使用上册教材的老师,是你们鼓励我完成了下册教材的编写,也特别感谢我的妻子和儿女,让我有时间完成这项工作。