想学习单片机学习开发板,不知道哪个开发板好?

学51一个月只能赚3000?穷X就别学单片机开发了!
现在学51单片机,大概一个月能赚3000左右。还在拿51单片机忽悠人写个跑马灯、AD/DA之类的,或者以写过C51为自豪的,基本都是些什么人我就不列举了。
一直以来,我国各高校的大一小朋友们形成一种学习单片机的风气。我今天就是来劝退你们这些小朋友的。连数电和微机原理都没上过,就硬要上单片机这种跨领域的东西,简直是囫囵吞枣,自取其辱。90%的人的单片机开发之旅,基本还没到写个温控传感器、键盘矩阵、LCD液晶屏就半途而废了。单片机对于大部分人技术上的积累没有半毛钱的好处。
况且你花一个月调试写的单片机程序,焊接的板子,可能就是人家用Raspberry Pi插上外设写100行python工作量。不要高估了自己对硬件底层实现和理解的能力,大部分执着于单片机硬件闷头造轮子而不用现成产品大一的小朋友,都是(不友善内容)。
现在你还是大一,小朋友,叔叔推荐给你三本书:CSAPP,Deep Learning,Introduction to Algorithms。有时间的话再把React,Vue,node.js看一看。
我不是劝退学单片机的,我是劝退大一小朋友,算法都没搞清楚,数电都没学,凭着一腔热血买单片机开发板,买了郭天祥教程,只会复制粘贴代码,跑马灯跑个亮,温控传感器显示个数在LED显示屏上,写个键盘矩阵输入个数字的,至于为什么这里有个上拉电阻,寄存器是什么意思,uc/OS是干啥用的一概不知,半年后就把开发板扔掉了,然后高数、线代、概率六七十分低空飘过的——这种人学单片机,真的是得不偿失。
我认为最成功的一群人,就是那些在淘宝上卖单片机开发板的人,他们就像许多开知乎Live教人如何学习阅读走向成功、两个月全栈工程师培训班、oppo手机、朋友圈健康营销文章一样,通过收取低智商税来拉动我国GDP的增长,绝对是鼓励“全民创业”中的模范典型。
坚持劝退51/STM/飞思卡尔/AVR/STC单片机一百年不动摇。
文/知乎专栏 立党说
网友观点:
Darcy:不是吧,我以为会单片机怎么着也能有个大几千的
哦找到那个了
有人说51过时了之类的,那我来告诉各位51非但没有过时,而且一直是MADE IN CHINA 的低阶产品的最爱。因为它便宜,而且生产厂商(包括中国厂商)众多。比如你日常用的热水壶,电饭煲, 微波炉之类的小电器,如果是那种低阶傻瓜型的,十之八九里面用的都是51单片机。(而且以中国厂商的操行,用单片机都觉得浪费了。我见过最烂的烤面包机,里面就是一个机械的定时器,没有单片机)。为啥?因为这些产品的售价低,销量大。许多产品年销量都在百万台以上。所以如果BOM COST 降一块钱,每年就是多100万的毛利。前面还有说用汇编写51单片机过时之类的。呵呵,深圳的老板们可不这么想。因为如果用汇编,把原先需要8KB内存的程序减少到4KB,那么单片机选型的时候,就可以选择同类产品里更低的一档,BOM COST 可能有可以减少5毛钱。按照每年百万的销量,每年可以多50万的利润。而且这类产品不象手机更新这么快,一款产品可以吃上3到4年,这样进出就有200万以上了。而如果按照工程师月薪2万计算,让一个工程师花上一个月的时间用汇编优化,就可以换得200万以上的回报。这样的投资回报率,为啥不去干呀。这年头大家都喊着要工匠精神。能静下心来优化代码,为企业获得利润,体现工程师的价值,这个才是真正的工匠精神吧。当然,200万在北上广土豪的眼里也许连半个卫生间也买不下来。但是对知乎上的许多人来说,200万可能就是他们10年的基本工资了吧。另外,还有一个原因,也是中国厂商特别喜欢51的原因。因为中国的几乎所有的大学都教授51单片机,所以非常容易招人,不需要再另外培训。而员工的试错培训费用,实际上可能是最昂贵的隐形开销。
这里说2万, 是不是水了些
所以真相到底是什么,不明真相的小白求大神指点
_qq.com:楼主也是个(不友善内容),世界就是个百花齐发的世界,有穷就有富,有先进就有落后,有傻就有聪明的,你的意思穷的、落后的、傻的就该死了,你能时刻保持在塔尖
_qq.com:其实楼主的意思是:
1、大一不要学单片机,好好的打基础,可以留到大三、大四学。
2、学习单片机不能光会走几个流水灯、复制粘贴几段程序就行了,需要学习算法、操作系统等更加深入的东西。
3、学习单片机的大一新生,很多半途而废,想要学会就要坚持下来。
4、即使学会了单片机,也不能说自己牛逼的不得了,因为这才是刚刚开始!
2iot :真是个善解人意的同志,可是我看着分明是——穷X就别搞电子了,眼看着同学同事正热火朝天转CS转金融,没定力没耐力的就趁早放弃吧
ta1ent_foxmail.com :树莓派?搞笑吧!有人用那个做产品?
诚然51单片机很落后,但很多soc里面还在用51内核!为什么?1、简单,2、免费。
电子专业不光是编程,还有整个系统的驾驭能力,外围电路搭建、电路板绘制……
CPU只是一个部件而已。
而且51是基础,是进阶新世界的大门。
玩过ARM、DSP、FPGA的人大多都是从51开始玩的。
光会单片机编程肯定是不行的。但是不会单片机岂不是更low么。
至于楼主说的那些,无非就是互联网,web,数据分析之类的,已经偏离了电子这条路了。
frank_dinchen.com.tw:=&3000只是菜鳥的起薪, 單片機玩個一年還無法過渡到嵌入式系統, 或者產品找不到方向,沒有創意,那身價當然上不去!
"连数电和微机原理都没上过,就硬要上单片机这种跨领域的东西,简直是囫囵吞枣,自取其辱"
=&那是不是沒學過芯片設計VHDL/Verilog也都不要用芯片了? 不知道發動機原理也不要開汽車了?我在台灣教小朋友用Arduino+Scratch玩機器人, 就兩個月小朋友也能寫些簡單機器人跳舞的程式啊! 要讓學習的學生維持高度的學習興趣最重要, 不要動不動要從數電微機原理開始, 當學生被一堆理論擋在前面, 還能維持多高的興致學習單片機? Arduino之風行全世界, 就是因為他把芯片控制的一些暫存器設置包其來, 簡化使用,程式一開始不用去設置那些暫存器, 怎樣把這個pin設成I/O模式, 然後昰輸入還是輸出, 輸出到底昰push pull 還是open drain? 如果要一個單片機入門者都搞清楚這些設置的所有暫存器, 那要多久? clock設置internal 或external, internal的內部RC clock是不是又要從模擬電路開始教起?
這年頭知識發展太快, 我都不信所有用ARM M0/M3的人都知道其芯片內部流水線有幾級,差異何在? 我也不信所有用ARM仿真器的人能了解ARM內部仿真區塊工作的原理! 這年頭, 設計就像堆積木, 有很多積木內部原理, 我們不可能一一都了解, 但只要知道輸入/輸出規格, 能應用才是重要! 用MCU設計系統, 跟設計MCU昰兩回事!
學單片機, 先會玩, 喜歡玩, 再來一步步深入了解內部原理才是循序漸進的好方式!
"叔叔推荐给你三本书:CSAPP,Deep Learning,Introduction to Algorithms"
喜歡玩單片機要從這三本書看起??? 這叫知識的武斷, 大叔另外建議你另三本, 比較偏硬體的, 但是你得先學過數電/微機原理!
1.C Programming Language(K & R經典),
2.MCS@51 MICROCONTROLLER FAMILY USER’S MANUAL, Intel 8051使用手冊
3.ARM System-on-chip Architecture, ARM內部架構,
這三本書是我這個大叔建議的, 是給想走單片機偏硬件方面的人看的! 跟樓主建議的不同, 因為樓主所建議的很明顯昰偏軟件的. 如果你單片機是用在車用/家電/自動控制上, 很明顯的我建議的會比樓主建議的有用多了!
學海浩瀚無窮, 但學單片機, 建議都從8051開始, 把Intel 8051使用手冊K個熟透, 每一張圖/每一行字/每個指令都要知道意義, 要會寫簡單的匯編, 但大部分的程式可以用C寫, Keil 8051C的優化能力已不輸人工手寫匯編, 不信的話你寫個case的指令, 用Keil C optimize最高的compiler option去編一下, 再看看他翻出來的匯編, 看看你手寫是不是能如此巧妙的利用8051指令.
談到C語言入們, 就是原始設計者的書最好, 語言風格簡潔有力, 是C入們最好的一本書, 沒有之一, 書中習題挑一些來作, 語言一定要寫, 有實作才能真正吸收.
要由8位過渡到32位, 想深入了解ARM, ARM System-on-chip Architecture是原始設計者之一所寫, 講的是ARM 內部架構, 及指令集,建議要玩嵌入式的人要看. 因為8051跑不了linux, 而須要ARM 這類能力較強的MCU.
至於軟件方面, 因為小弟是硬件工程師, 用的只是C, 很少用到C++! C++是用在IC設計的simulation用, 真正單片機/嵌入式系統我都只用到C, 因此在RTOS上要看些什麼, 這不是我內行的地方, 得另外問高手.
但就我的應用, 光無OS的應用都夠我維生. 以電子雞的案例, 這也是8位元的玩具, 這是台灣廠商OEM給日本萬代的, 這小玩具能大賣靠的是創意, 軟硬件都不複雜!
創意遠比能力重要, 尖端產品, 大公司時時刻刻都在盯者, 不只比設計能力, 更比量產規模及市場能力, 但所有單片機設計都得往手機/智能家電/智能駕駛高端應用方面走嗎?
有多少作單片機的人須要了解MACHINE LEARNING呢? 我的控制方式比較爛, 不是optimised, 最佳化是 order(n), 我寫的爛order (10n), 所以最佳化10us完成, 我花了100us完成, 但我的系統1ms中斷一次, 我只要在1ms中完成即可, 那有沒有optimize, 於此也不是很重要啊. Algorthms能了解很好, 但對單片機而言,非必須品!
大一的學生, 應該多方面嚐試, 看看哪一方面的科目, 自己覺得有興趣, 而且玩起來適合自己能力範圍比較重要, 不是高技術就能高收入, 作Dram的技術夠高了吧! 台廠/日廠不也倒了一堆?
知道電子雞給那家台商賺多少錢? 上億台幣, 估計是他當初資本額10倍以上! 電子雞這樣的單片機產品, 不也只是一個8位單片機含液晶驅動, 加個液晶片一個蜂鳴片,三個橡膠按鍵, 一個電池而已呢?這需要高數、線代、概率嗎?
技術很重要, 但產品方向跟創意更重要! 殺的是雞時, 就用不找牛刀!不用了解引擎原理, 再來學開車!
理論很重要, 但支持你的學習興趣更重要! 一個讓你賺很多錢但不開心的工作, 跟一個讓你賺的不很多但作起來很開心的工作, 你選哪樣? 要我, 我要過的開心些, 就算是茅草秋風破, 山村小過活也行, 我要開心的過日子, 我不要爆肝的生活!
堅持支持大家一起來玩單片機一百零一年不動搖!
责任编辑:
声明:该文观点仅代表作者本人,搜狐号系信息发布平台,搜狐仅提供信息存储空间服务。
今日搜狐热点刚开始学单片机,有必要买个单片机开发板来练习吗???_单片机吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:150,402贴子:
刚开始学单片机,有必要买个单片机开发板来练习吗???收藏
刚开始学单片机,有必要买个单片机开发板来练习吗???
超低功耗,256KB-512KB闪存,可扩展存储器,备有开发板
当然可以 要是你动手能力强也可以自己按照原理图自己做板
想学好,理解得透彻,必须实际操作,看到实际效果。否则纸上谈兵没意义。
还是买个吧,刚开始学。
1.先请大家注意我的头像。看到什麽诡异的吗。 2. 然后请大家仔细看我的ID,有什麽内涵? 3.没看出来就默念我的ID 十遍,然后结合我的头像一起看!!4. 好了,你继续往楼下看吧,我就是来混脸熟的。我看到了错误!
  ✎﹏₯㎕[爱心]     这只是个神奇的小尾巴    请不要试图去研究我是怎么发出来的     ฏ๎๎๎๎๎๎๎๎๎ฏฏด้้้้้็็็็็้้้้้็็็็็้้้้้็็็้็็็ฏ๎็็็็็็oด้้้้้็็็็็้้้้้็็็็็้้้้้้้้็็็็็้้้้้็็็็็้้้้้้้้้   
