赛氪
个人中心

蓝桥杯经验分享【国赛一等奖备考经验分享】单片机设计与开发-深圳大学曾庆计

2021-04-16 浏览 8076 收藏 19

个人基本介绍

我叫曾庆计,来自深圳大学的,曾在本科三年级,也就是去年参加了第十一届蓝桥杯竞赛,参加的项目是单片机设计与开发,这是我第一次参加蓝桥杯大赛,最后竞赛获得广东省省赛一等奖、全国决赛一等奖。
首先呢,我简要介绍一下我在这整个竞赛过程的经历,让大家从宏观上对竞赛的准备有个大致的了解。
 
备赛期间的经历
  • 我们学院当时一共推选5名同学参加单片机比赛,备赛全程都由我们学院的李雄军老师进行指导;老师为我们提供了竞赛开发板及官方指导书,这就是我们一开始到手的基础资源,然后我们就从去年寒假开始进行自主学习。

  • 大家也知道,因为当时疫情的影响,蓝桥杯的比赛时间就有所延后;可以说我们的备赛时间是很充裕的,虽然我觉得时间并不需要那么多。因为时间也是有两面性的,如果想要和好的结果成正相关,那就得建立在持之以恒的基础上。

  • 就这样,直到比赛前,在疫情期间及回校后一个月,均是自主安排时间进行学习,当然期间也是断断续续的;学院的老师在过程中也组织了两次培训,向我们提及了一些需要注意的地方;

  • 最后就是在比赛的时间,在本校参加省赛和国赛。

以上就是我历经约九个月的简要竞赛经历,简单来说就是自己安排时间学习,然后参加比赛。
 
备赛及比赛过程建议(重点)
接下来我给大家在备赛过程中提供一些个人建议,也是我本次分享的重点。
  • 重视基础;(第一点)

基础包括客观题基础和编程基础。客观题考察的基本是电控类专业基础理论知识,当然也有编程语言相关的。
在客观题这一块,自己结合大纲,先把相关专业课的内容过一遍,记一遍背一遍;再把历届的客观题都做一遍,并对陌生部分专业内容进行加强巩固;之后可以网上找找有关的客观题进行练习,加强记忆和运用。
编程基础指的是C语言基础。该单片机本身一般是用C语言进行程序编写的,因此需要对C语言的基础熟悉;不仅是编程题的需要,在客观题也会考察的。
客观题虽然占比不大,但却是差距存在的原因。因此在客观题这一块,一定要重视。
  • 全面熟悉各模块;(第二点)

这部分及接下来的部分,我主要是针对编程题叙述,毕竟占比70%。
在学习竞赛板的过程中,我建议一定要对每个模块的使用都熟悉,不局限于历年考察的模块。板子上所有的功能模块,都应该在学习的时候进行尝试,并学习好。有的硬件模块是能实现多种功能的,这在学习的时候也要全面掌握。
比如外部中断的使用,用EEPROM存储字符串,时钟DS1302存储和显示日月年等信息,这些都是历年还没考察的内容;还没考察不代表不会考察,所以我当时自己学习的时候,板子上的每个模块我都探索过,测试过。
并且,在学习单片机的时候,我建议大家一定是“硬软结合”。也就是,结合单片机的硬件信息,用C语言代码编写控制语句;学习的时候,一边理解一边编写,而不是强背代码,这样对单片机学习和掌握也会更深刻。
  • 坚持练习,查漏补缺;(第三点)

熟悉各个模块之后,接下来就是对历年的省赛题和国赛题进行练习。
练习时一定要把握时间,毕竟比赛的时候时间有限,平时练习的时候就要这样要求自己。
我当时给自己的要求是,一套题最多三小时,无论是省赛题还是国赛题,都是这样要求自己。因此我也建议大家一定要控制好练习时间,无论是省赛题还是国赛题,都可以练习。
练习的时候也要讲究方法,如果说这套题我超时了,那么就不要急于做其他套题,先把这套题练习好,学透了再进行下一套。所谓多练不如精练,熟能生巧嘛。
如果说哪个模块在练习的时候不熟悉,并当对该模块额外加强练习,而不是反复训练该套题目,这不是问题的本质。
再者,赛题的练习是需要坚持的,也是不断查漏补缺的过程。按照自己的熟悉程度对自己进行要求,三天一次,五天一次,保持应有的手感和状态。
  • 多组合多创新;(第四点)

在一开始学习各个模块的时候,我就喜欢将所学到的模块进行组合,在板子上,一次同时实现多个功能或不同功能的切换。
由简到繁,随着模块得增多,组合也变多了。自己多创新模块之间的组合类型和功能的要求,以此来进行学习和练习。
(这部分我当时抽时间练习了一个月左右,对模块的全部功能和多样搭配组合都较为熟悉;随后在练习省赛题和国赛题的时候,第一遍就感觉非常顺利。基本控制在2个半小时之内就完成设计题的要求,有些一个多小时就可以实现)
其实赛题就是模块的组合实现相应功能,当你熟悉模块之间的组合和切换之后,对赛题的练习就会顺手很多。
(这部分我还是十分建议大家去练习和尝试的,在组合的过程中,你会发现有些模块受硬件的影响不能组合在一起。或者同样的模块,和这个模块组合的代码和另一个模块组合的代码,在细节上是有区别的)
这些,只有当你多尝试多摸索,多掌握规律后,到时候无论赛题是何种组合,心中都有个底和应对方案。
同样的,赛题不局限于历年的题目。可以自己或者和队友们自创赛题,提高难度和创意。一方面在不断加强巩固,另一方面也是对赛题的猜测和准备嘛。
  • 建立自己的编写框架;(第五点,也是最后)

在反复练习编程设计题的同时,也要对自己的编程框架进行不断调整。
(比如说,各模块的控制函数代码是否简洁清晰,需不需要建立相应的模块文件,如何提高编写的效率和正确率等等)
根据个人的习惯和要求,进行反复调整。(我当时练习的时候,都将各个模块的控制代码尽量简化,并建立相应的.c文件存储调用;不仅框架美观,就算遇到问题,在调试的时候也容易发现)
以上就是我给参赛的同学们提供的五点建议,希望对大家能有启发和帮助。
最后
因为该比赛项目是个人赛,因此收获的多少,在于你付出的多少。奖项也只是一时的荣誉,在此过程中学习和掌握的单片机理论知识,才是真正永久的财富。
很感谢蓝桥杯的主办方,很感谢我们的学校和学院,很感谢李雄军老师,给了我们在这个竞赛中成长和进步的机会。

全部评论(0)

还木有观点发布哦,快抢占第一把交椅吧!

- 查看更多和发表观点请下载赛氪APP -
赛乐云AI 证书查询
取消 确认

同学~下载赛氪APP就可以进群咯~
先不聊 去下载