写在前面——说说我的故事

                平淡却不平庸,简约而不简单!这就是我,一个丢在人群中你就再也找不出来的大男生,却有着自己的追求,渴望以自己的方式来为社会做点什么,不祈求惊天动地,能达成自己小小的愿望足矣!目前是一门通信工程专业的在校学生!

       说说大学的事吧!刚上大学的第一年,还就知道玩,那时候还没点电脑去,于是一下课就三五个人甚至于成群结队的去后门网吧上网,要是太晚的话,就通宵算了……这样的日子持续了一学期。在大一下学期的时候,情况有所变化:我自己买了电脑,于是阵地转移了,变成了在寝室“搞起……”于是,整个大一就这样度过了!除了担任了一年系干外,别的真没留下什么了!大二,对我来说是大学生活状态的改变,也是人生的一次转变!在老师的推荐下(虽说我过得浑浑噩噩,不过没挂科,专业成绩还是挺靠前的),我有幸进入了学校的创新实验室——这个刚上大一的时候,老师就带我们去看过的地方!我们进入看了学长学姐们做的板子、电子产品、单片机系统、密密麻麻能把人绕晕的电路图……只记得当时很崇拜的感觉,也问了学长们很多很不专业的问题,渴望有朝一日自己也能做一个东西出来!只是前脚出门,后脚便忘了,没再留意过实验室的情况!只是万万没想到,时隔一年,我居然就这样就来了!

        初来乍到,实验室知道老师给我们(和我一起进来的)安排了一个大四的学长指导我们,那学长倒是蛮牛逼的,主攻FPGA,曾经在全国大学生电子设计竞赛中取得湖南省赛区二等奖的好成绩!只是他似乎更多的时候是在出去找工作,在实验室的时候,也很少告诉我们怎么学,也怪我那时候刚进去比较害羞,不敢问。否则,有个好的师父带,也要少走好多弯路!后面自己慢慢的从最基础的东西开始学起,从学Altium Designer画电路图、绘制PCB,腐蚀板子、焊接电路做起!既然自己什么都不会,那就先给别人打下手,慢慢地学嘛!过了一段时间,学长建议我们可以学习单片机了,就从最简单的51系列单片机学起!于是,我们在学长的参考下在淘宝上买了一套郭天祥的51单片机开发板,送了视频,还有很多代码、资料。接下来就是漫长的学习学习过程了,对于一个分不清究竟那块芯片叫单片机,还是那整个开发板叫单片机的小白来说,路还远着!边做板子,边看单片机视频,边给那学的只言片语的C语言打补丁。单调,却极其充实,那是的心,很容易满足,哪怕点亮一个led灯,都会兴奋的一个人在那里傻笑!就像一个4、5岁孩子,一颗糖就可以破涕为笑!大二上学习就这么过去了,或许在现在看来,学个51单片机,那是极其简单的事情,根本用不着一学期。可对于那时的我来说,并不是一种浪费,我需要这段时间来对整个单片机系统有一个综合的认识,对一个单片机系统有一个完整的了解!

        大二下学期,我继续学习单片机和硬件基础,不过已经可以独立完成一些简单的项目了,做过像直流稳压电源、数控恒流源、恒压源的设计,宽带放大器、信号发生器等小项目。大二暑假有一个湖南省举办的“TI”杯大学生电子设计竞赛,我报名参加了,同时参赛的还有湖南大学、中南大学、国防科大的牛人。比赛指定使用TI公司的msp430系列单片机,有了51基础,加上辅导老师的带领,学起来还是蛮快的,基本上两个星期的时间我们就对msp430g2553单片机的基本应用了解清楚了,能用它来控制各种外设、实现我们想要的功能了。当然,我们也挺认真的,通宵调试已是家常便饭,最长的时候,我一个星期中有六天是睡在实验室的!经过接近两个月的暑期强化,我们整体能力得到了很大的提升,后来我们组做的智能温度控制系统获得省三等奖,没能得到更好的成绩,比较遗憾,不过,对于半路出家的我,当时还是很高兴的!

        在暑假为省赛做准备的期间,我们组三个人中,我是负责软件设计的,也发现我更擅长于软件方面的工作。也正是基于此,我觉得我不适合做硬件,我应该往更上一层、往驱动、系统、甚至应用程序方面去学习、突破!我想学做上位机编程,于是,我在学长那儿借了本孙鑫老师的《C++深入详解》,夹杂着视频一起看。与其说是《C++深入详解》还不如说是《MFC深入详解》,因为书中只有一章是讲C++语言本身的,而其他十几章的篇幅是在讲基于Visual C++ 6.0的MFC编程!学了将近两个月的MFC(加上我们专业本身开了可视化语言编程这门课程),做了个学生成绩管理系统,仅此而已!我又学了一段时间的Delphi,做了一个视频播放器,感觉上就是照着书上拖了几个控件,没干什么,就成了!后来,我想搭建一个自己的网站,自然而然的开始了PHP+Mysql之旅!后面,网站是建了一个,只是破的不行!当然,这些个我都只能算是入了门,对框架有个大体的了解,仅此而已。再后来,我索性不学了,理由很简单——我是硬件出身的,比软件我比不过人家专攻计算机软件的,反而会浪费了我的硬件基础!于是,我开始了我的嵌入式之旅!

        我在淘宝上买了友善之臂的mini2440开发板,加仿真器什么的一起差不多500块。到货后,打开玩了一下,觉得很神奇,就像个手机一样,可以跑系统、可以放音乐、放视频、上网……瞬间觉得以前的单片机程序都弱爆了!于是开始学习。可好景不长,我发现我学起来很吃力,前面的体验篇照着做了,后面的课程Linux命令,脚本、shell编程、Makefile、都来了。bootloader、kernel、filesystem也接踵而至。我想从我最熟悉的裸机编程开始,可人家是用汇编搞得,汇编我也不懂。于是,我知道我功力还不够,只能先放一放,补补课,找个机会再来!暂时离开arm9后,我找到了cortex M3,我买了块stm32f103zet6的核心板,然后花两块钱在淘宝上买了李想老师的视频开始学习。这个果然好多了,我本身有8位和16位单片机的基础,32位的单片机也一样的,很快就上手了!已经是大三第二学期了,老师要我们实验室的必须选一个课题研究。我们组选的是手机远程控制系统,stm32也学的差不多了,于是我一边补习上述学OS遇到的困难,一边研究我们组所选的题目,最终我们确立的方案是采用德国西门子的TC35i(GSM模块)进行收发短信与单片机进行串口通信,实现对终端的控制和检测!后面,老师觉得我们应该做个手机界面!好吧,又得学学Android了。也许是有过面向对象语言的基础,感觉Android入门还是挺容易的,我在网上找了mirs老师(似乎是叫这名吧,记不清了)的Android视频,边看边写,好像就一个下午的时间就把手机软件的基本功能实现了(当然,界面很丑,也没加优化,仅仅是功能实现),当然,前面在eclipse的基础上搭建Android开发环境的时间不计!后面又经过很长时间的综合更改调试,算是完成任务了!

      从暑假开始,我又重拾arm9开始折腾。这半年来的时间里,我粗略看了下有关于操作系统的书籍,学习了王爽老师的《汇编语言》(当然,这个是基于8086的汇编,但是思想一致的),《鸟哥的私房菜》,也看了《Linux Device Drivers》……算是有底气进军嵌入式了!现在正在做一个Qt编写的KTV点歌系统的项目,最终让他在目标板上跑起来!

        最近,我发现了一个可怕的现象,我的记性似乎没以前那么好使了,经常忘记东西,丢三落四,或许这就是程序猿的宿命吧!因此,我觉得,我有必要养成亲做笔记的习惯,把一切重要的东西记录下来,以后忘了,还能“有据可查”!所以,我决定以后,会陆续在CSDN上发博文,把我在实际中遇到的问题及解决方案发出来,作为自己的一个备份,也供大家参考。另外,以前,经常就是在网站上搜各种资料,然后下载。也有骂我们这种只知道索取的人的,可是,我们确实能力有限啊,不能提供什么好的代码和思想!就算现在,我也任然只是一个门外汉,甚至算不上熟练,离专业那更是还有好长的路要走!但是,我相信很多大牛也是从我这样过来的,也还有很多人正在走我们走过的路,我们遇到过的困难,他们或许也会遇到!所以,我大胆的把我的一些不怎么严谨和优秀的东西分享在这里,希望能帮助到大家。另外,如果有错误或者更好的方法,强烈的希望大家能够给予批评和分享!

        最后,夜深了,祝每一位怀揣梦想的骚年,都能早日圆梦!让我们互相学习、共同进步!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值