实物设计为依托的单片机课程体系改革
2024-01-12李帅波
赵 鹏 钱 美 李帅波
(新疆理工学院 机电工程学院,阿克苏 843000)
单片机课程的实物设计是对“电路分析”“模拟电子技术”“数字电子技术”“传感器原理”“C语言程序设计”“电子线路CAD”等课程的综合应用。实物设计的关键在于PCB制作,可采用万用板、手工PCB或工业板,如采用万用板焊接就存在抗干扰能力差、抗机械冲击能力弱等问题;而采用工业板需要将设计图纸交付到工厂按先后排序、生产及邮寄,如需加急则费用更高,也存在过分依赖PCB生产商,保密性差等问题。对于设计初期的电路还要调试、优化设计方案再加工,严重影响了开发的经济性和时效性,导致地方院校实物设计结果的验证主要以仿真为主,这已成为电气电子类专业学生能力提升的瓶颈。鉴于此,根据设计要求利用热转印或感光制版技术制作手工PCB,在设计要求时效性较高或成本较为低廉的场合,如课程设计、学科竞赛、电路设计调试初期等,采用该方案最快半个小时即可完成。该方案也能加深学生对电路设计中不同电路层的理解,帮助他们对布局、布线、线宽及孔径尺寸从感性认识上升到理性认识。通过实施电路的设计、制作、焊接、软硬件调试等环节,使学生具备电子类专业“电路设计与调试”这一专业核心能力,确保地方院校实现应用型、技术技能型人才培养目标。
1 PCB制作
PCB工业板的设计与制作在我国已经非常成熟,有的企业还推出了EDA在线软件,其包含常规器件的原理图和PCB封装库,支持在线下单。手工PCB是提取PCB图中的关键层,制成与工业板功能等同,只是省去了阻焊层、丝印层等外形美观、防护措施更到位的层。手工PCB制作的方法主要有热转印技术和感光法,PCB制作流程如图1所示。
图1 热转印及感光法PCB制作工艺流程
热转印法和感光法实质都是将PCB图1∶1呈现在铜基板上,然后通过蚀刻环节保留铜线和焊盘,通过钻孔、焊接环节制成成品。由于其省去了多个工序,保留核心部分,大大提升了时效性,在高校课程设计、学科竞赛、毕业设计中应用非常广泛。
热转印技术设备要求简单,但热转印过程中油墨容易断线、移位,适合于设计简单、布线较宽的如传统电源类产品的单面PCB制作中[1];感光法采用光致成像图形转移原理,虽然需要制作或采购感光板、曝光机,但其精密度高,适合于布线较为复杂的控制电路、高频电路的设计[2],还可以利用过孔铆钉或过孔金属化技术制成双面板。利用感光制版法制成的手工PCB如图2所示,其控制器采用LQFP44封装的IAP15W4K58S4单片机,设计精度非常高。
2 单片机的选型及课程体系改革
2.1 单片机的选型
单片机主要有8位、16位及32位,其中8位单片机以51系列为代表,虽然处理速度较慢,但是却具有寄存器少,操作简便等优点;16位单片机有MSP430系列,由于近年来厂家常用它赞助学科竞赛,在高校中也有应用;32位单片机以STM32为主流产品,学生普遍使用的主要采用Cortex-M3内核,通过锁相环倍频输出,频率最大可达72MHz。16位和32位单片机虽然性能优良、接口资源丰富,但其寄存器较多,对于以获取理论知识为主的普通地方院校的初学者要通过操作寄存器实现特定功能有一定的难度,学生在一知半解的情况下很难巩固所学知识,这也影响了学生学习的积极性。STM32系列虽然有较为成熟的HAL库供初学者使用,初学者也能快速入门,但由于过分依赖库函数导致无法深入了解单片机,对于程序设计中的冗余项无法排除,不能实现单片机控制系统的高效运行。近些年因“新冠”疫情及国际形势的影响,16和32位单片机的生产商主要以国外为主,导致货源和价格极其不稳定。对于大多数生源质量一般的地方院校,可以考虑将其作为单片机课程后续的选修课供感兴趣的学生选学[3-4]。
国产单片机在高校的应用中以增强型51系列单片机居多,主要采用8位的1T系列单片机如STC15、STC8系列等,一个时钟周期就是一个单指令周期,是传统的12T单片机的12倍。其内含时钟和上电复位电路,时钟频率可通过软件最高设置为24 MHz,内部集成了ADC、SPI总线接口、多个串口、输入捕获、输出比较及PWM输出等较为丰富硬件资源,非常适合初学者,本课程选择STC15系列单片机IAP15W4K58S4,工作电压范围为2.5~5.5 V,用户可将程序存储器FLASH当作EEPROM使用,其良好的控制性能可以实现对四轴飞行器的控制。
2.2 单片机课程体系改革
地方院校培养方案的定制一般紧紧围绕工程教育专业资格认证,专业核心能力的体现以实物设计为依托,能更加凸显电气电子类专业“沟通、团队合作、社会责任感、工程伦理”等方面的内容。为后续学生能力培养实现国际实质等效、进入全球工程教育的行列打下坚实的基础。以单片机理论实践一体化教学为支撑,其与“电装实训”“电子线路CAD”“PCB制作”等课程相互融合,使学生从焊接、调试、应用、自主设计、验证到答辩,具备电子设计方向的能力要素[5-6]。其流程如图3所示。
3 单片机理论实践一体化教学
“单片机原理及应用”课程采用理论与实践相结合的教学模式,对于教室要求配备独立的电脑和相关软件,结合学生焊接的开发系统按要求设计符合特定功能的实践项目,区别于传统的职业教育教学模式,增加了讨论环节,通过严格的课堂考核制度,调动学生的主动性,使理论与实践有机结合。实践内容力求趣味性,以提高学生的学习兴趣[7]。具体授课模式如图4所示。
图4 理论实践一体化授课模式
任课教师根据应用型人才培养的需求,设计出具有专业特色的开发板,该开发板采用较为先进的增强型51单片机IAP15系列,包含了单片机课程及实验的所有典型应用并配套有相应的实验指导书。每个项目的软件设计采用模块化程序设计思想,便于程序的移植、升级与维护[8]。教师设计、学生焊接调试后并应用于后期单片机课程学习的开发板如图5所示。
课程最终的考核项目的选题以全国大学生电子设计竞赛的题目类别为切入点进行分解,设计指标和难度要求较低。具体分为仪器仪表类、运动控制类和电源类设计项目。因其为A类赛事,命题有一定的前瞻性,能拓宽学生的知识面,提升学生综合应用所学知识的能力,也能凝聚学生的团队协作精神,增强学生的集体荣誉感。教师参与指导与答辩能提高指导教师水平,为后续实践教学改革中提升综合型、创新型实验的比例提供借鉴,也能为毕业设计命题的把握提供更加开阔的选题方向[9]。根据设计要求利用热转印技术或感光法制作手工PCB并应用于单片机课程考核的实践环节,任课教师汇总了Altium Designer常用集成封装库,对于有特殊尺寸的封装采用游标卡尺测量后自行绘制封装并共享给学生,设计效率和制板成功率明显提高,每位学生承担一个设计项目,仪器仪表类和运动控制类单片机课程考核作品如图6和图7所示。
图6 仪器仪表类设计作品
图7 运动控制类设计作品
4 库函数的建立及常见问题分析
4.1 单片机C语言库函数的建立
高级语言的最大特点是其移植性较强,学生学习初期采用寄存器实现特定功能,随着学习的深入任课教师可以引导学生构建具有特定功能的库函数,库函数将特定功能的寄存器封装在一起,库函数的建立可以使学生加深对单片机操作的理解,也能使学生快速过渡到提供库函数的32位单片机STM32的学习中。其包含“.h”文件和“.c”文件,其中“.h”主要实现位定义、全局变量的声明、函数的声明;“.c”文件主要实现对“.h”文件中声明函数的定义。为了避免头文件内容重复引用定义,头文件中使用“#ifndef……#define……#endif”宏定义。常用的库函数包含人机接口类,如:4×4矩阵键盘“Key.h”和“Key.c”、OLED显示函数“OLED.h”和“OLED.c”;特定功能类函数,如“UART.h”和“UART.c”、“ADC.h”和“ADC.c”、“PWM.h”和“PWM.c”等。库函数的积累可以大大提升设计的便捷性[10]。
4.2 程序移植过程中常见问题分析
无I2C总线的单片机与I2C器件实现数据交互时,可采用单片机I/O模拟I2C操作;当将STM32提供的外围模块如高精度ADC、手势识别等的库函数移植到STC15单片机时,移植不成功的主要原因是时序不匹配,可以严格按照操作时序图加以解决;因STC15单片机可以通过STC-ISP软件设置其工作频率,当频率变化时其定时时间、串口通信的波特率都会发生变化,对于外围器件的操作还会造成时序混乱,可以根据不同的时钟频率定义专门的延时函数,并应用于外围电路的时序操作中,实现程序的兼容设计;串行接口的使用要占用单片机定时器的资源,当使用多个串口时如蓝牙、串行超声波或GPS/BDS模块同时使用时,因单片机只支持二级嵌套,程序执行过程中会出现因不同的串口中断导致数据传输错误的情况,可以采用分时复用的方案加以解决。
5 结语
以单片机为控制器设计特定功能的系统,包含软件设计和硬件设计,其实物的设计是一项综合性的内容,为使学生实物设计顺利实施,可以采用提高设计实物的趣味性、规范PCB库、构建与共享特定功能C语言库函数的形式,调动学生的主观能动性。地方院校电气电子类专业人才培养中,多课程与手工PCB制板技术有机融合,以实物设计为验证依据,以单片机课程考核为载体,能充分体现电子设计方向的能力要素,达到高素质应用型人才的培养目标。