目录

一、学习篇

51单片机:

python爬虫:

stm32单片机:

ad:

立创EDA:

openmv:

ardunio:

ESP32:

汇编语言:

ROS:

FreeRTOS:

matlab:

嵌入式Linux:

FPGA:

二、竞赛篇

广州市六校联赛

比赛阶段:

2022广东省电赛省赛

准备阶段

比赛阶段:

总结:

三、一些整活小项目

无刷残影小车:

手柄遥控器:

小电视:

电子蚊香:

刷win10系统:

四、不足与改进

五、对未来的展望


一、学习篇

51单片机:

大概是21年末考完试,大学已经上了一年感觉自己还是啥都不会,开始急了,想着要开始学一些实在的东西以后好打工,相对于纯软件我个人还是比较偏向于软硬结合的方向,所以选择从单片机开发入手。之前大一的时候实际上我是有接触过一点51单片机的,但是没有系统学过,所以还是相当于不会。

开始入坑的第一个老师是普中科技,想必很多人都是从这里开始的,听了一阵感觉很多东西不是很理解,后来选择了b站up主“江科大自动化协”继续学习,个人感觉江科大的课对于新手来说更为友好,它是以一种学生的思维进行整个讲解,很容易理解。感觉通过51单片机的学习,整个人对于电子设计豁然开朗,懂得了整个单片机的运行过程,懂得了如何自己查原理图……心里有了电子设计中比较基础的框架。


python爬虫:

当时大二一开学,首先花了一个星期z在b站上自学了一些python爬虫,因为之前大一学过C语言,语法部分过得很快,后面不会的话就去现查,当时还是在b站随便找了一个up主,最后做了一个爬取豆瓣电影信息的入门小项目就草草收场。嗯,感觉纯软件还是不太适合我.......


stm32单片机:

stm32的入坑是从一次逛闲鱼的经历开始的,之前一直觉得stm32开发板很贵,直到有一天在闲鱼上看到nm二手的才100多果断买了。

这是一块野火的开发板,嗯那就开始听野火的课,听着听着感觉越听越迷糊(当时感觉野火讲的太细了,很多原理都看不明白,虽然我知道看不懂的那些以后一定有用)后来开始用野火的板子听正点原子的课,正点原子的课相对于野火的课来说,没有讲那么多底层的东西,更偏实际应用一点,对于刚刚跨入32大门的我急需刷刷成就感,到后面正点原子的课其实我也没有听完,感觉把几个重要的部分听了就可以了(GPIO,时钟,定时器,NVIC,中断,串口通信,ADC,IIC,SIP,CAN),这些学完再写一些代码,对于一般比赛绝对够用,剩下的功能可以需要用的时候再学。

后面用stm32做了很多东西,stm32是我电赛的主力军。基本写过一套功能完整的代码,后面的其他项目也是CV了


ad:

AD的学习是我初探PCB的第一步,当时整个AD学起来感觉还是比较难受的,当时我是跟着b站up主“凡亿教育”开始学的,感觉up主讲的很细,还是挺不错的(包含各种快捷键,各种库的绘制和导入),学到后面自己画了个看着极其笨重的密码锁hhh,当时很有成就感。


立创EDA:

学完AD感觉AD平时使用起来还是太笨重了,所以选择了更为简单的立创EDA,教程一搜就可以收到,我后续的很多项目都是用立创EDA实现的,立创EDA里面还有很多开源的小项目,平时也可以玩一下,另外还配套每月免费打样,感觉很适合刚入门的大学生。


openmv:

openmv是为准备打电赛学了一点点,也可以说没怎么学,最后视觉方向交给其他队友了,当时就实现了个识别数字,后来用openmv看CSDN上大佬的代码,实现了一个视觉寻迹,openmv不如k210 


ardunio:

学了51和stm32来看,ardunio可太友好了,当时是跟着b站up主“太极创客”学的,它编程十分的简单(有基础的同学一下午就可以学会)ardunio都是引用各种各样的库,很多东西都不用自己写,但是stm32用惯了之后感觉ardunio虽然简单,但是因为没有底层的一些操作,感觉还是不如32用的顺,可能是引脚太少功能太局限的缘故。


ESP32:

