单片机实际应用实例(与单片机结缘只因兑现童年时的一个梦)
单片机实际应用实例(与单片机结缘只因兑现童年时的一个梦)
我是一个平凡的工程师,标准的80后,从事单片机及嵌入式相关工作已经有几年有余。每天忙忙碌碌,上班下班,既有做出产品时的开心,也有调试程序时的痛苦。一个平凡的人,做着一些平凡的事,每天过着平凡的生活。
有人说做电子工程师是年轻人的活,过了30还不转管理无论是体力上还是精力上都无法胜任了。这句话有一定的道理,但如果兴趣依旧为何不继续追寻自己的梦想呢?从小我就对机械、电子方面的东西感兴趣。听父母说,每次买回的玩具我都要拆开看看里面的结构,美其名曰:看看为啥能动?为啥能工作。到现在有时回到乡下的老房子里,还能看到不少缺胳膊少腿的玩具呢。
特别是这个小青蛙,我拆开研究了很久
真正让我对电子感兴趣的还得从一个著名的玩具开始,它就是经典的任天堂红白机。想当初,把这个东西搬回家时还兴奋了不少时间呢,一个暑假把所有能玩的游戏都玩了遍,接着就在琢磨这东西真神奇,到底里面有啥东西呢?拆开一看发现居然全都是绿绿的板子,上面还有不少黑色的玩意。忽然觉得做这个东西的人好伟大,以后自己也要学会做这个。
80后的经典啊,我也是从这里开始对电子一类的东西感兴趣
真正开始接触电子、电脑这一块那就到大学了。当时信息太闭塞了,填志愿的时候也不太清楚计算机、电子信息工程、通信专业都有啥区别。只是问了下同乡的几个师兄,都说计算机是今后的发展。既然是这样,那就报呗。于是我把所有能填的地方都填满了计算机专业,功夫不负有心人,最后还真去了个二本的计算机系。
其实现在想起来我最应该去的就是电子信息工程或机电工程专业,毕竟这两个专业学的才是后来我们所说的嵌入式,不过好在该学校的计算机系既不偏软也不偏硬,属于软件也学硬件也学的那一种,所以大学四年还是学到了不少东西的。
大学4年的时间是短暂的,在这里我还要鄙视下某些所谓的大学老师,记得有一次上微机原理讲到8253、8255我就问:这个东西现在还在用吗?能不能弄个实物来看看?老师当时回答我说:这个芯片已经不用了,所以也不能找到实物,大家只要记住它就好。当时我就无语,既然淘汰的东西为啥要学???
不过后来事实证明这些东西老是老了一点,但现在在很多的地方还是在用的。当然也不是说所有的大学老师都是严重脱离实际的,有些老师还是很厉害的,我就有幸碰到了一个,据说以前是某个公司的技术主管,专弄单片机这块。他让我知道了任天堂红白机里面绿绿的东西叫做PCB。有时他上课会给我们带一些小的玩意,比如说让单片机做流水灯,让蜂鸣器唱歌等等,让我们这些人崇拜的不行了。也正是在他的带领下我开始与单片机结下了不解之缘。
经典的AT89C51单片机,也是我的第一块单片机
51单片机开发板,我们就是从这里开始的
现在想想当时挺有意思的,在用51单片机做完了所有实验后忽然感觉它真是无所不能,所有东西都琢磨着是不是能用51单片机完成,甚至尝试着用51单片机做个手机啥的玩玩(当然,这是无法实现的...)不过还是做了很多好玩的东西,比如说远距离万能遥控器啦,晚上偷偷的遥控对面楼的电视。51大概玩了1年左右,期间还把PCB给画了一遍,学会了用PROTEL。
在一次偶然的机会听说51过时了,ARM才是现在的老大,于是省吃俭用花了600多大洋弄了块44B0X的板子,拿回来一看傻眼了,比51复杂的多啊,光是引脚就密密麻麻的一排,看都看不清,后来听师兄说居然有人能够徒手焊接,更是佩服得五体投地。
经典的44B0X板子,还记得吗?
据说这块板子是某个高手布的线,所有的44B0X都是参考它的,堪称经典。到目前有人学习PCB走线我还要求他好好琢磨这块板子呢。
除了主芯片外,其它外围设备也不简单啊,网卡,硬盘接口,FLASH等等应有尽有,既然买了就硬着头皮学呗,不过好在有51的基础,这块板子裸奔的程序很快就搞定了,也琢磨出个味来:不管芯片多复杂,最终到底无非就是配置下寄存器而已,只要配对了寄存器其它一切都好办。在软件方面就相对复杂多了,为了搞这块板子我还特意去买了好几本LINUX方面的书,现在闲暇下来翻翻这些书还是很有感觉的。不过linux太过于复杂了,花了大半年的时间我才把这些书粗略的看了一遍。
经典的Linux书籍,你看过没有?
很多精髓的东西都没有弄清楚。这时候已经是大三下学期,刚好老师有个小项目看到我弄得还行就派我过去干了,其实东西现在想起来挺简单:有4~5路模拟信号采集到系统中,再通过AD转换变为数字信号用单片机进行运算,再把结果通过RS232发送给上位机软件。但这毕竟是我接的第一个项目,心里的忐忑可想而知,特别怕搞不定丢了老师的脸。于是在拿完需求后,先自己买了点器件用万用表搭了一个电路先试试。项目最终很成功,我也拿到了第一份报酬。
丑陋的自搭电路
大学4年很快就过去了,带着一堆的开发板、书籍和满腹的电子知识我离开了校园。很快我就找到了第一份工作:在一家小公司做技术员,公司主要的产品是为各种电子设备定做测试仪器。
由于我学的是计算机专业,所以公司希望招我来做上位机软件。这我可傻眼了,以前所有的时间都花在了电子方面,谈到做上位机软件倒还真的不会。毛主席说过:世上的事最怕“认真”二字。没学过没关系,只要现在开始也不晚。
那到底学什么语言和开发工具呢?跑到电子发烧友论坛上晃了一圈,很多人都说C 功能强大,以后发展也好。不过到底是VC还是C builder呢?VC难学,但据说学会了以后啥都好办了。既然是这样,那我就弄VC吧。好在公司的任务不紧,有充足的时间看书和学习,再加上有几个前辈指引,学习起来轻松多了。如果有朋友现在还想学习VC和windows程序设计的话,下面几本书可不能错过。这些书都是对应于VC 6.0的,到现在估计应该有对应.net的新版本了吧。
在这个公司的两年里先后完成了许多小的项目,从一开始的帮别人打下手,到后来的自己负责、带徒弟,感觉自己成长了很多。离开这家公司后,我往北边发展。进入了一家做视频相关系统的公司B,公司不大,但各个都是技术强人,这也给我了不小的压力。还记得入职的第一天,项目经理就和我说:我们这任务比较紧,你今天把入职手续办完就进入项目组吧,最近视频点播系统那边活比较多,你先去那边。于是我就误打误撞进入了视频领域,想想自己对这方面什么都不懂还真是胆大,不过这个选择对我今后的方向有重大影响,这个后面再说。
搞过视频的朋友应该都知道,这东西对工程师的综合素质要求还是挺高的,硬件方面所用处理器的都是主频比较高,性能比较好的,很多都是用DSP或FPGA来做;软件方面对算法、数据结构要有较深的理解。不过当时我可不知道这些,总觉得无非就是单片机的升级版本,没什么大不了的。到了项目组后,简单的和项目沟通了下,了解到目前上位机这边有个问题:无法获取当前鼠标所指的位置的文字。当时我立马想到金山词霸不是有个屏幕取词功能么?应该和这个类似。于是立即动手查资料,看到到底是什么原理。等我把相关的资料看完后已经到了下午5点多钟,这是大家都陆陆续续准备下班了,正当我犹豫要不要告诉项目经理时,项目经理走到了我身边于是我顺势就把自己的想法告诉了他,只见他两眼“闪光”,说:那个谁。。。还有那个谁。。。都别走了,留下来加个班,我们一起把这个东西解决了。等到完成基本框架已经到了深夜1点多钟,路上已经基本看不到行人了,晚风吹在脸上,心里充满了作为工程师的自豪,像一个得胜而归的将军。
在这里我特别要感谢项目经理,在B公司的3年时间里是我成长最快的3年,我陆续接触了AT9200,I.MX系列,OMAP,达芬奇系列等各种处理器的开发,特别是达芬奇系列,当时公司里的板子才2块,项目经理居然允许我带一块回家,要知道当时这个板子要好几万呢。当时可把我高兴坏了,像中了500万一样...嚯嚯,开玩笑的。
可能在一个地方久了就会厌倦,B公司虽然不错,但几年的光阴已经把我的激情磨灭,而我又是个需要激情的人。所以最终我还是从B公司离职了。离职后并没有立即找工作,当然并不是找不到,而是我需要一段时间放松下自己,整理下心情。
恰巧这段时间各个半导体公司在不停的开研讨会,像ARM, TI,ST,Xilinx等等。于是乎,我就免费吃了好几顿大餐:)不过最让我印象深刻的是XILINX的研讨会,它们当时在推Spartan系列FPGA。说实话,我对这个FPGA这个东西只有耳闻,但到底是个什么东西还真不知道。在研讨会上看到了它们公司推出的几个案例,其中一个就是视频监控与模式识别的。由于我本身就是做这个的,所以对这块听得尤为仔细。相比于传统的DSP来做算法,FPGA做算法的速度、效率优势更为明显。
于是我很快就有了下一次目标----学习FPGA。不过想法是好的,不过FPGA学起来真是相当的麻烦:开发板很贵,完全硬件编程。这对我们软件出生的人真是不小的挑战。好在当时xilinx开研讨会赠送了一块BASYS开发板,于是我就从它开始踏上了FPGA的不归路。
有人问:一直学习累不累?有的时候想想确实很累。
夜深人静的时候,总是会一个人坐在窗前发呆:为什么我要不停的学习?我到底要什么?其实我并不知道这些东西到底有什么用,或许只是为了实现童年时期的一个梦,就像筷子兄弟说的:梦想这东西和经典一样,永远不会因为时间而褪色,反而更显珍贵!
作为一名正在埋头苦学51单片机的你,或者刚刚涉足单片机开发的你,在未来几年时间内,你的梦想是什么?你想成为什么样子的人?
单片机工程师,硬件工程师,还是嵌入式工程师?
51系列单片机,作为已经整整地影响了一代人划时代产品,在面临网络化、智能化物联网的今天,已经显得力不从心。ARM作为移动物联网时代的王者,其Cortex系列产品已经遍及高、中、低端设备,将成为引领时代发展的先驱。以STM32作为学习Cortex系列产品的嵌入式开发,是电子初学者的最优学习之路。
相比51单片机,STM32具有如下优势:
1.无论在主频、速度和性能方面,STM32均优于51单片机,能够应付未来产品需求。
2.STM32的ST官方最新Hal库开发,是STM32开发的趋势,开发项目速度相比51单片机更加轻松快捷、方便。
3.嵌入式物联网开发,STM32占据核心地位。STM32是嵌入式系统的心脏,IoT、智能工业、智能家居应用,STM32使得开发产品更加智能化;同时,STM32也是大众市场第一MCU,基本满足任何开发者需求,引领物联网嵌入式系统开发行业潮流。
为帮助更多人学会嵌入式开发,发烧友学院联合创客学院,通过9天视频课程内容,教会大家嵌入式系统STM32在实际开发中常用的技术。只要你认真听课、多敲代码多练习,一周多的时间即可完全掌握!
扫码或点击阅读原文
立即报名嵌入式系统STM32学习!
课程特色
1.视频以STM32F0为讲解对象,大屏直播形式讲课;
2.采用ST官方最新Hal库方法开发,摒弃传统标准库;
3.所有项目基于STM32开发平台CubeMx建成;
4.引入大量传感器开发实例,如光照、三轴传感器;
5.视频均有对应实例代码、课程PPT等资料,方便及时复习。
学员服务
1.课程全部大屏直播讲解,摒弃传统视频形式;
2.学员专享课程QQ群专业讲师答疑。
↓↓↓ 点击"阅读原文" 立即报名嵌入式系统STM32学习!
,
-
- 初音未来歌姬模式(初音未来歌姬计划)
-
2023-07-30 10:32:44
-
- 23款美食精选珍藏私房菜(听大厨的准没错)
-
2023-07-30 10:30:39
-
- 电脑新硬盘分区的基本步骤(电脑基础知识教程-硬盘分区工具对比)
-
2023-07-30 10:28:34
-
- 电脑主板的基本知识(带你详尽了解电脑主板内部)
-
2023-07-30 10:26:29
-
- 大学计算机基础试题及答案完整版(大学计算机基础试卷)
-
2023-07-30 10:24:24
-
- 朝南宿舍美食简单好吃的做法(回购10次以上的速食)
-
2023-07-30 10:22:19
-
- 大学生对于结婚的看法(大学生未来结婚意愿高于预期上热搜)
-
2023-07-30 10:20:14
-
- 哪一部窃听风云比较好看(窃听风云三部曲)
-
2023-07-30 10:18:09
-
- 哪些牌子的冲锋衣好(冲锋衣品牌排行榜)
-
2023-07-30 06:07:49
-
- 电脑截屏的三种方法酷知经验网(常用的电脑截屏方法大全)
-
2023-07-30 06:05:43
-
- 哪些学校学硕可以考专博(专硕可以考博吗)
-
2023-07-30 06:03:37
-
- 名人王洛宾简介(在那遥远的地方)
-
2023-07-30 06:01:31
-
- 电脑各款杀毒软件对比(挑战同时安装四个国产杀毒软件)
-
2023-07-30 05:59:25
-
- 品质最好的天然水晶(这些天然水晶你都见过吗)
-
2023-07-30 05:57:19
-
- 电脑快捷键使用大全(电脑操作小技巧)
-
2023-07-30 05:55:13
-
- 电竞鼠标推荐什么游戏鼠标好用(最强电竞鼠标大集结)
-
2023-07-30 05:53:08
-
- 哪些牛奶最适合配咖啡(十三种牛奶大盘点)
-
2023-07-30 05:51:02
-
- 滑轮的结构示意图(简单而又不简单的力学知识)
-
2023-07-30 05:48:56
-
- 狗的感人故事(8个狗狗的感人故事)
-
2023-07-29 19:54:31
-
- 公务员级别划分明细(最完整的公务员级别划分)
-
2023-07-29 19:52:26