要自己有基础,那自己做是最好,要是没电路基础,单片机基础,那最好还是买块便宜的,实用的,不要买现在流行那几块。上一块我自己做的图纸,负片打印稿。要是自己连电路图都不会画,原理图要网上找来做板,那成功的概率几乎为零,最好还是买吧。
弄清楚外围电路对于你写程序帮助很大,很多东西都是慢慢叠加起来才看得到收获,你要做的不仅仅是学单片机,比如晶振,比如波特率,还有很多很多。我愿意给你的建议是,有条件的话自己焊一块单片机最小系统板,在这过程你会碰到各种各样的困难,希望你能找到原因去解决。而不仅仅是烧录程序。
嗯。。。。那要是初二没学过电学怎么破
先学编程,其它不着急。
protues,然后网上找个别人做好的原理图。但是有些时候现象不太一样
想学好,必须买,只有有板子才可以测试你的想法
没必要,先用学习板
德飞莱的板子,我现在也在学
如果你们没有实验室的话买个开发版特别好
那就是小型实验室
液晶显示器
登录百度帐号豆丁微信公众号
君,已阅读到文档的结尾了呢~~
如何学习单片机及选择单片机开发板,单片机开发板,郭天祥单片机开发板,单片机开发板原理图,单片机开发板哪个好,pic单片机开发板,单片机开发板怎么用,avr单片机开发板,单片机开发板有什么用,单片机开发板价格
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
如何学习单片机及选择单片机开发板
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='http://www.docin.com/DocinViewer--144.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口如何从零开始学习单片机技术
查看: 9779|
评论: 0|来自: 网络转载
摘要:   很多想学单片机的人问我的第一句话就是怎样才能学好单片机?对于这个问题我今天就我自己是如何开始学单片机,如何开始上手,如何开始熟练这个过程给大家讲讲。   先说说单片机,一般我们现在用的比较多的的MCS-51的单片机,它 ...
  很多想学的人问我的第一句话就是怎样才能学好单片机?对于这个问题我今天就我自己是如何开始学单片机,如何开始上手,如何开始熟练这个过程给大家讲讲。
  先说说单片机,一般我们现在用的比较多的的MCS-51的单片机,它的资料比较多,用的人也很多,市场也很大。就我个人的体会怎么样才能更快的学会单片机这门课。单片机这门课是一项非常重视动手实践的科目,不能总是看书,但是学习它首先必须得看书,因为从书中你需要大概了解一下,单片机的各个功能寄存器,而说明白点,我们使用单片机就是用软件去控制单片机的各个功能寄存器,再说明白点,就是控制单片机那些管脚的电平什么时候输出高,什么时候输出低。由这些高低电平的变化来控制你的系统板,实现我们需要的各个功能。至于看书,只需大概了解单片机各管脚都是干什么的?能实现什么样的功能?第一次,第二次你可能看不明白,但这不要紧,因为还缺少实际的感观认识。所以我总是说,学单片机看书看两三天的就够了,看小说你一天能看五六本,看单片机你两三天看两三遍就够了,可以不用仔细的看。推荐一本书,就这一本就足够,书名是《新编MCS-51单片机应用设计》,是哈尔滨工业大学出版社出的的,作者是张毅刚。大概了解一下书上的内容,然后实践,这是非常关键的,如果说学单片机你不实践那是不可能学会的,关于实践有两种方法你可以选择,一种方法:你自己花钱买一块单片机的学习板,不要求功能太全的,对于初学者来说你买功能非常多的那种板子,上面有很多东西你这辈子都用不着,我建议有流水灯、数码管、独立键盘、矩阵键盘、AD或DA(原理一样)、液晶、蜂鸣器,这就差不多了。如果上面我提到的这些,你能熟练应用,那可以说对于单片机方面的硬件你已经入门了,剩下的就是自己练习设计电路,不断的积累经验。只要过了第一关,后面的路就好走多了,万事开头难,大家可能都听过。方法二:你身边如果有单片机方面的高手,向他求助,让他帮你搭个简单的最小系统板。对于高手来说,做个单片机的最小系统板只需要一分钟的时间,而对于初学者可就难多了,因为只有对硬件了解了,才能熟练运用。而如果你身边没有这样的高手,又找不到可以帮助你的人,那我劝你最好是自己买上一块,毕竟自己有一块要方便的多,以后做单片机类的小实验时都能用得上,还省事。单片机已经无处不在,与我们生活更加相关并渗透入生活的方方面面。单片机的特点是小,也就是其集成的特性,其内部的结构是普通的计算机系统的简化。在增加一些外围电路之后,就能成为一个完整的系统。比如,我们常用的一类秤,内部就安装了一块单片机,再加上、显示器和一些附加电路,就形成了一个应用系统。所以单片机的可扩展性是相当好的。又比如K85这样的中频电疗仪,能够从病人身上获取数据,然后根据现有的算法从几种治疗处方中选择,而在每一种处方中还能够根据病人的病情而改变中频和波形及输出电流强度。这样可以看出单片机本身也具有和普通计算机类似的强大的处理,可以增加复杂的算法,获得很强的数据处理能力。单片机也可以应用在电脑缝纫机上,这样单片机可以替代很多机械部分,还能提供很多老式的缝纫机无法实现的图案。所以单片机在工业中的应用,极大地提高了工业设备的智能化,提高了处理能力和处理效率,而且无需占用很大的空间和复杂的设备。