当时开始学esp32还是好兄弟邀请我学的,我一般用ardunio的操作环境,在vscode 中安装platform io,然后就可以用vs快乐编程了,当时是跟着b站up主“Homepea”学习,简单来说就是用ardunio的编程方法去操作一块更为强大的芯片,感觉还是十分的好用。ESP32在国外很火,可能也是因为它好用的缘故吧。


汇编语言:

汇编语言是大二有关于汇编的课(微机原理和单片机)要上,用的实验软件是Masm for Windows 集成实验环境 ,当时通过汇编的学习,明白了很多计算机的寄存器操作方法,现在看来感觉汇编还是太古老了,一堆寄存器的操作着实让人头大

当时也是用学校的试验箱完成了很多功能的测试,最后用汇编完成了一个电子密码锁的课设


ROS:

当时因为要参加广东省电赛,项目需要,便斥巨资买了一套ROS机器人,从最简单的小海龟开始,一路上磕磕巴巴的搭出了一个ROS小车,因为是在树莓派4b上运行,效果实在是不佳,当时用的是“亚博”的东西,个人认为亚博封装太严重,基本都是教一些顶层调用,底层的代码完全不教,这使我实现自己的想法和功能的时候也是百般折磨,需要实现某些功能的时候基本就是一点一点在网上查,一行一行代码慢慢试。整体学起来很难受,以后应该不会再用亚博的东西了.......


FreeRTOS:

FreeRTOS是每个嵌入式工程师进阶路上必不可少的一步,FreeRTOS是跟着b站up主“嗨小易”学的,up主是根据stm32的FreeRTOS讲的,可以实现学习+实践结合,从这里开始我就开始在CSDN上记笔记了。

FreeRTOS_Vizio__的博客-CSDN博客


matlab:

matlab纯纯是因为上课要用,当时信号与系统实验没好好做,数字信号处理又要用,索性学了一下简单的matlab操作,实现了一些简单的基本的数字信号处理的作业。

Matlab_Vizio__的博客-CSDN博客


嵌入式Linux:

跟着正点原子的“左盟主”学的,到现在没听完,感觉从FreeRTOS到Linux开发是一个大台阶,用的芯片是imx6ull,目前只学了环境搭建和裸机开发,其中各种操作还是挺复杂的,裸机开发给我学麻了,后面因为到期末基本就没怎么动过了,嵌入式Linux还在学习中


FPGA:

学校有VHDL语言的必修课,学了FPGA之后,感觉FPGA和其他类型的开发芯片还是有很大区别的,之前写代码一度被绕晕在“串行”和“并行”中,用VHDL也实现了一些简单的功能(分频器,计数器,电子秒表,交通灯,抢答器)

假期学校发(借)了一块正点原子开发板,想着不利用一下就浪费了,现在在自学Verilog,之前第一次用Quartus还是在数电实验,现在已经用的比较熟练的,个人认为Quartus还是非常好用



二、竞赛篇

广州市六校联赛

选题:

当时有三道题可以选,因为之前一直在玩小车,所以果断选择小车题目。当时题目是模仿2021国赛F题《智能送药小车》,对地图做了很大的简化。

分工:

        我负责小车整体框架的代码编写,硬件测试。另两位同学,一位负责辅助我写一下小车代码的部分功能,一位负责视觉识别车载物体的种类。

比赛阶段:

        当时那段时间压力还是比较大,这是我第一个综合起来的实战项目,因为比赛DDL的限制,我基本上是每天都去实验室做小车,在此过程中还是出现了不少bug,基本把所有的坑都踩了一遍,更换过电机,点燃过芯片,各种代码上的bug就更不用说了,因为当时赛道质量不是很好,反光很严重,使用传统的红外传感器寻迹效果很差,后面改变思路用openmv视觉寻迹,效果还不错,当时整车的电路板基本都是自己在立创上画的。

 

在这特别感谢一下我的好兄弟奇数岳,我遇到问题的时候基本是我们两个一起debug,帮我解决了很多问题,经常陪我在实验室熬到晚上11点多才回宿舍。最后比赛的时候小车临场出bug程序疯狂跑飞最终在决赛阶段仅仅拿到了优胜奖(7/70),还是有点可惜的。

             

