接觸STM32之后,有種相見(jiàn)恨晚的強(qiáng)烈感覺(jué)。51在屬于他的那個(gè)年代,不可否認(rèn)他在嵌入式領(lǐng)域的豐功偉績(jī)。但今天,這里的戰(zhàn)場(chǎng)不屬于51,。要不是因?yàn)閭ゴ蟮闹袊?guó)教育機(jī)構(gòu)總能“跟上時(shí)代的步伐”,51真應(yīng)該出現(xiàn)在博物館。 如果你用過(guò)51,我保證你只要你和STM32擦肩而過(guò),你會(huì)深深愛(ài)上這家伙,一發(fā)不可收拾,真的。
本文引用地址:http://m.butianyuan.cn/article/201611/321305.htm 硬件。
速度上。51與STM32的區(qū)別就是牛拉車與法拉利的區(qū)別,這個(gè)說(shuō)得夠明顯了,你懂的。51來(lái)個(gè)12M就算是一種奢侈了,代碼量稍稍大一點(diǎn),就來(lái)不起,讓你不得優(yōu)化這里優(yōu)化哪里;說(shuō)真的,51這家伙總喜歡給工程師們繞裹腳。STM32,知道有多HAPPY,動(dòng)不動(dòng)就是72M、100M,代碼跑的如此開(kāi)心、如此歡唱淋漓。接觸過(guò)STM32的大神都知道,STM32在硬件上完爆51。
配置上面。我只能說(shuō),51除了它自己,還有什么。有I2C嗎?沒(méi)有!有SPI嗎?沒(méi)有!有USB嗎?沒(méi)有!有以太網(wǎng)嗎?更沒(méi)有!沒(méi)有!,,,,,,沒(méi)有!不說(shuō)了,51不好意思了。
好吧,軟件。
這個(gè)環(huán)節(jié)環(huán)節(jié)上面,STM32強(qiáng)過(guò)51,不是一點(diǎn)點(diǎn)。為啥,地球人都知道STM32有一個(gè)底層驅(qū)動(dòng)的庫(kù),這個(gè)庫(kù)的代碼完全開(kāi)源。當(dāng)大神們使用這個(gè)庫(kù)做開(kāi)發(fā)的時(shí)候,比使用51來(lái)得happy。使用這個(gè)庫(kù)開(kāi)發(fā)軟件,就像是在旅游一樣,真的,假如你經(jīng)歷過(guò)51代碼開(kāi)發(fā),真的。而且,使用這個(gè)庫(kù),開(kāi)發(fā)的代碼bug也很少,使用庫(kù)有種站在巨人的肩上的飄飄欲仙感。舉個(gè)例子吧,來(lái)自網(wǎng)絡(luò)大神——ST的這個(gè)庫(kù)是有ST官方團(tuán)隊(duì)打造的,經(jīng)過(guò)認(rèn)真的測(cè)試。例如你要處理器支持USB的U盤(pán)功能,對(duì)于51來(lái)說(shuō),你可能現(xiàn)在網(wǎng)上竊取一段代碼,然后熬夜開(kāi)始移植。移植工作本身就很累,麻煩不說(shuō),bug又多。但是對(duì)于STM32來(lái)說(shuō),這些在庫(kù)函數(shù)里面早就有了,而且很成熟,開(kāi)發(fā)起來(lái)很happy,很流暢,很舒服,很享受。
價(jià)格,這是51貌似唯一的資本。錯(cuò)了,STM32最便宜的8元錢(qián)。
走過(guò)51,我才發(fā)現(xiàn)。這是一個(gè)誤區(qū):學(xué)習(xí)ARM前,最好用51打打基礎(chǔ)。事實(shí)上,完全沒(méi)有這個(gè)必要。51操作底層是通過(guò)操作寄存器,而STM32都是通過(guò)調(diào)用庫(kù)函數(shù)達(dá)到控制底層的目的。這兩種底層代碼編寫(xiě)模式是完全不同的,相反,你從51過(guò)度到STM32會(huì)很不適應(yīng)。所以,完全沒(méi)有必要先搞搞51,然后STM32。以我的經(jīng)驗(yàn),直接上STM32就可以了。調(diào)用庫(kù)函數(shù)編程,會(huì)很happy的,相信我。
以上,僅僅是吐槽而已,切莫當(dāng)真。
51,為嵌入式做出了很多貢獻(xiàn),也為踏入嵌入式門(mén)檻的大神們鋪平了道路。畢竟51最簡(jiǎn)單,容易上手,不難理解,是跨入嵌入式的第一道也是最低的門(mén)檻。鄙人也是路過(guò)51,走過(guò)來(lái)的,感謝51。
如果你是一名學(xué)生,還是蠻推薦先搞搞51,然后ARM比較好,畢竟這能讓你知道底層是怎么回事。搞嵌入式,總不能對(duì)代碼如何實(shí)現(xiàn)不明不白吧。當(dāng)然,作為工程師,就沒(méi)有這個(gè)必要了,項(xiàng)目時(shí)間這么緊,哪有時(shí)間,臭美了。
評(píng)論