2018年全国大学生电子设计竞赛TI杯赛题简单回顾和准备经验分享

首先给大家推荐一下我老师大神的人工智能教学网站。教学不仅零基础,通俗易懂,而且非常风趣幽默,还时不时有内涵黄段子!点这里可以跳转到网站

华南理工大学   陈艺荣          邮箱:eecyryou@mail.scut.edu.cn

1、2018年TI杯赛题

A:利用TI公司指定的高精度ADC芯片制作一个万用表,要求能够测量电流、电压、电阻。精度要求忘记了。这个ADC芯片是使用I2C通信的。如果不熟悉I2C通信协议,这道题目可能连数据都获取不了。另外根据现场的经验分享,数据手册里面对某个信号要求稳定时间不低于5 us。

B:利用TI公司指定的液位测量传感器FDC2214以及指定的水泵(电压:DC12V;扬程:300cm;流量:240L/H;功率:4.8W;口径:外径8mm;体积:55*51*42mm)实现以下功能:

1、能显示液面高度【我们用的是OLED,综观三道赛题。学会使用OLED完全满足TI杯的显示要求,不会有很复杂的显示】

2、在10 内将水从50mm抽到90 mm;

3、打开水罐下方的出水口,要求此时能将液面稳定在90 mm,稳定时间必须大于10 s,精度需大于2 mm。

4、然后要求在30 s 内将水从90 mm抽到110 mm,并且稳定在110 mm,稳定时间必须大于10 s,精度需大于2 mm。【注意:此时下方出水口保持出水】

5、最后,上方的小水罐的出水口打开,往大水罐注水,也要求稳定在110 mm,精度需大于2 mm,稳定直至上方的小水管出水完毕。

C题:C题要求做一个简易电子负载,我们没有怎么看。

简单记录的参赛经验

  1. 会查看寄存器的数值,会建立函数头文件和函数文件以及添加已有模块的函数文件到自己必须掌握CCS的使用,做到:

会创建工程以及修改工程,会下载程序到TI的开发板并且进行在线调试,观看相关寄的工程【这对于现场快速编程至关重要,基本都是调用函数库进行编程】

  1. 赛前需大量搜刮自己确定使用的TI开发平台的相关中英文资料,包括但不限于:

与之相关的数据手册、库函数包、相关的项目源码和项目报告、相关的中文学习资料,特别是一些高校编写的实验教程。

举例子:可以这样搜“MSP430+12864显示屏”、“MSP430+OLED”、“MSP430+I2C例程”、“MSP430+UART”、“MSP430的ADC例程”等等。熟悉这些代码的接口,能看着代码弄懂并画出硬件模块和开发板的连接关系,具体到那个I/O口,最简单的,即使是OLED也分4个接口和8个接口的。我们无法预知赛场提供的是哪一款。所以,即便搞到了源码,也要确定源码对应的硬件,以及学会使用源码。并且确定源码可以正常工作。

建议赛前的学习:

因为TI公司只邮寄了6个开发平台。建议邮寄之前就安装好CCS,不建议安装最新版的,个人认为,TI拿来参赛的【在发放的参赛U盘中的会是稳定版】。例如最新版是CCS8,那么参赛U盘给的便是CCS7。所以安装稳定版是最好的。

另外,找代码的时候,预先确定你找到的代码时使用CCS建立的工程还是IAR建立的工程,这样可以减少很多无用工作。当然,如果你是使用CCS,那么IAR的代码也是可以参考的,但是要修改移植。

  1. 赛前实现键盘控制LED亮灭【使用开发板资源就足够了】。掌握I/O口的配置,也就是8个左右的寄存器,这个比较简单,也就是学会键盘输入和I/O口输出。
  2. 实现PWM输出【控制类比赛如果想做得好肯定得用到】,并且将能输出PWM的I/O口都试一遍。这个实验使用TI公司发的开发板和北三楼下的实验室提供的示波器就可以实现了。尝试修改占空比、频率等等。另外还要学会简单的PID控制,这对于稳定性很重要。
  3. 学会TI公司的开发平台加OLED显示屏【买一个,不贵】显示,要求:能显示所有数字和大小写字母以及“.”,最好能显示部分中文。如果能学会自己创建中文字库则更佳。

我们当时的字库,中文字库是现场创建的。OLED的字库还是很容易创建的。不过,OLED是64*128的,需要确定字高,我们当时的字高是16,显示4行。

学会TI提供的开发板的ADC测量,使用内部的ADC测量电压【结合信号发生器以及OLED可以完成实验】,试着在OLED显示屏显示测量结果

  1. 学会UART通信和I2C通信,因为很多外部的ADC芯片或者其他芯片和开发板之间通信时都是用UART通信和I2C通信【结合OLED显示屏和电脑或示波器可以实现实验】
  2. 学会编写和使用延时函数,下面这个是我们自行编写的延时函数

void delay(unsigned int t)      //延时函数

{

    unsigned int i,j;

     for(i=0;i<t;i++)

          for(j=0;j<10;j++);

}

  1. 至于中断、定时什么的就更不用说了,也需要去了解和使用。

整体准备思路

比赛的重点是测量电路设计或者控制/驱动电路设计。其他部分应该提前掌握,如果不提前掌握,那基本无法实现比赛了,除非你能一天之内快速掌握。

【作者简介】陈艺荣,男,目前在华南理工大学电子与信息学院广东省人体数据科学工程技术研究中心攻读博士。曾获2次华南理工大学三好学生、华南理工大学“优秀共青团员”、新玛德一等奖学金(3000元,综测第3)、华为奖学金(5000元,综测第3)、汇顶科技特等奖学金(15000元,综测第1),两次获得美国大学生数学建模竞赛(MCM)一等奖,获得2016年全国大学生数学建模竞赛(广东赛区)二等奖、2017年全国大学生数学建模竞赛(广东赛区)一等奖、2018年广东省大学生电子设计竞赛一等奖等科技竞赛奖项,主持一项2017-2019年国家级大学生创新训练项目获得优秀结题,参与两项广东大学生科技创新培育专项资金、一项2018-2019年国家级大学生创新训练项目获得良好结题、4项华南理工大学“百步梯攀登计划”项目,发表SCI论文3篇授权实用新型专利5项,在受理专利17项(其中发明专利13项,11项进入实质审查阶段)。
我的Github
我的CSDN博客
我的Linkedin

点这里可以跳转到人工智能网站

发表评论