2019-02-21 10:10:27分類:嵌入式硬件開(kāi)發(fā)設(shè)計(jì)6389
本人與單片機(jī)系統(tǒng)打交道已15年有余,熟悉單片機(jī)系統(tǒng)的軟件、硬件開(kāi)發(fā),曾主持或參與開(kāi)發(fā)過(guò)的單片機(jī)系統(tǒng)產(chǎn)品,大大小小的項(xiàng)目不計(jì)其數(shù),現(xiàn)與廣大熱愛(ài)單片機(jī)系統(tǒng)開(kāi)發(fā)的工程師、在校大學(xué)生等朋友分享本人原創(chuàng)的單片機(jī)軟件硬件技術(shù)開(kāi)發(fā)經(jīng)驗(yàn)。
本文旨在引導(dǎo)尚未入門(mén)的朋友快速進(jìn)入單片機(jī)系統(tǒng)之門(mén),已經(jīng)熟悉單片機(jī)系統(tǒng)開(kāi)發(fā)的朋友敬請(qǐng)拍磚指教或留言補(bǔ)充信息,后續(xù)分享的技術(shù)文章將逐步深入。
一、入門(mén)知識(shí)儲(chǔ)備
想學(xué)習(xí)單片機(jī)系統(tǒng)的開(kāi)發(fā),必須先有以下幾個(gè)方面的知識(shí)儲(chǔ)備:
(一)微機(jī)原理
(二)C語(yǔ)言編程
微機(jī)原理既是計(jì)算機(jī)技術(shù)的入門(mén)課程,也是單片機(jī)的入門(mén)課程。其實(shí)單片機(jī)就是一臺(tái)“高度濃縮的計(jì)算機(jī)”,其基本原理與計(jì)算機(jī)及其相似,單片機(jī)麻雀雖小,計(jì)算機(jī)的五臟俱全。
C語(yǔ)言是目前單片機(jī)開(kāi)發(fā)的必備編程語(yǔ)言。單片機(jī)軟件在N年前是用匯編語(yǔ)言開(kāi)發(fā)的,每種單片機(jī)的匯編語(yǔ)言都不一樣。由于采用匯編語(yǔ)言開(kāi)發(fā)單片機(jī)軟件太過(guò)于復(fù)雜,效率及其底下,現(xiàn)在基本上都用C語(yǔ)言開(kāi)發(fā)單片機(jī)軟件了,僅在一些很特殊的場(chǎng)合才需要用到匯編語(yǔ)言,例如要求精確控制CPU某段程序的執(zhí)行時(shí)長(zhǎng)。如果還沒(méi)有C語(yǔ)言基礎(chǔ),建議先學(xué)C語(yǔ)言再學(xué)單片機(jī)。
二、單片機(jī)系統(tǒng)開(kāi)發(fā)基本條件
條件之一:手上必須有單片機(jī)實(shí)物。學(xué)習(xí)單片機(jī)重在動(dòng)手,在腦子里空想是學(xué)不起來(lái)的??梢宰约河秒娐吩O(shè)計(jì)軟件(如Altium Designer等)做一塊電路板;或者直接上某寶買(mǎi)一塊現(xiàn)成的單片機(jī)開(kāi)發(fā)板。
條件之二:?jiǎn)纹瑱C(jī)程序下載器或在線仿真器。這個(gè)設(shè)備一般沒(méi)有通用的,單片機(jī)系列不同,仿真器也不同。直接上某寶,搜“XXX單片機(jī)仿真器”,一般都能找到你想要的。
條件之三:在PC機(jī)上安裝好單片機(jī)開(kāi)發(fā)平臺(tái)。單片機(jī)開(kāi)發(fā)平臺(tái)也叫單片機(jī)開(kāi)發(fā)環(huán)境,是單片機(jī)軟件代碼的編輯工具和代碼編譯工具的結(jié)合體。單片機(jī)品牌和系列不同,其開(kāi)發(fā)平臺(tái)也不一樣,例如STM8可以用IAR進(jìn)行軟件開(kāi)發(fā),也可以采用ST公司自己開(kāi)發(fā)的STVD進(jìn)行軟件開(kāi)發(fā)。
具備以上三個(gè)條件,你就可以開(kāi)工了。
三、后話
雖然世界上的單片機(jī)種類有上千種,但單片機(jī)技術(shù)基本上是相通的,只要掌握了一款單片機(jī)的開(kāi)發(fā),以后遇到其他品種的單片機(jī)就非常容易上手了。如果學(xué)習(xí)第一款單片機(jī)需要2個(gè)月時(shí)間,那么學(xué)習(xí)第二款單片機(jī)就只需要2天時(shí)間。
以上只是談到單片機(jī)系統(tǒng)開(kāi)發(fā)的最基本的條件,但我們知道單片機(jī)最終還是應(yīng)用于產(chǎn)品之內(nèi)的,單片機(jī)系統(tǒng)開(kāi)發(fā)最終還是為了產(chǎn)品開(kāi)發(fā)。因此,僅僅學(xué)會(huì)單片機(jī)軟件編程還是遠(yuǎn)遠(yuǎn)不夠的。一款單片機(jī)系統(tǒng)產(chǎn)品從項(xiàng)目立項(xiàng)到最終實(shí)現(xiàn)產(chǎn)品量產(chǎn),其中涉及到的方方面面技術(shù)問(wèn)題還有很多很多,例如如何選擇最合適的單片機(jī)、硬件的電磁兼容問(wèn)題、軟件的bug調(diào)試和軟件可靠性、數(shù)字量和模擬量信號(hào)采集、一般高低電平輸出和PWM輸出、操作系統(tǒng)、產(chǎn)品成本…,太多太多了!