色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

談?wù)勀銓?duì)單片機(jī)的認(rèn)識(shí)

談?wù)勀銓?duì)單片機(jī)的認(rèn)識(shí)?

從大一的時(shí)候在大學(xué)圖書(shū)館看到關(guān)于AVR單片機(jī)的書(shū)籍,到參加競(jìng)賽、工作,我和單片機(jī)已經(jīng)打了六七年的交道了吧。其間我都是在做產(chǎn)品的軟件開(kāi)發(fā),與硬件工程師合作,根據(jù)需求選擇合適的單片機(jī)型號(hào)和外圍器件,完成代碼編寫(xiě)。積累了一點(diǎn)對(duì)單片機(jī)選型、特點(diǎn)的認(rèn)識(shí)。

所以這篇想談?wù)勱P(guān)于單片機(jī)特點(diǎn)和選型。

單片機(jī)

MCU,微處理器,他有很多名字,但是我還是喜歡叫他單片機(jī),因?yàn)樗褪菃螁蔚囊黄?,沒(méi)什么其他的模塊,一片里面就集成了CPU,RAM、ROM等,馮·諾依曼必有的結(jié)構(gòu)單元。只要外部給他晶振,給他電源,他就能像計(jì)算機(jī)一樣工作起來(lái)。高級(jí)一點(diǎn)的單片機(jī)內(nèi)部RC就能起振,外部晶振都可以免去,只要外部給個(gè)穩(wěn)定的3.3V,就可以工作。

單片機(jī)設(shè)備做的可以有多小?看到老外玩的蚊子飛機(jī),就知道了,大學(xué)的時(shí)候非常的震驚,也是這樣,讓我對(duì)飛行器著迷不已。

聽(tīng)過(guò)一個(gè)趣聞,就是為什么一個(gè)字節(jié)是8個(gè)BIT,而不是12個(gè)?據(jù)說(shuō)是最早的芯片,因?yàn)楣に囅拗屏耍荒苡邪藗€(gè)引腳,想要更多的引腳怎么辦,多用幾個(gè)八腳芯片就好了,于是1個(gè)字節(jié)對(duì)應(yīng)一個(gè)芯片,一個(gè)芯片的八個(gè)腳對(duì)應(yīng)八個(gè)比特就順理成章了。

計(jì)算機(jī)的技術(shù)從來(lái)都是往兩個(gè)方向發(fā)展的,一個(gè)是計(jì)算速度快,資源多,同時(shí)可處理的事件多,相對(duì)應(yīng)的,功耗大,體積大。一個(gè)就是計(jì)算速度慢,資源少,但是價(jià)格低廉,體積小,功耗低。

前者所發(fā)展而來(lái)的就是咱們的計(jì)算機(jī),WINDOWS\LINUX操作系統(tǒng),后者就是單片機(jī)系統(tǒng)了,各種嵌入式操作系統(tǒng)。手機(jī)的范疇有點(diǎn)迷了,我還是愿意把手機(jī)放在單片機(jī)系統(tǒng)這個(gè)層面來(lái)看。

在從業(yè)人數(shù)規(guī)模來(lái)看,前者發(fā)展出來(lái)的計(jì)算機(jī),軟件https://www.52fb.cn帶動(dòng)了多少人的就業(yè),我們把這從事這職業(yè)的人叫做“碼農(nóng)”,他們的工作就是在前人對(duì)計(jì)算機(jī)一層一層又一層的封裝下,進(jìn)行針對(duì)應(yīng)用的開(kāi)發(fā)。頂層軟件層的開(kāi)發(fā)需要,促成JAVA、C#、PYTHON這樣的語(yǔ)言出現(xiàn),這些語(yǔ)言本身不涉及底層,只是調(diào)用底層的接口函數(shù)。顯而易見(jiàn)的,想通過(guò)JAVA讓計(jì)算機(jī)主板發(fā)出一個(gè)方波信號(hào)出來(lái),是何等困難,但對(duì)應(yīng)的是用JAVA在通用電腦屏幕上顯示一串?dāng)?shù)字是何等的簡(jiǎn)單。

后者單片機(jī),開(kāi)發(fā)的人數(shù)就不如通用計(jì)算機(jī)了,單片機(jī)資源少,可用的“輪子”少,啥玩意都需要自己自力更生。能快速的發(fā)出方波,如果有DDS芯片的話(huà),可以調(diào)制出正弦波,等等通用主機(jī)模塊做不到的功能。更加的自定義!缺陷的話(huà),顯而易見(jiàn)的,想通過(guò)單片機(jī)在屏幕上顯示一串HELLO WORLD字符,那得是進(jìn)階的人才能做到的咯!

