一款兼容STM32和51单片机的实验教学平台开发
2019-07-12金国华张大力
金国华, 毕 胜, 王 璐, 张大力
(1. 大连海事大学 国家级电工电子教学示范中心, 辽宁 大连 116026;2. 大连理工大学 航空航天学院, 辽宁 大连 116024)
单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域。由于51系列单片机应用较早,技术较成熟,当前很多高校的单片机课程、实验、课程设计都是围绕着51系列单片机开展[1-4]。随着单片机应用领域对单片机功耗、运算性能、开发工具、系统整合等方面的要求越来越高,意法半导体(ST)公司推出的STM32F1系列超低功耗32位ARM微控制器,采用Cortex-M3内核,具有较低的电压范围、高速的运算能力、优异的实时性能、杰出的功耗控制、极低的开发成本、丰富的外设等优点,在嵌入式系统中、低端领域特别是医疗、汽车、家电、仪器仪表等领域的应用日渐广泛[5-7],因此许多高校开始进行单片机课程的教学改革,引入STM32F1系列单片机的教学。在微机单片机课程的教学过程中实验和实践环节非常重要,如何确定一套最适宜学生使用的实验设备,在复杂性、典型性、方便性、可靠性以及设备成本间如何取得最佳均衡是一个需要教学工作者认真研究的问题[8]。市面上STM32教学实验平台不能很好满足本校课程的要求,实验内容不能自定义、平台价格昂贵、维修不便、编译软件不符合主流设计的要求等诸多缺点[9],因此我们决定根据微机单片机实验室对实验、实践课程的要求量身定做、自主研发设计一款兼容STM32和51单片机的实验教学平台。
1 实验教学平台系统设计
1.1 系统框架模型
实验教学平台设计采用模块化、结构化的理念,系统设计主要由STM32/51单片机核心板、I/O扩展板和外设集成底板构成。系统框图见图1。
图1 实验教学平台系统框图
1.2 STM32核心板
STM32芯片种类很多,综合考虑外设资源、运算能力、功耗、成本、学生的学习能力等方面,决定采用基于ARM CORTEXTM-M3 内核的、意法半导体(ST)公司原装进口的高性能MCU——STM32F103ZET6。为了方便学生操作并节省成本,在设计核心板时把J-LINK仿真电路附带上,因此不需要单独配置仿真器。STM32核心板结构示意图和实物图见图2。
图2 STM32核心板的结构示意图和实物图
1.3 51核心板
51芯片种类很多,跟STM32相比相对简单,容易上手,综合考虑外设资源、运算能力、成本、学生的学习能力等方面,选用宏晶科技的LQFP44封装、支持硬件在线仿真的IAP15F2K61S2。设计的51核心板做到了软启动下载程序,而且能够进行硬件仿真(不需要仿真器),设计了一个转接板电路后该核心板能够兼容89C51至12C5A中所有型号单片机。51核心板结构示意图和实物图如图3所示。
图3 51核心板结构示意图和实物图
1.4 I/O扩展板
为了在主板面积一定的情况下,尽可能多地加入更多的外设模块电路、节约主板的面积,实验教学平台单独设计了一块I/O扩展板。 I/O扩展板主要包括STM32单片机I/O区域、51单片机I/O区域、系统电压区域、摄像头及触摸屏数据线接口区域、连接端子区域。I/O扩展板结构示意图和实物图见图4。
1.5 外设集成板
根据本校微机单片机实验和实践教学的需求,实验教学平台设计的外设集成板中包含了20个模块,分别是LED模块、RGB LED模块、TM1638键盘数码管模块+独立按键、24.4 mm(0.96英寸)OLED模块、81.3 mm(3.2英寸)TFT触摸屏模块、LCD1602模块、无源蜂鸣器模块、DS18B20测温模块、SD卡模块、ADC应用模块、电容触摸按键模块、VS1838B红外遥控模块、双路继电器模块、串口模块、HC-06蓝牙透传模块、NRF24L01 2.4 G无线传输模块、CAN总线模块、RS485模块、以太网模块、OV7670摄像头模块(带FIFO)。外设集成板的结构示意图和实物图见图5。
图4 I/O扩展板结构示意图和实物图
图5 外设集成板结构示意图和实物图
外设集成板承载了许多实验模块电路,但是各模块间不相关,只有系统电源的连接,各模块电路的输入输出全部由端子引出。这样设计的目的一是避免了黑箱教学,学生在实验时需要自己连线、搭建硬件电路,再根据电路编程,能够通过短暂的实验加深对实验内容的理解;二是方便进行二次开发,为后续的单片机相关的课程设计和毕业设计提供很好的平台。
1.6 实验教学平台
实验教学平台实物图见图6。
图6 实验教学平台实物图
2 实验设计
针对该款实验教学平台设计了基础验证性实验、综合扩展性实验、创新设计性实验3个层次的实验。基础验证性实验包括LED流水灯、蜂鸣器、按键中断、矩阵键盘、数码管显示、ADC、串行通信等。基础验证性实验帮助学生理解和掌握基础知识、基本原理、基本的程序编写和调试技能。综合扩展性实验包括电子时钟、温湿度检测、电子万年历、PWM控制、电子称、出租车计价器、触摸屏、OLED屏幕显示等。综合扩展性实验重在提高学生的综合应用能力,以及软硬件开发设计、调试、测试等技能。创新设计性实验包括智慧公交系统、雾霾检测系统、航楼控制系统、智能门禁系统、智能输液监测与控制系统等。创新设计性实验重在培养学生的分析问题解决问题的能力、动手能力、创新设计思维和团队协作意识[10]。
3 结语
本实验教学平台采用模块化、结构化、开放式的创新设计理念,相比于市面产品具有如下优势:兼容两种MCU,采用插拔式MCU核心板的设计,方便后期维护;STM32核心板板载J-Link下载器;51核心板做到软启动下载程序,而且能够进行硬件仿真(不需要仿真器),能够兼容89C51至12C5A中所有型号单片机;I/O口全部引出,并有单独的I/O扩展板可供插线,节约底板面积,方便实验操作;底板做了可靠的电源保护,并且有电压电流监测;底板外设资源丰富,集成了20个模块和2个模块扩展槽。该平台具有良好的可扩展性和稳定性,为实验、课程设计、科研、电子设计竞赛、大学生创新创业训练等提供一个灵活可靠的硬件及软件调试的平台。