大专生入行嵌入式软件的辛酸泪

2019-07-21 08:05发布

     提笔先谢谢原子哥,因为他的stm32开发板让我找到了一份嵌入式方面的工作,没有他就没有现在的我!
     我是个大专生,88年生,专业是物流,我的专业和我现在从事的工作可以说是天壤之别。前年我毕业了,毕业等于失业,说的就是我,
因为是大专生(本人不努力的结果)所以也没有学到啥技能,出来找工作也很难,所以去了一家日企电子厂当操作工了,在日企每天上班10多个
小时,每天站得累得腰酸背痛(整天打螺丝的缘故),可以说是行尸走肉地混日子。
     有一天,一个本科生来到生产线实习(日企的惯例),在交谈中得知他的专业是软件开发,月薪3000多,可怜的我加班到死一个月才拿2500
左右。从那天起,我就觉得自己未来的命运不能这样,与其浑浑噩噩得打螺丝不如最后再拼搏一记,也许依旧不会成功但也无憾了。
     下定决心后准备入行软件开发了,因为整天接触到电路板,所以最后决定下来的是嵌入式软件工程师。于是,辞职后我花了大半个月的工资去买了各种书籍,c语言入门的、数据结构、算法、操作系统等等。我的计算机基础是相当差,学起来相当吃力,但我每天坚持练习敲代码1000行,差不多半年后终于入门了,现在想想其中的辛酸不足为外人道也。
    然后,又准备学ARM单片机了,所以机缘巧合地买了原子的stm32开发板(难度相对小点适合入门),从到第一个实验到最后几个,我先敲一遍原子哥的代码,然后再尝试着自己独立写,虽然对于我来说这其中的过程非常难,但还是坚持下来了。几个月后,当我把最后一个实验的代码敲出来后,就决定去找一份工作了。
    那些天,我在51job和智联上投了好多份简历,但都是杳无音讯,也许是我大专生的缘故吧,也许没有一个HR会相信一个物流专业的大专生能搞嵌入式软件开发。直到半个月后,我终于收到了一个电话,是一个小公司让我去面试。当时的心情那是一个激动!第二天,我坐车来到了那家公司,面试我的项目经理水平相当高,问了一些嵌入式方面的专业问题,把我问得一愣一愣的,我以为没戏了,最后还好让我写了一个音频芯片驱动的代码,
这个驱动代码我很有把握(呵呵曾经背过类似的。)面试的经理看我写得不错,就没有问一些刁钻问题了,大多都是SD卡驱动、GPRS和GPS方面的简单问题,最后才晓得他们准备用stm32开发一个导航项目,而stm32自认为自学的还可以,心中暗暗窃喜了。
    一个礼拜后,我被顺利录取了,月薪3800(苏州园区),嵌入式开发。
    只要努力,一个大专生也能搞嵌入式,这是我总结出来的结果。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
43条回答
lxj19901115
2019-07-25 12:08
接着更新
,话说在把第一个项目干掉之后,用了2个月的时间,,比较恐怖了,客户催的急,而我又没啥经验,搞的那老乡也不敢帮我接啥外单了,
然后悲催的又开始了,持续两个月,没工作,没钱吃饭,没钱交房租,没钱出去玩,,,等等,,
偶尔的半个月,晚上去吃个5块钱的炒粉,都是奢侈,
没钱了,又不敢跟家里说,毕竟读了大学出来,连吃的问题,都解决不了,没脸面啊,,
后来,偶然的机会,接手了一个MP3播放器的项目,
功能很简单,就是在别人写DEMO上,增加几个按键功能
但是奇葩的问题,就来了,我从来没写过,写没看到过上2W行以上的代码,当时看代码的时候,就晕了,这句啥意思啊,这个函数又是啥意思啊,,,迷茫中,
因为别人说这个项目很简单的,而我却改了一个星期,后来还是有问题的代码,晕,,,,基础和思维太差了,,,,勉勉强强,交了单
因为前个案子的原因,那人又来找我,说要在原来的基础上,那个播放器,要带LCD屏幕显示,
因为没有生活费,虽然这个案子对于当时的我来说,有相当的难度,但是为了生存,依然接了下来,
因为要带LCD的问题,所以就有这个几个要解决,
第一,代码程序空间的解决
第二,编写LCD驱动
第三,点LCD,
第四,图片的组织,
等等,
在程序空间上上的问题,因为偶的C语言基础还可以,就果断的在写代码的时候,使用了宏定义功能,根据不同的功能打开对应的编译开关宏
编写LCD驱动的问题,花了一周的时候时间去写驱动,当时对LCD的根本就不懂,其中的原理,比如说,LCD的RAM是啥,LCD的行和列的计算
显示的颜 {MOD}的控制,等等,都不懂,后来看别人的例程在那板子上的LCD上,点亮了一个字母A,然后激动了,那天晚上喝了半瓶啤酒,为啥?
高兴啊,把棘手的问题解决了
之后,就是图片的问题,因为,要带LCD,所以有很多图片,而我,为了那400块钱的美工画图的费用,花了一周的时间,用XP上的那个画图工具
对着电脑,一个BIT一个BIT的去画,,画了100多张,尼玛,那感觉好爽,头都变大了,然后在这些图片做出来之后,给客户看,他说可以,比原来的好,当时高兴了了下
,,,话说这个带LCD的MP3播放器的案子,也花费了我两个月时间,当然学到东西比较多,另外说明了一个问题,我太笨了,,,,但是我还是坚持,

关于,这个MP3播放器的案子总结如下:
1 ,在接手任何单片机项目的时候,看代码的时候,必须要有这个原则
   A,首先找出主程序中的死循环,部分,看看死循环部分大概做了些啥
   B,找出这个工程文件当中的,中断代码文件部分,并且把每个中断是具体干啥的基本功能了解清楚
   C,在做了,之前那两个步骤之后,再返回到MAIN函数主体中,一句一句的查看,在这个工程当中用到了哪些接口,哪些模块等等
2,在组织和架构工程的时候,必须要有模块化思维
3,在对于很多文件组织的时候,比如我刚说的那个100多个图片,你要从存储器里面读出来,而且要精确定位每个文件的话,你会怎么做呢?
  如果这些文件会更新,有可能是几个,也有可能是几百个,那你又怎么去维护你的程序
  说到这里,就必须想到和要有这个思维,在组织管理同类型的文件或数据的时候,必须要有表格的思维,
  用表格去访问和读写数据

一周热门 更多>