所以單片機(jī)軟件開(kāi)發(fā)不是“純軟件”開(kāi)發(fā),也需要對(duì)硬件有相當(dāng)?shù)膶W(xué)習(xí),對(duì)數(shù)字電路、模擬電路也要了解才行。這一行門(mén)檻高,很難速成,一定是慢慢積累~

是否“裸奔”

裸奔,顧名思義就是單片機(jī)穿不穿衣服?衣服是啥,操作系統(tǒng)唄!

選單片機(jī)的時(shí)候,根據(jù)需求不同,首先要選此單片機(jī)是否需要跑操作系統(tǒng),還是裸奔。

· 當(dāng)需要用復(fù)雜協(xié)議棧的時(shí)候,操作系統(tǒng)變得非常有用。

例如,希望咱們的單片機(jī)可以連互聯(lián)網(wǎng),通過(guò)網(wǎng)線聯(lián)網(wǎng),或者通過(guò)WIFI信號(hào)聯(lián)網(wǎng),那么多半需要運(yùn)行操作系統(tǒng),如果不跑操作系統(tǒng)也行,但是工作量很大,不穩(wěn)定。

工程師需要比方案,咱們比比方案。

1 、開(kāi)源的RTOS幾乎都提供TCP/IP協(xié)議棧,社區(qū)的開(kāi)源代碼經(jīng)過(guò)很多人,很多年的穩(wěn)定運(yùn)行。

2、自己寫(xiě)TCP/IP協(xié)議棧,嵌入到裸奔工程中,穩(wěn)定性未知,BUG數(shù)量未知。

兩個(gè)方案肯定選擇前者,筆者自己試過(guò)在ENC28J60網(wǎng)卡芯片上自己硬剛協(xié)議棧,其中艱難不言而喻,到最后還是妥協(xié)選擇開(kāi)源社區(qū)。

·當(dāng)需要運(yùn)行多個(gè)復(fù)雜任務(wù)的時(shí)候,操作系統(tǒng)很有用

操作系統(tǒng)提供TASK機(jī)制,消息管理機(jī)制,如果上位機(jī)https://www.52fb.cn經(jīng)驗(yàn)的人,對(duì)線程會(huì)有很深刻的理解,不同的TASK就是不同的線程。有了TASK機(jī)制,對(duì)任務(wù)的管理就會(huì)方便的多。好像安卓系統(tǒng)運(yùn)行起來(lái)了,咱們可以用JAVA為他隨時(shí)增加新功能,下個(gè)APK包,安裝就好了,對(duì)吧。

什么時(shí)候,我會(huì)選擇裸奔單片機(jī)?

裸奔有裸奔的好處,筆者怕黑。認(rèn)為“上位機(jī)”開(kāi)發(fā)人員之所以天天加班,有干不完的事,改不完的BUG,最大的原因就是“黑”。黑盒子太多了。黑盒子指的是一個(gè)程序塊,這個(gè)程序塊你壓根不知道他是怎么實(shí)現(xiàn)的,你只知道他提供什么功能,至于自己是不是正確的調(diào)用了黑盒子的接口,你只能通過(guò)文檔去看,然后就不斷不斷的試錯(cuò),效率極低。所以很多時(shí)候大神上位機(jī)開(kāi)發(fā)人員,是對(duì)黑盒子(某語(yǔ)言提供的對(duì)象、方法)有深刻掌握的人!

裸奔的單片機(jī)不一樣,如果你愿意,啟動(dòng)時(shí)的匯編代碼都可以自己寫(xiě),配置好時(shí)鐘,配置好各樣的寄存器,所有的代碼都是你自己寫(xiě)的,出了問(wèn)題自己找,自己的代碼還找不出原因,那就廢了。如果你覺(jué)得C語(yǔ)言也是黑盒子,為了躲避C語(yǔ)言開(kāi)發(fā)者給你留的坑,你甚至可以用匯編寫(xiě)代碼,當(dāng)然這個(gè)我不推薦了,C語(yǔ)言很棒,bug很少。裸奔開(kāi)發(fā),你眼前唯一的黑盒子就是硬件是如何實(shí)現(xiàn)的,也只有硬件能坑你一把。

