完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
1个回答
|
|
一、背景
突如其来的疫情,打乱了大学生的正常学习氛围,传统的校园学习模式无法实施,虽说网上教学做了相应的弥补,但对于多数工科课程,只靠线上教学很难完成,单片机课程就是其中之一。 单片机这类工科课程有较强的实践需求,纸上谈兵很难达到预期的效果,所以开设这门课程的学校均建立有相应实验室。 而经典的实验室设备很难让学生个人拥有,在家独立完成实验,因为实验设备的设计及实验内容的编制均未考虑到这样的场景。 能否设计一款适合学生单独拥有,且可以自己完成实验的单片机学习实验装置呢? 本文尝试用我设计的第四代圆梦小车构建一个适合学生拥有的掌上单片机实验设备。 二、构想和理由 圆梦小车系列设计初衷就是为单片机学习提供素材,使编程变得有趣、生动,提高学习的兴趣,提升学习的效果。 第四代圆梦小车设计主要改进着眼于以下几点:
从学生单独拥有的、独自使用的角度需求考虑,上述几点均相当吻合。 再从实验的内容角度审视。 要检验一套设备是否能满足学习单片机的教学需求,首先应分析一下单片机实验的目的。 按目前常见的单片机实验设备和设计,多数是以验证实验为主,即: 根据单片机拥有的一个个功能,设计出一项项独立的实验,验证其功能是否如教材所述,如:
…… 诸如此类。每个实验都是孤立的,只有少数的实验会整合几个内容,但很少,因为实验设备的设计就是针对单一实验的,这样便于实验指导书的编写,也便于实施、管理以及评判。 但这样的实验有价值吗?我也是学生过来的,感觉这样的实验乏味至极,不能说没有一点效果,但作用极其有限。 最大的问题在于:无法激发学生的学习兴趣,无法调动学生自身的主观能动性。不能帮助学生真正理解、掌握单片机所设计的那些功能用途是什么?在现实世界中能发挥什么作用?设计者为何要设计得这么复杂? 关于这方面的问题,在以往阐述小车设计初衷的文中已经有所讨论,此处不再赘述。 现在已经有很多学校意识到了这个问题,提出了任务驱动概念,即:通过设计特定的任务,将需要学生掌握的知识融于其中,让学生可以更全面的理解、掌握所学的内容。 但任务设计有一定难度,复杂了学生完不成,分不清是实验还是课程设计了,恰到好处的任务很难构建,尤其是单片机实验,还需要相应的硬件配合。所以,针对教学的任务驱动型实验似乎并未普及。 从中学过来都知道,数学学习中,最有挑战、也最有趣味的练习是做应用题。一个好的应用题会让你终身难忘。而应用题的设计目的是将正在讲授的内容编排到现实生活问题中,让学生感受到所传授的抽象数学概念可帮助你解决现实问题,增加学生的获得感和成就感,以及趣味性,使抽象、乏味的数学变得生动、有趣。 单片机实验实质是一样的,只是它需要硬件设备配合,变成了实验,而非单纯的文字描述。 小车作为单片机实验素材有诸多优势,首先是相对于航模、船模,车的使用环境最简单,只需要符合车大小的一块平面即可,车体积越小,所需的平面就越小。四代圆梦小车的尺寸只需要一般的书桌面即可运行。航模太难、易损。船模需要水,约束较大。 其次,车所蕴含的需求无需专业知识背景,车的需求是常识性的。 工科的实验最忌讳选择需要一定专业知识作为基础的内容,学生将无所适从,懵懵懂懂做完实验,不但无法理解实验结果,说不定连实验要掌握的知识都搞模糊了。 这也是我这么多年来一直坚持围绕小车设计学习素材的原因。 那么,对照传统的实验设备的内容,小车能一一涵盖吗? 四代圆梦小车可以抽象为以下框图: 各端口的定义如下: 每侧11根,用2.54间距的插座分成2组引出(PCB上有标号): 一组6芯的为控制线: G —— 电源地线; BAT —— 电机驱动 H 桥供桥电压输入 ,4 - 5V(正极); CT1 —— 电机控制线 CTRL1,电机控制 PWM 信号; CT2 —— 电机控制线 CTRL2,电机运行状态控制,与 CTRL3配合; CT3 —— 电机控制线 CTRL3,电机运行状态控制,与 CTRL2配合; VCC —— H 桥驱动逻辑电路及电流、电压检测电路的供电电压(正极)。 另一组5芯的为采集信号输出线: P2 —— 保留,扩展用; P1 —— 码盘采样脉冲输出线; G —— 信号地线,和控制线的电源地线内部相连; MI —— 电机电流检测信号输出线(约0 ~ 3V); VB —— 电机工作电压检测信号输出线(约 0 ~ 3V); 基于上述小车硬件,逐一对照单片机基本功能,看看是否可以完成所有的实验需求:
使用单片机控制上述操作,如果可以通过PC或其它外设通过发送命令控制,应该是最佳选择,这样就能实现学习单片机 UART 通讯功能。 UART通讯为有线方式,对于小车运动而言,不是很方便,接一个最常用的24L01无线模块即可实现无线通讯,此时就产生了SPI通讯应用需求,实现了SPI实验功能。 为小车设置特定的目标,很容易触及到单片机所有的功能。因为单片机每个功能的设置都有其针对性,多数是改善控制和实时性的,要做好小车的运动控制恰恰蕴含了这些需求。 和传统的实验室设备不同,小车用自己的运动需求将上述功能有机的串在一起了,共同完成小车的运动控制,而不是以往那种孤立的一个个实验。 这种相互依存的实验内容,一方面增加了实验的实用价值,现实中所有应用都是由多个功能组合完成的。另一方面可以加深对以往实验内容的理解,在后续实验中会不断用到前面已经做过的内容,有时还会因后续功能的要求,对前面实现的方式进行改进、优化,无疑会对该功能有更深的理解。 而单独实验方式,做过即过,不再触及,很快就淡忘了,更谈不上进一步深入探讨。 比如说,一般的AD采样实验,测一个静态的模拟量输入即可,最多对照一下精度,学会相应的寄存器设置即可。但此处的电机电流、电压采集,因为使用了PWM驱动,其电流、电压是随PWM信号波动的,为了准确采集到所需的电机电流、电压信号,采集必须和PWM输出信号同步,这远比简单的测试静态信号涉及的内容多,且更接近实战。 所以小车是一个十分好的实验载体,它原生的需求会引出很多实验内容,且能产生相互关联,还有足够空间给愿意深入学习的学生发挥。用它作为实验设备应该是最好的选择之一。 三、如何实现 既然四代圆梦小车具备这样的可行性,如何使其成为一个名副其实的“单片机掌上实验室”呢? 我想基于目前的小车硬件,尝试构建一个符合上述构想的实践平台,选择一款合适的MCU,以及合适的软件开发环境,并设计一些符合小车特征,且蕴含单片机学习内容的实验项目,以免让上述构想成为水中月、镜中花。 由于我不是真正的老师,也离开学校多年,难免有脱离实际之处,算是抛砖引玉吧! |
|
|
|
只有小组成员才能发言,加入小组>>
3262 浏览 9 评论
2942 浏览 16 评论
3442 浏览 1 评论
8949 浏览 16 评论
4035 浏览 18 评论
1078浏览 3评论
558浏览 2评论
const uint16_t Tab[10]={0}; const uint16_t *p; p = Tab;//报错是怎么回事?
551浏览 2评论
用NUC131单片机UART3作为打印口,但printf没有输出东西是什么原因?
2286浏览 2评论
NUC980DK61YC启动随机性出现Err-DDR是为什么?
1846浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-8 04:34 , Processed in 0.992037 second(s), Total 78, Slave 58 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号