&&&在错误的道路上日夜兼程,最终也无法成功。因此,方法和思路绝对是第一重要的。一些学技术的同学,往往看到这类章节会直接跳过去,因为大多数类似章节都是废话连篇。但是,今天在这里我可以很负责任的告诉你,本章节讲到的学习单片机的方法,都是我们学习单片机的无数经验和教训总结出来的瑰宝。因为我们披荆斩棘,开辟了道路,所以可以告诉你路在何方;也因为我们摸过烧红的铁块,烫了手,所以可以把教训告诉你。希望各位都能站在我们的肩膀上,成为巨人。
1.1&学什么单片机
单片机的型号那么多,如何选取一款合适的进行学习?如果身边有比较便利的学习单片机的条件,有什么条件就学习什么型号。比如,你所在的公司刚好用到某个型号单片机,那么就方便多了。开发板不用购买,直接用公司现成的板子,指导老师到处是,公司的工程师,只要你耐心虚心的不耻上问,相信他们都会帮你解答问题。如果你跟着学习的导师,正在使用某个型号开发产品,那么同样的道理,你也会有得天独厚的优势,直接跟着学就行了。其实单片机型号虽然多,但是用法大同小异,学会一种,再上手其他的就很快了。
如果你这些条件都没有,那就跟着我学吧,我建议你学习51单片机。为什么呢?现在单片机种类和型号非常多,每个型号都有一定的市场份额,但是哪个型号也没有早期51单片机那般的风光和火爆,虽然现在地位不是那么高了,但是因为51单片机资料非常多,大家学起来有很多可以参考的东西,所以上手肯定比其他型号的要快一些。如果你学习稍微偏门的单片机,可能一个简单的软件问题就要折腾你好长时间,不仅仅浪费了你的学习时间,更重要的是打击你学习单片机的信心。
那是不是我们每个单片机都要学习一遍呢?答案当然是否定的。大家跟着我来学习51单片机,必须得跟着学会举一反三和融会贯通的能力。单片机型号那么多,挨个学下来估计头发白了也学不完,所以大家跟着我学51单片机,不能仅仅当做51来学习,更重要的是要当做单片机来学,要通过我们的这个教程,把所有的单片机的内部资源都搞清楚弄明白,每个内部模块的用法理解透彻,这样当你遇到一个从没有用过的单片机,也就知道如何下手去应用开发了。
1.2&如何学习单片机
前边提到过,单片机是一门实用技术,我们学习它已经不是为了应付考试了,我给大家总结了单片机的学习方法是:一个要领,四个步骤。
学习单片机的要领就是:在实践中成长,In&Doing&We&Learn!
学射箭,你得去拉弓,整天只摆造型肯定不行;学游泳,你得下水扑腾,整天在岸上做模仿活动不行;学开车,你得坐车上去开,坐沙发上肯定学不会。同样的道理,学单片机,整天盯着单片机看肯定不行,你也必须得亲自动手去练。
没有不下水就学会游泳成为游泳健将的,没有不到车上练就能成为赛车手的,这点大家都清楚,可为什么总是那么多人学单片机的时候,总是要抱着一本书看呢。第一,我们小学中学甚至大学的学习模式都是如此,学什么东西主要都是靠看书;第二,很多人想实践不太清楚该怎么去实践。
不是不让大家看书,而是看了一点以后,要马上去实践验证,然后再回头结合实践的结果,理解书上的内容。从这个地方,大家要得出一个结论来,就是在学实际技术过程中,和应付考试不同,书上的内容不需要你去硬性记忆,书是用来查的,不是用来记忆的。遇到问题,你学会翻书,知道该去哪里找,找到相关知识点,分析明白,领悟透彻即可,包括咱这本书也是一样,大家先看完一节课,然后马上就把这节课相应的实验做了,做实验的过程中,哪里有不懂的问题,随时翻阅书籍查找,再实验,再查找,反反复复的过程就可以把本节课的内容掌握。
下面,就是我总结的跟着我学习单片机的四个步骤。
第一步,鹦鹉学舌。
刚出生的孩子叫“爸爸”“妈妈”的时候,他甚至不知道“爸爸”“妈妈”是什么意思,更不会理解这些声音是什么意思,但是我们带着孩子见到他爸爸就让他喊“爸爸”,见到妈妈就让他喊“妈妈”,见到爷爷就喊“爷爷”……慢慢的你会发现,次数多了,孩子就知道谁是爸爸,谁是妈妈,谁是爷爷,谁是奶奶了。
大家刚开始接触单片机的时候,也属于单片机行业的新生儿。单片机的样子,单片机外围的各种器件,单片机内部的各种结构,单片机用C语言的编程方法,初学者可能都没有见过。没关系,有些概念和方法你不理解也没有关系,甚至不需要你理解,你只需要跟着我去鹦鹉学舌式学习,第一遍学习某一节课的内容时,对于程序,大家就可以完全跟着抄下来,甚至抄两三遍,过一段你会发现,好多东西你也认识了,好多概念你慢慢的也理解清楚了,你也能大概看懂别人的小程序了,切忌觉得自己看会了,而简单复制粘贴。
第二步,照葫芦画瓢。
很多同学学习的时候喜欢看,看我做的视频,看我写的程序,甚至看别人的程序,都能看懂,觉得自己就会了,等到自己写程序的时候,感觉就是老鼠啃天,不知道从哪里下手了,这是初学者很容易犯的“眼高手低”这样一个毛病,所以第二步的内容就非常重要了。
我的要求是,每一位同学,在学完了当前课的内容,把第一步顺利完成以后,然后关掉视频教程,关掉源代码,自己通过看和查找非源代码的其他任何资料,把当节课我写的程序代码重新默写出来,边写边多少理解那么一点点,不是纯粹的背诵,应该说是背诵加理解的结合体。甚至学过几节课以后,可以回头把前边曾经这样实现过的课程,再按照这种方法做一遍。千万不要认为这一步没必要,这一步是你能否学会单片机的一个关键步骤,在学完本教程之前,每一课内容都要这样做,如果每一个程序你都能够完美的完成,那么可以说,当节课的内容,百分之七八十你已经掌握了。
第三步,他山之石可以攻玉。
单片机技术的最大特点就是可以通过修改程序来实现不同的功能,因此举一反三的能力就必不可少了。每一节课的例程后边,我一般都会布置一两个作业,大家尽量去独立完成这个作业。在完成这个作业的过程中,都可以参考我的程序思路,在这个基础上通过动脑思考去构建你自己的程序框架,最终将程序完成。
在我们工程师实际产品研发的时候,很多种情况下也是如此。比如一个产品,我们如果从0开始着手的话,可能会走很多弯路,所以我们通常的做法是寻找购买同类几款产品,然后先研究他们的各自优缺点,学习他们的长处,然后在同类产品基础上在来设计我们的产品,这就是他山之石可以攻玉。
初学者在学习的时候,往往遇到的问题很多,你应该想到,你遇到的问题,可能前辈们早就遇到过了,所以遇到问题后,不要慌张,首先利用谷歌或者百度这些搜索引擎搜索一下,要做什么新东西,先去网上找找相关资料了解一下,不管是编程还是硬件设计,多参考参考别人的东西,只要把别人的东西分析明白了,自己用起来,就可以成为自己的知识了。
第四步,理论实践结合,温故知新。
当大家把所有的课程都按照前边三步完成后,这个时候不妨把书打开,看看书,通过自己实战的经验,再看书的时候,很多知识点会有一种恍然大悟的感觉。甚至视频教程,书籍,都可以反复看两遍,可能有的知识点当时学习的时候不明白,过了一段时间,回过头来再学习的时候,一下就明白了。
1.3&单片机学习的准备工作
第一、足够的信心、恒心和耐心。
有同学问过我,单片机这门技术难不难。我觉得这个问题得从两个方面去分析。
首先,我们从战略上藐视它。那么多同学跟着老师学一段时间就可以做出来小车,超声波测距,甚至做出来机器人,似乎很拽的样子。那他们又不是三头六臂,我们也没有什么做不了的道理。实际上要说技术,其实就是一层窗户纸,表面看不透彻,感觉特别神秘,实际只要你稍微一努力就可以捅破它,夸张点说,单片机的逻辑上的关系,只有小学的水平,简单的很。正所谓会者不难,难者不会,大家不懂这个东西,看起来感觉很神秘。所以大家只要认真踏实坚持学下去,肯定能学好这么技术。
其次呢,我们从战术上要重视它。你说单片机这东西,如果十天八天就学会了,那么这个技术还能值钱吗?我可以这样去表达,如果一个技术很简单就被学会,那么很多人都会的这个技术,肯定也没什么前途和钱途。那究竟多久能学会呢?我给大家制定的学习方案,根据每个人的基础不同,平均每天要拿出2个小时以上的学习时间,大概一到三个月可以入门。入门的概念是给你一个单片机开发任务,你起码知道努力的方向和解决问题的方法了。技术这东西,关键是坚持做下去,有恒心和耐心,如果长时间不用的话,肯定还会生疏。所以要想成为单片机高手,起码需要一年左右的单片机开发的历练才行。成为单片机高手的概念就是你自己可以从头根据自己的想法,去设计一个电路,根据需要的功能编写代码,做一个产品出来。
第二、教材和教程。
要学习单片机这门技术,良好的教材和教程必不可少。单片机方面,大家可以直接学习我们这本《51单片机C语言开发》,我们也有精心制作了《单片机高手之路》视频教程,并且后期会进行不定期更新。本着开源、共享的理念,我们的视频教程和电子教程都是免费开放的,大家可以到我们的网站www.51hei.com找到下载链接,如果有条件,也可以购买我们一般纸质教材,纸质书籍查阅起来比视频教程和电子教程更方便。另外,因为我们做单片机开发使用的是C语言,所以最好能有一本纯C语言教材,我们学到一些C语言语法性质的问题的时候,大家可以方便查阅,或者你可以直接把相关语法问题通过百度和谷歌等搜索一下也可以。
第三、电脑一台,单片机开发板一块。
电脑呢,是学习单片机必不可少的工具,因为我们编程,查资料都用得到,但是有句题外话说一下,不要把电脑当成游戏机或者影碟机,偶尔玩玩游戏看看电影是可以的,劳逸结合,但是不可沉溺其中,否则还不如不买电脑。
单片机开发板,这也是必须的。如果还上学,老师实验室有开发板,可以考虑跟老师借一个,或者使用师兄师姐用完的,这样可以省点钱。当然,如果身边有高手,比如辅导老师,会单片机的师兄,在他们的指导下做一个也可以,身边有人指导的话,不懂的问题还可以问他们。如果这些条件不具备,那么可以购买一个,先学习别人的板子设计思路,给自己以后设计电路板打下基础。在这里我推荐一下我们的51开发板,用来配套学习。我不敢说我们的设计是最好的,但是我可以很负责任的说,我们的板子是出自经验丰富的一线工程师之手,其中的设计都是根据实际项目开发的思路进行的,包括整体规划、电路设计、器件布局等等,可以为你今后的项目开发提供一个优质的参考。另外一方面,因为我们的教程是基于我们的开发板做的,所以大家用配套的话可以节省时间,提高学习效率。
当然,即使不购买我们的开发板,你想学单片机,必须要有一块开发板,不要总去用软件仿真,软件仿真是学不会单片机技术的。经常有同学过来问我,老师我用软件模拟的好用,做了硬件不好用是什么原因。在这里我提一下,如果你上课用这个软件仿真,糊弄老师应付考试可以的,但是实际开发和仿真软件差别太大,如果是学习单片机这门技术,那我只能告诉你,拿起烙铁焊电路,动手写程序,远离仿真软件,靠软件仿真永远学不到真正的技术。
1.4&单片机开发软件环境搭建
单片机开发,首要的两个软件一个是编程软件,一个是下载软件。编程软件我们用Keil&&uVision4的51版本,也叫做keil&C51,不做过多介绍,先直接讲如何安装。
1、首先准备KEIL&uVision4安装源文件,双击安装文件,弹出安装的欢迎界面,如图1-1所示。
图1-1&Keil安装欢迎界面&
2、点击“Next”按钮,弹出“License&Agreement”对话框,如图1-2所示,这里显示一些用户安装协议,我们在“I&agree&to&all&the&terms&of&the&preceding&License&Agreement”打勾,如图1-2所示
&图“”对话框
3、点击“Next”按钮,弹出“Folder&Selection”对话框,如图1-3所示。这里可以设置安装路径,默认安装路径在“C\Keil”文件夹下。点击“Browse”按钮,可以修改安装路径,这里建议大家用默认的安装路径,如果你要修改,也必须使用英文路径,不要使用包含有中文字符的路径。&
&图“”对话框
4、点击“Next”按钮,弹出“Customer&Information”对话框,如图1-4所示。大家输入用户名、公司名称以及E-mail地址即可。&&
&图用户信息
5、单击“”,就会自动安装软件,如图所示&&
&图安装过程
6、安装完成后,弹出来安装完成对话框,如图1-6所示,并且出现几个选项,大家刚开始把这几个选项的对号全部去掉就可以了,暂时先不用关注他有什么作用。&&
图安装完成
7、最后,点击“”,编程软件开发环境就这么装好了。&&&
1.5&Keil基本概况介绍
首先,打开一个工程项目,如图1-7所示
图1-7&工程文件
从图1-7我们可以很轻松的分辨出菜单栏、工具栏、工程管理区、程序代码区和信息输出窗口。这个是Keil4的英文版,网上有一些汉化版本的,我不建议用。即使你的英语不好,使用英文版本的软件也一点问题没有,刚开始大家先跟着我去使用,一共没几个单词,不需要你去翻译,用几次你就记住怎么用了。因为以后做实际开发的时候,大多数软件都是英文版的,如果现在学习的时候一直用中文软件,将来一旦换了其它的英文软件就会慌了,所以从现在开始,我们就慢慢的来熟悉英文软件,将来以后再用到其他英文软件的时候,就可以做到触类旁通、驾轻就熟了。Keil软件菜单栏和工具栏的具体细化功能,和字典一样用来备查,所以我把它写到了附录里边,在这里只介绍一点,关于软件里边的字体大小和颜色设置。在里边,可以进行程序的颜色,字体大小的设置,如图所示&
&图字体设置一&&
& & 因为我们用的是语言编程,所以我们在栏用鼠标选择,然后在右侧栏目里可以选择要修改的内容,一般我们平时用到的,只是其中几项而已,比如,,,,,,这几项,本身也有默认设置,你如果觉得不是很适合你的感觉,你可以更换一下。
图1-9&字体设置(二)
&&&Keil菜单栏和工具栏的详细介绍,和字典一样,是备查的,不需要记住,所以我把它写到了附录里,如果大家对哪个工具哪里有疑问,可以随时到附录里进行查找。
1.6答学生问
很多同学经常问我一些问题,我把一些典型的,直接写出来给大家看一下,让大家了解这门技术,了解我们这个行业。
1、单片机学完了能做什么?
单片机的应用非常广泛,电子,自动化,通信等领域都能用到,至于能做什么,得看你将来以后做什么工作。如同电脑一样,电脑可以用来编程,PS图片,看电影,打游戏,你用电脑做什么是不一定的。但是掌握好这门技术,起码可以让你学会一门工具,为将来从事电子、通信、自动化等领域的工作做好准备。
2、学单片机的捷径是什么?
做技术必须得脚踏实地,没有任何捷径,如果说有的话,那我只能告诉你,拳不离手曲不离口,就是最好的捷径,我学习单片机的时候,每天早上8点半进入老师实验室,晚上10点离开实验室,曾经创下连续3个月没有休息日的记录,你如果能这样学的话,那估计很快可以学好这门技术。
3、学习单片机应该学习什么语言,有没有必要再学习汇编
相比较来说,比较接近单片机的底层,使用汇编语言比较容易理解单片机内部结构。简单的程序,用汇编语言,程序效率也比较高,但是当程序容量达到到几千上万行以后(这时也仅能算个不太小的项目,还远没到大项目的级别),汇编语言在组织结构、修改维护等方面就会成为你的梦魇了,此时时候C语言就有不可替代的优势了。所以实际开发过程中,90%以上的工程师都在用C语言做单片机开发,只有在很低端的应用中或者是特殊要求的场合,才会用汇编语言开发,所以我建议大家还是用C语言开发比较好一些。
如果现在正好上学学到了汇编语言,我建议认真学一下,学好了肯定有益无害。但是现在如果说想直接快速学单片机技术,那我建议不要去看汇编语言了,直接学C语言就可以了,那些单片机底层的结构什么的,也可以在开发过程中慢慢理解。
4、学会单片机后能找什么样的工作
单片机是一个工具,和电脑有点类似但不完全一样,我们学会电脑,可以用来编程,可以用来画图,可以用来PS照片,可以用来看电影.......学会单片机,可以用来做通信技术,做自动控制技术等等,但是单片机本身来说仅仅是一个工具,你在用单片机的时候,慢慢接触多了,会有一个应用方向,你不仅仅要会单片机,也得对这个应用方向熟悉,比如我个人从事过扩频通信技术的算法研究,那么我就要对扩频通信熟悉,然后把这个技术用单片机实现出来,也得会用单片机。当然大家也不用担心,找工作的时候公司对这个方向问题要求也不会很高,懂的话,肯定也会提高自己的竞争力。
5、学完了这个工资待遇如何
对于技术来说,技术水平高低直接决定你的工资薪酬。技术如果学的不好,那工作都找不到,更谈不上工资了,而技术做的好的,那工资就会很高。我们不清高,我们需要足以安身立命的薪资报酬,但是我希望的是,一旦你决定从事技术,你不用把过多的精力关注在能挣多少钱上,而应该放在如何把技术提高起来,只要技术水平高,比很多人都厉害,钱自然就找上门了。有一部印度的励志片叫做《三傻大闹宝莱坞》,我推荐做技术的都可以看看,里边有一句经典台词非常适合我们技术人员:追求卓越,成功就会在不经意间追上你。
  有了单片机学习板之后你就要多练习,最好是自己有台电脑,一天少看电影,少打游戏,把学习板和电脑连好,打开调试软件坐在电脑前,先学会怎么用调试软件,然后从最简单的流水灯实验做起,等你能让那八个流水灯按照你的意愿随意流动时你已经入门了,你会发现单片机是多么迷人的东西啊,太好玩了,这不是在学习知识,而是在玩,当你编写的程序按你的意愿实现时你比做什么事都开心,你会上瘾的,真的。做电子类的人真的会上瘾。然后让数码管亮起来,这两项会了后,你已经不能自拔了,你已经开始考虑你这辈子要走哪一行了。就是要这样练习,在写程序的时候你肯定会遇到很多问题,而这时你再去翻书找,或是问别人,当得到解答后你会记住一辈子的,知识必须用于现实生活中,解决实际问题,这样才能发挥它的作用,你自己好好想想,上了这么多年大学,天天上课,你在课堂上学到了什么?是不是为了期末考试而忙碌呢?考完得了90分,哈哈哈好高兴啊,下学期开学回来忘的一干二净,是不是?你学到什么了?但是我告诉你单片机一旦学会,永远不会忘了。另外我再说说用汇编和C语言编程的问题。很多同学大一二就开设了C语言的课,我也上过,我知道那时天天就是几乘几,几加几啊,求个阶乘啊。学完了有什么用?让你用C语言编单片机的程序你是不是就傻了?书上的东西我们必须要会运用。单片机编程用C语言或汇编语言都可以,但是我建议用C语言比较好,如果原来有C语言的基础那学起来会更好,如果没有,也可以边学单片机边学C语言,C语言也挺简单,只是一门工具而已,我劝你最好学会,将来肯定用得着,要不你以后也得学,你一点汇编都不会根本无所谓,但你一点C语言都不会那你将来会吃苦头。汇编写程序代码效率高,但相对难度较大,而且很罗嗦,尤其是遇到算法方面的问题时,根本是麻烦的不得了,现在单片机的主频在不断的提高,我们完全不需要那么高效率的代码,因为有高频率的时钟,单片机的ROM也在不断的提高,足够装得下你用C语言写的任何代码,C语言的资料又多又好找,将来可移植性非常好,只需要变一个IO口写个温度传感器的程序在哪里都能用,所以我劝大家用C语言。
  总结上面,只要你有信心,做事能坚持到底,有不成功不放弃的强烈意志,那学个单片机来说就是件非常容易的事。
  步骤:1.找本书大概了解一下单片机结构,大概了解就行。不用都看懂,又不让你出书的。(三天)
  2.找学习板练习编写程序,学单片机就是练编程序,遇到不会的再问人或查书。 (二十天)
  3.自己网上找些小电路类的资料练习设计外围电路。焊好后自己调试,熟悉过程。 (十天)
  4.自己完全设计具有个人风格的电路,产品,。。。你已经是高手了。 。。。。
  看到了吗?下功夫一个多月你就能成为高手,我就讲这么多了,学不学得会,下不下得了功夫就看你的了。
上一篇:下一篇:
看过《如何从零开始学习单片机技术》的人还看了以下文章:
Powered by &
这里是—这里可以学习 —这里是。
栏目导航:

我要回帖

更多关于 51单片机引脚功能 的文章

 

随机推荐