长工微电子杯企业赛获奖经验分享

长工微电子杯企业组竞赛

比赛介绍

最近参加了一个学校联合企业举办的一个名叫长工微电子杯的一个比赛,去参加的组别是企业赛。至于我为什么会参加这个比赛呢?那当然是为了:钱…啊呸,当然是为了提升自己的单片机应用测试能力啦,难道是一等奖奖励5000元,二等奖奖励3000元我才去的吗?
下面来看看比赛方式:

在这里插入图片描述

初赛

在这里插入图片描述
在这里插入图片描述
设计理念:为了解决以往板子集成带来的问题,比如电流过大对贵重芯片造成永久性损害、电源损害后电源电路替换困难、功能模块替换不方便等问题。本次为IS6807A设计应用核心板遵循的是模块化思想,将主控、电源、用户、功能进行模块化设计。还对板子进行了安装保险丝保护、模数信号线分开铺铜实现数模隔离、多电源接口引出、IS6807A预留接口引出,额外引出adc和pwm输出接口,usart数据接口,最后再搭配一个可调电压输出模块以适应用户不同的电压需求。用户人机交互采用的是小巧并且高效率的oled显示屏、按键开关、led灯
在这里插入图片描述
上图就是我设计并且焊接出来的成品啦,通过录制视频的方式对它的各种功能讲解与测试,踩这给分点讲解自然就很容易通过初赛啦。

决赛

决赛的话就是在比赛当天早上进行一个开幕式,由领导宣布比赛开始,然后工作人员就会把我们带到一个单独的焊接室进行比赛。比赛时长为一个上午加一个下午,工作人员会统一提供企业给我们发放的模块进行测试。然后会在决赛的微信群里面发布试题。这时比赛就是正式开始了,我们要在规定的时间内完成如下的所有任务,最后由几个评委进行评分,谁做出来的性能较好优先拿奖,其次就是按照比赛时间划分排名。
在这里插入图片描述

赛题分析:

任务1:第一题其实是比较难耗时比较长的,他的潜在意图是要你会使用这个模块。要完成这一题,首先是要去阅读芯片的使用手册,模块有18个引脚引出,你要了解每个引脚是干什么的,要接高电平还是低电平。在了解完这些后就要初始化pwm输出引脚接入模块了。做到这里,第一题就迎刃而解了,最基础的原理就是调节pwm的占空比来控制output的输出电压了。
任务2-3:其实这两题差不多,实现原理就是通过adc通道采集输出端口的电压值,并且通过pid反馈调节pwm的占空比数值,达到输出电压稳定在1.2v。这两题的话只需要调节比例系数就可以了,因为题目没要求输出能否有毛刺震荡。第三题和第二题需要注意的点就是我在实测的过程中发现接入负载后,1.2v对应的adc值会变小。
任务4-5:学习过自动控制原理的同学应该都知道,要解决过充和震荡问题的话是需要调整pid的参数的。但是这一天我有一个巧妙的解决方法,就是把反应曲线往下压。具体实现方法就是通过软件设置pwm值的时候,用延迟逐渐增加pwm的值,这样的话它就不会一下子“冲”过了1.2伏的平衡线,就没有所谓的超调。震荡的话由于我使用的是f103rc,300m频率输出定时器的可装载值不大,换言之就是精度小,所以基本不会震荡。
任务6:芯片使用过程中有纹波输出是避免不了的,因为这个和芯片的性能有关,在软件上实现基本不可能。所以要解决这个问题只能在硬件上着手。一个最常见减少纹波的方法就是接入一大一小的电容进行滤波。我选用的是100uf和2.2uf的电容外接,这时产生的纹波就从原来的47mv下降到24mv。
任务7:任务要求参数频率不限的三角波,实现这个的思路我是借助于呼吸灯实验的实现思路。通过参数由大变小与由小变大的pwm值来调节led的亮度。三角波也是如此,通过定时器产生由大变小以及由小变大的pwm值即实现了三角波的产生。
任务8:方波相对来说比较简单。设置一个定时器为50hz,每进入一次中断就把pwm值调节成最大与最小循环就可以了。但是要注意pwm剧烈变化的时候会使模块输出波形产生毛刺震荡,需要逐步变化调节,不然性能分会扣很多。
任务9:正弦波其实也不难,主要是我之前做过一个风力摆的项目涉及到正弦波函数的使用。首先引用数学库“math.h”。然后根据函数关系式 PWM=27+27sin(2.03.14159*t/1250);首先算出40hz对应的时间,说明每经过0.025s就要完成一次sin周期。我的定时器设置的是10khz,说明每进行250次中断sin就要经过一个周期,所以我每次经过中断就把t加5,根据公式这样子250次后就走过了2π了。公式中+27的意思是把函数往上位移,不然它参数负数,因为pwm是不可以输出负的。
在这里插入图片描述

收获与总结

这次比赛我很荣幸获得了二等奖(毕竟第一名是个我认识的牛人,一个上午就做完了我比不过哈哈哈),然后在比赛结束后几天时间就颁奖以及发放奖金了,可把我高兴坏了毕竟我还只是个学生,3000块对我来说已经很多了。通过这次比赛我也认识到了自己的不足,比如说我的adc采集引脚没有进行功放保护导致比赛过程中因为电压太大而烧坏了我的stm32芯片呜呜呜。还有就是比赛过程中有点手慢脚乱的感觉,因为比赛开始前没有写好相关的初始化代码。示波器的使用方面以及英文手册的阅读还需要提高。无论怎样,这次比赛还是收获满满的,希望自己再接再厉!
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值