这次比赛最大的问题是:工作分配不均衡,感觉不能一个人独揽主干部分,这样整个项目做起来还是太累了。这次比赛也为后面的比赛积累了很多的经验。


2022广东省电赛省赛

准备阶段

选题:

        因为广东省省赛属于自由命题的,没有四天三夜的限制,所以大家越卷越好,当时觉得做一个智慧医疗的主题比较好,顺应当时情况,选择做一个核酸检测系统。

功能大概是这样的:

在新型冠状病毒肆虐全球的背景下,为了有效降低医护人员在给病人进行核酸检测时被感染的风险、提升咽拭子核酸检测采样的规范性,减轻医护人员的工作压力,提供时间上更为灵活的采样模式,为核酸采样者提供更为安全的检测模式。该核酸检测系统包括:总控制台核酸检测模式设置(单检/混检),扫码器扫码并上传数据,机械臂咽拭子采样,智能小车对区域环境和人员消毒的功能,真正的实现了全自动化,全无人化的核酸采样点的全部功能。

分工:

        我负责ROS场地消毒小车的制作,ROS机械臂的消毒部分的制作,核酸指示灯的制作。另外两个同学负责ROS机械臂采集核酸部分的制作,系统总控台的制作,扫码台的制作,网页数据终端的制作,3D打印元件(棉签盘与试管盘)的制作,FOC闭环控制棉签盘与试管盘。

正式准备:

暑假一回家大家就开始着手准备这件事了,已经开始,我们组内规定就是无特殊情况3天开一次20分钟左右的小会,当时准备阶段大家也陆陆续续开了七八次会

比赛阶段:

临近比赛阶段,大家提前返回学校线下备赛,这时候大家已经把基础功能准备的差不多了就等整个系统联调,在这段时间我们出了许许多多的大大小小的问题,大问题大到整个系统完全不工作,各模块通信完全中断,机械臂硬件损坏核酸检测动作完全无法完成。最后在无数次debug之后可算是完成了整个项目。那段时间压力真的巨大无比,最终正式评比的时候也是出现了一些小插曲,好在有惊无险

总结:

        本次比赛吸取了上次的经验,整个项目分工比较合理,但是因为整体难度比较大模块多,所以整个系统运行起来还是不那么稳定,在比赛中有时候我和我的队友情绪上也不是很好(可能因为心里比较着急),总之这次比赛算是最难忘的一次比赛了。感谢我的队友!大家相互成就!



三、一些整活小项目

无刷残影小车:

使用FOC驱动四个无刷电机(大疆拆机),速度极快,功率调在10%左右,速度基本就到了四五米每秒,目前还是半成品,项目有点烂尾了,不知道奇数岳还要不要继续


手柄遥控器:

小车的配套手柄

本来是这样的最后因为嘉立创尺寸超了,最终极限改成方形的.......不过手感不错


小电视:

跟着开源项目做的


电子蚊香:

这个不多说了,一点用没有


刷win10系统:

在电脑上装双系统,按错键了系统崩了。。。。。。最终得到了一台新电脑



四、不足与改进

没好好学习课内有一段时间长期逃课............

英语比较差六级还没过........

五、对未来的展望

2023一战成硕!!!

保持一颗学习的心!!!