不言而喻,裸奔的單片機(jī)代碼,雖然簡(jiǎn)單,但是所能做的功能也會(huì)有局限。

裸奔的話(huà),聯(lián)網(wǎng)什么的別想了。

所以如果需求比較簡(jiǎn)單,一定裸奔,需求困難,就跑操作系統(tǒng)。

什么單片機(jī)支持操作系統(tǒng)?

理論上,只要ROM/RAM資源足夠,所有的單片機(jī)都可以執(zhí)行嵌入式操作系統(tǒng),但是,不是所有人都有移植操作系統(tǒng)的能力。

新手還是得靠廠家?guī)湍阋浦膊僮飨到y(tǒng),所以選單片機(jī)的時(shí)候,得問(wèn)一下,上網(wǎng)查一下,它支持哪些操作系統(tǒng)?

以TI的 CC2640為例,這玩意支持TI自家的嵌入式操作系統(tǒng) TI-RTOS,好用!

裸奔的話(huà),所有單片機(jī)都能裸奔,畢竟不穿衣服誰(shuí)不會(huì)啊~

溫度特性

注意要看設(shè)計(jì)產(chǎn)品的工作溫度區(qū)間,是民用級(jí),還是軍工級(jí),有些單片機(jī)芯片高低溫實(shí)驗(yàn)過(guò)不了的,會(huì)出現(xiàn)代碼起飛,內(nèi)部FLASH莫名丟幾個(gè)等這些問(wèn)題,不要等代碼寫(xiě)好,送去拿證了,過(guò)不了高低溫,被老板罵~

低功耗特性

芯片是否有較好的休眠模式,老牌的芯片廠家都非常注重硬件低功耗模式,提出了各種各樣的睡眠方式,TI就是把低功耗做的很好的廠家。如果是設(shè)計(jì)電池供電的產(chǎn)品,一定要考慮低功耗。低功耗更多需要代碼去優(yōu)化,這看一個(gè)軟件工程師的水平~

一個(gè)紐扣電池,產(chǎn)品用一年,那就太牛了!

開(kāi)發(fā)環(huán)境

喜歡IAR還是MDK?筆者喜歡IAR多一點(diǎn),感覺(jué)界面很硬朗,MDK的話(huà)顯得像是在寫(xiě)上位機(jī)軟件~CORTEX Mx系列的單片機(jī)多半都是用MDK開(kāi)發(fā)的,STM32算是明星級(jí)產(chǎn)品了。TI的產(chǎn)品大多是用IAR。所以哪個(gè)開(kāi)發(fā)環(huán)境你更熟悉,也可以作為考慮范疇。

芯片是否冷門(mén)?

STM32的技術(shù)支持是真的多,資料滿(mǎn)天飛,所以如果對(duì)自己讀DATASHEET的能力有所懷疑的話(huà),一定要選類(lèi)似STM32這樣的popular芯片。

選冷門(mén)芯片是對(duì)自己的很大挑戰(zhàn),你會(huì)發(fā)現(xiàn)百度問(wèn)題幾乎沒(méi)人答,你得寫(xiě)英文e-mail給原廠工程師,滿(mǎn)心歡喜克服語(yǔ)言困難寫(xiě)完,他也不會(huì)理你。你得翻墻去國(guó)外論壇找資料。但是一旦你開(kāi)發(fā)好,你會(huì)成就感爆棚,也會(huì)覺(jué)得,單片機(jī)不過(guò)如此~然后寫(xiě)一些關(guān)于這個(gè)芯片的CSDN文章,幫助建設(shè)社區(qū)!

學(xué)生的話(huà)可以推薦嘗試嘗試,工作的就算了,都996了別升級(jí)007咯~

最近的狀態(tài)

大學(xué)的時(shí)候,對(duì)單片機(jī),對(duì)飛行器的熱情,我都在年復(fù)一年,日復(fù)一日的工作中慢慢淡去了。現(xiàn)在我唯一想的就是努力把產(chǎn)品做好,賣(mài)到世界的各個(gè)角落,這也算change world的一種方式吧~嘿嘿,自己給自己熬點(diǎn)雞湯,愿明天會(huì)好~

分享的這些,若是有用的話(huà),點(diǎn)個(gè)贊唄~

java的change,談?wù)勀銓?duì)單片機(jī)的認(rèn)識(shí)