單片機(jī)設(shè)計(jì)經(jīng)驗(yàn)技巧精華集錦(六)
四、如何邁入單片機(jī)開發(fā)世界
有了單片機(jī)實(shí)驗(yàn)板你就要多練習(xí),最好是自己有臺電腦,少下載幾部電影,少網(wǎng)絡(luò)游戲,把實(shí)驗(yàn)板和電腦連好,安裝上必備的軟件,下載參考程序,并修改參考程序,從最簡單的交通燈實(shí)驗(yàn)做起,等你發(fā)現(xiàn)你能控制交通燈,并了解交通的軟硬設(shè)計(jì)的時(shí)候你已經(jīng)入門了,你會發(fā)現(xiàn)單片機(jī)是多么迷人的東西啊,這不是在學(xué)習(xí)知識,而是在提升自我的價(jià)值。用途那么廣的交通的設(shè)計(jì)都不在話下了,你還會覺得你沒有學(xué)到東西嗎。還會覺得自己什么都不會嗎?計(jì)算機(jī)編程、電子技術(shù)的專業(yè)知識都用上了啊。
當(dāng)你編寫的程序按你的意愿實(shí)現(xiàn)時(shí),你比做什么事都開心,那種學(xué)習(xí)的收獲感和成就感還有充實(shí)感是非常難得的。然后讓數(shù)碼管亮起來顯示你所需要的數(shù)字。這兩部分會了以后,你已經(jīng)不能自拔了,你已經(jīng)開始考慮你這輩子要走哪一行了。就這樣學(xué)習(xí),在寫程序的時(shí)候你肯定會遇到很多問題,而這時(shí)你再去翻書找,這其中你會找你之前學(xué)過的編程的書,還有數(shù)電模電的書,你會發(fā)現(xiàn)原來之前學(xué)的知識還是有用的。遇到不懂再去找以前學(xué)過的書本查閱這才是 “溫故而知新,可以為師矣”的大道理啊。
知識必須用于現(xiàn)實(shí)生活中,解決實(shí)際問題,用單片機(jī)設(shè)計(jì)個(gè)簡易的家電定時(shí)器、紅外遙控器什么,這樣才能發(fā)揮它的作用,好好想想,上了這么多年大學(xué),探索了那么久,猶豫徘徊,天天上課,在課堂上學(xué)到了什么?是不是為了期末60分的考試而忙碌,僥幸靠了90分,很高興啊,在別人面前吹自己專業(yè)知識如何如何學(xué)習(xí)的好,殊不知,大學(xué)考試不像高中考試啊,那了獎學(xué)金又怎樣。但是下學(xué)期開學(xué)回來一想,所學(xué)的知識已經(jīng)忘記的一干二凈。學(xué)到什么了?為什么要推薦學(xué)習(xí)單片機(jī),因?yàn)閱纹瑱C(jī)是工科生學(xué)的,集合計(jì)算機(jī)編程電子技術(shù)及多門控制語言為一體的學(xué)科,與其說學(xué)習(xí)是在學(xué)習(xí)單片機(jī),不如說是在學(xué)習(xí)一個(gè)大學(xué)科。
五、學(xué)習(xí)單片機(jī)是匯編編程還是C語言編程 關(guān)于用匯編和C語言編程的問題。這個(gè)問題困惱很多人,可能主要是學(xué)校教學(xué)和部分教材的教育引導(dǎo)引起的吧,大一開了C語言編程,沒等學(xué)生知道到底C語言有什么實(shí)際的用途,馬上其他的語言一起來過來了。即使是開始了專門的單片機(jī)課程,但是課程的內(nèi)容與技術(shù)文檔很相識,指令很多,但是完整的不多,所以學(xué)完了也不知道,到底為什么要學(xué)習(xí)編程。很多同學(xué)大一就開設(shè)了C語言的課,我也上過,但是那時(shí)候就是天天幾乘幾,幾加幾啊,求個(gè)階乘啊,用C語言去解決小學(xué)數(shù)學(xué)問題,每周兩次上機(jī),對著書本不停的敲打,下課了也不知道自己到底掌握了什么,掌握了這個(gè)有什么用途。學(xué)完了有什么用?如果在面試的時(shí)候,老板問,你學(xué)過編程嗎,你腦子里馬上是什么“C語言,VC什么VB。很多,什么C語言是基礎(chǔ)是面向工程的,什么VC是高級面向?qū)ο蟮摹保抢习逵謫?,你能將你所學(xué)習(xí)的C語言應(yīng)用到實(shí)際中不,比如設(shè)計(jì)一個(gè)定時(shí)報(bào)警器的C語言。這下傻了,學(xué)校里沒有學(xué)過啊。
單片機(jī)編程用C語言或匯編語言都可以,但是我建議用C語言比較好,模塊化管理編程方便,移植性強(qiáng),適合編寫大程序。如果原來有C語言的基礎(chǔ)那學(xué)起來會更好,如果沒有,也可以邊學(xué)單片機(jī)邊學(xué)C語言。雖然很多人是從匯編語言開始接觸單片機(jī)的,但是寫小程序匯編語言還是簡單的,如果要實(shí)現(xiàn)一些算法,那匯編語言就不簡單了。雖說C語言編譯以后代碼量明顯比匯編長,而且執(zhí)行效率也沒有匯編語言高,但是在以前單片機(jī)開發(fā)中芯片工藝的限制,及單片機(jī)主頻的限制,很多單片機(jī)內(nèi)部存儲器小的可伶,主頻也小得可伶。但是現(xiàn)在不一樣了,芯片內(nèi)部的存儲器根不不在乎這點(diǎn)差別。主頻也越來越高。
那匯編語言是不是不學(xué)了呢?不是的,一定要學(xué)習(xí),有兩方面首先入門單片機(jī)的時(shí)候要用匯編語言,它的語法簡單。第二如果你要做單片機(jī)的程序的高級設(shè)計(jì)師,那匯編語言是非掌握不可的,很多像高級單片機(jī)ARM都是匯編語言作為引導(dǎo)代碼的,還有就是很多新出品的單片機(jī)起先也是先有匯編語言編譯器之后才有C語言編譯器。所以,我覺得對于單片機(jī)學(xué)習(xí)匯編語言入門,C語言精通,匯編語言再精通。最后,對于單片機(jī)的學(xué)習(xí),入門為先,入門了以后就要去關(guān)注市場,關(guān)注企業(yè),企業(yè)需要什么樣的人才,我想有了基礎(chǔ)以后在面試之前了解下企業(yè)所需要的單片機(jī)類型,很快就上手了,畢竟學(xué)習(xí)是相同的。
蜂鳴器相關(guān)文章:蜂鳴器原理
評論