2022__我的嵌入式入坑之路相关推荐

  1. 强化学习入坑之路04

    强化学习入坑之路04 今天继续强化学习的学习,这些内容的学习主要参考了李宏毅的强化学习教程,在此基础上加入了个人的理解和总结.好,废话少说下面开始进入正题. 1.Q-learning(DQN) Sta ...

  2. 从小白到迷茫菜鸟的IT入坑之路

    从接触IT到现在,大概有两年的时间了,从想着写技术博客开始到现在也差不多有半年时间了,本来想着是先写计算机多操作系统的安装.但是,无奈,太懒了,还是写写自己的入坑之路吧!没准对想入门的小白学弟学妹有帮 ...

  3. 我的Linux系统入坑之路!!!!

    2019独角兽企业重金招聘Python工程师标准>>> 说起Linux,大家可能都知道好,优点比比皆是: 安全.开放.性能突出等.Linux是一套免费使用和自由传播的类Unix操作系 ...

  4. 【通信原理 入坑之路】—— 信号的包络分析2 包络分析的意义以及OQPSK调制的引入

    本篇 B l o g Blog Blog 是接上一篇未完的分析而作的,主要是继续深入理解信号包络以及包络的意义.同时,本篇 B l o g Blog Blog 是<深入浅出通信原理>的学习 ...

  5. 【通信原理 入坑之路】—— 详解IQ调制以及星座图原理

    写在前面:本博客是<深入浅出通信原理>的学习笔记,仅供个人学习参考使用 文章目录 一. IQ调制与解调的原理与过程 1.1 利用旋转向量理解IQ调制(正交调制) 1.2 利用旋转向量理解I ...

  6. mysql入坑之路(4)阿里云RDS数据备份本地恢复

    参考链接将阿里云RDS备份的qe.xb后缀文件部署到本地服务器 操作系统:Centos7 数据库:mysql5.6 因为RDS是5.6版本,所以本地安装mysql5.6(配合阿里云上的RDS数据库版本 ...

  7. Jetson Nano 入坑之路 ---- (4)配置拼音输入法

    在使用Ubuntu过程中,我们可能需要用到拼音输入法,例如想用浏览器百度点什么的时候-- 因此,有个拼音输入法还是有点点作用的.不多说了,下面就开始配置吧. 1.安装 ibus 输入法 sudo ap ...

  8. 【通信原理 入坑之路】—— 信息论部分 离散无记忆信源的不等长编码 之 霍夫曼编码过程详解

    还记得在上一篇博客中,我们讨论的离散无记忆信源的等长编码吗,我们最后得到的结论是 -- 如果使用等长编码,那么对典型序列编码的编码效率是最高的.然而,要满足较高的编码效率,同时还要保证误码率的情况下, ...

  9. 【通信原理 入坑之路】——信息论部分 之 离散无记忆信源的等长编码

    课本上的讲解公式实在是太多啦!看得人头大,那么本文试图从繁杂的公式中梳理一下几种等长编码的方法,并在最后给出一些解题技巧.我们开始吧! 文章目录 离散无记忆信源的等长编码 1.1 单符号等长编码 1. ...

最新文章

  1. 脑电实验注意事项及实验过程中伪迹识别
  2. Kotlin学习入门笔记
  3. linux 切换python版本_linux下多个python版本切换如何设置
  4. 通过nginx链接mysql事务问题_nginx-关于phpmysql的事务
  5. Robotium导入被测源码遇到问题 had used a different Landroid/support/v4/view/ViewPager
  6. java里氏替换原则例子_java 设计原则(六)里氏替换原则
  7. 大工计算机基础在线作业答案,大工1209《计算机应用基础》在线作业123.doc
  8. 使用SharedPreference保存用户数据的步骤
  9. 【面试记录1】爱立信5G基带开发工程师
  10. Sketch颜色替换更改插件 PasteDirect v1.0破解版
  11. 2013总结-2014计划
  12. python 切片步长_python 索引+切片+步长
  13. html骨架效果,html5 页面基本骨架
  14. mac虚拟机(windows10)装powerdesigner界面模糊或图形菜单很小问题
  15. Chaos Emulator v0.2.3 自建引力模拟器分享
  16. 02 who——open、read、close
  17. 云原生Tekton之触发器Trigger
  18. jquery slideToggle() 效果
  19. 微信备份到云服务器失败怎么回事,icloud云备份失败怎么办 icloud云备份失败原因及解决方法...
  20. 【极简教程】用 Mkdocs 库发布你的网站

热门文章

  1. 基于模型预测控制(自带的mpc模块)和最优控制理论的Carsim与Matlab/simulink联合仿真实现汽车主动避撞和跟车功能(acc自适应巡航)
  2. ELK日志分析系统搭建 v6.0.0
  3. 20180125 high cohesive low coupling
  4. 【Linux后台开发系列】Nginx源码从模块开发开始,不再对nginx源码陌生丨源码分析
  5. chinesesocr+windows平台配置(能踩的坑我几乎都踩了)
  6. 视频管理软件技术分析报告(三)--VMS软件支撑技术分析
  7. Win7 下如何注册OCX控件 。0x80040200错误。
  8. [移动端]移动端设备属性
  9. 详解JSON数据格式
  10. [CTFSHOW]XSS入门(佛系记录)