嵌入式到物聯(lián)網(wǎng)(三):物聯(lián)網(wǎng)的嵌入式編程

姓名:劉亞洲? ? 學(xué)號(hào):19020100170? 學(xué)院:電子工程學(xué)院

轉(zhuǎn)自:

https://blog.csdn.net/alitech2017/article/details/105680269

【嵌牛導(dǎo)讀】本文介紹了物聯(lián)網(wǎng)的嵌入式編程

【嵌牛鼻子】嵌入式編程

【嵌牛提問】嵌入式編程和物聯(lián)網(wǎng)的關(guān)系淑趾?

【嵌牛正文】

嵌入式編程在使設(shè)備滿足人們的需求方面具有悠久的歷史伞租。但是,它在很大程度上仍然被應(yīng)用程序編程所掩蓋蔗坯。當(dāng)應(yīng)用程序程序員采用相對(duì)高級(jí)的面向?qū)ο蟮恼Z言(如C ++或Java)或圖形化應(yīng)用程序開發(fā)環(huán)境(如MATLAB)時(shí)溪胶,嵌入式程序員依然在使用C語言編程甚纲。它們總是被應(yīng)用程序程序員所淘汰听盖。如今绞吁,即使是業(yè)余愛好者也可以使用簡(jiǎn)單的語言來開發(fā)應(yīng)用程序并與世界分享幢痘,而嵌入式程序員則需要對(duì)硬件和固件有深刻的了解,以及如何編寫可以在資源經(jīng)常受限的環(huán)境中執(zhí)行的程序家破。隨著物聯(lián)網(wǎng)(IoT)的出現(xiàn)颜说,平衡最終可以改變。現(xiàn)在汰聋,許多新的恒溫器门粪,烤面包機(jī),手表和燈泡都配備了處理器和連接功能烹困,市場(chǎng)需要更多的嵌入式程序員來對(duì)這些設(shè)備進(jìn)行編程玄妈,并需要更簡(jiǎn)單的工具來使這些編程器能夠在不陷入低級(jí)硬件的情況下編寫代碼。

什么是嵌入式編程髓梅?

Techopedia對(duì)嵌入式編程的定義是“一種特定的編程類型拟蜻,它支持創(chuàng)建面向消費(fèi)者或面向企業(yè)的設(shè)備,這些設(shè)備不象全尺寸筆記本電腦和移動(dòng)設(shè)備那樣在傳統(tǒng)操作系統(tǒng)上運(yùn)行枯饿≡凸”嵌入式編程的理念是驅(qū)動(dòng)當(dāng)今IT市場(chǎng)中數(shù)字家電和設(shè)備發(fā)展的一部分。

簡(jiǎn)單地說奢方,嵌入式編程是為小型計(jì)算機(jī)設(shè)計(jì)和編寫程序搔扁,這些計(jì)算機(jī)嵌入傳統(tǒng)PC、筆記本電腦或智能手機(jī)以外的設(shè)備中蟋字。它使微控制器能夠喚醒以前的啞設(shè)備稿蹲,如恒溫器、照明系統(tǒng)鹊奖、停車設(shè)備等场绿。

嵌入式編程和物聯(lián)網(wǎng)

從工程的角度看,物聯(lián)網(wǎng)描述了一個(gè)由微處理器控制的嵌入式設(shè)備的網(wǎng)絡(luò),該網(wǎng)絡(luò)直接或間接連接到Web焰盗。因此璧尸,物聯(lián)網(wǎng)的三個(gè)支柱是:

嵌入式編程

網(wǎng)絡(luò)技術(shù)

信息技術(shù)

物聯(lián)網(wǎng)很快將無處不在。因此熬拒,嵌入式設(shè)備很快也將無處不在爷光。

簡(jiǎn)要介紹一下物聯(lián)網(wǎng)改變行業(yè)的一些方式:

1)工業(yè):工業(yè)機(jī)械和控制,溫度監(jiān)測(cè)和異常檢測(cè)澎粟。

2)醫(yī)療保街颉:血壓監(jiān)測(cè)器,心跳監(jiān)測(cè)器活烙,健身追蹤器徐裸,嵌入式藥物輸送。

3)航空航天和國防:飛行控制系統(tǒng)啸盏,驅(qū)動(dòng)重贺,空氣和熱管理,發(fā)動(dòng)機(jī)功率監(jiān)測(cè)和控制回懦。

4)智能家居:家庭安全系統(tǒng)气笙,攝像頭,電視和廚房電器怯晕。

深入嵌入式系統(tǒng)

有人說潜圃,世界上每一個(gè)復(fù)雜的系統(tǒng)都可以簡(jiǎn)化為兩個(gè)概念領(lǐng)域:軟件和硬件。嵌入式系統(tǒng)或多或少地代表了這些領(lǐng)域的交叉點(diǎn):硬件和軟件舟茶。

探索嵌入式硬件

典型的嵌入式開發(fā)板分為五個(gè)模塊:處理器谭期,內(nèi)存,輸入設(shè)備吧凉,輸出設(shè)備和總線控制器崇堵。

嵌入式系統(tǒng)的硬件組件

1)處理器

嵌入式處理器可以分為兩類:普通微處理器使用單獨(dú)的集成電路作為存儲(chǔ)器和外設(shè);微控制器使用片上外設(shè)客燕,降低了功耗鸳劳、體積和成本。其中一些例子包括:

微控制器(CPU):一種智能設(shè)備也搓,用于計(jì)算用戶分配的任務(wù)赏廓,并通過精確計(jì)算構(gòu)建小型應(yīng)用程序。

片上系統(tǒng)(SoC):在單個(gè)集成電路上包括CPU傍妒,外圍設(shè)備(計(jì)時(shí)器幔摸,計(jì)數(shù)器等),通信接口(I2C颤练,SPI既忆,UART)和電源管理電路。

ASIC處理器(專用集成電路):由公司或制造商設(shè)計(jì)用于特定應(yīng)用。

DSP處理器:消除噪聲并提高音頻和視頻應(yīng)用程序的信號(hào)質(zhì)量患雇。

2)內(nèi)存

內(nèi)存用于存儲(chǔ)設(shè)備上正在使用的數(shù)據(jù)跃脊。嵌入式系統(tǒng)中使用的存儲(chǔ)器類型的一些示例包括非易失性RAM(隨機(jī)存取存儲(chǔ)器),易失性RAM苛吱,DRAM(動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器)等酪术。

3)輸入設(shè)備

輸入設(shè)備(例如傳感器,開關(guān)翠储,光電二極管绘雁,光耦合器等)從外界捕獲數(shù)據(jù),以進(jìn)行處理或從設(shè)備中導(dǎo)出援所。

4)輸出設(shè)備

輸出設(shè)備庐舟,包括LCD(液晶顯示器)或LED(發(fā)光二極管)顯示器、七段式顯示器住拭、蜂鳴器和繼電器挪略,響應(yīng)來自微控制器外部的輸入事件。

5)總線控制器

總線控制器是一種通信設(shè)備废酷,可在嵌入式系統(tǒng)內(nèi)部的組件之間傳輸數(shù)據(jù)。使用最廣泛的總線控制器是串行總線(I2C抹缕,SPI澈蟆,SMBus等),RS232卓研,RS485和通用串行總線(USB)趴俘。

探索嵌入式軟件

嵌入式軟件(有時(shí)稱為固件)是為設(shè)備驅(qū)動(dòng)程序、操作系統(tǒng)和應(yīng)用程序以及錯(cuò)誤處理和調(diào)試編寫的奏赘。

嵌入式系統(tǒng)的軟件組件

1)設(shè)備驅(qū)動(dòng)

設(shè)備驅(qū)動(dòng)程序是為特定硬件編寫的一段嵌入式代碼寥闪。

2)操作系統(tǒng)(OS)或MicroOS

嵌入式系統(tǒng)有一系列的操作系統(tǒng),包括實(shí)時(shí)操作系統(tǒng)(RTOS)磨淌、移動(dòng)嵌入式疲憋、單機(jī)和網(wǎng)絡(luò)嵌入式系統(tǒng)。

現(xiàn)在梁只,大多數(shù)嵌入式軟件都是用兩種語言編寫的:C和C++缚柳。就語法而言,C和C++之間沒有太大區(qū)別搪锣。但是秋忙,C++具有一些附加功能,例如增強(qiáng)的安全性和與實(shí)際應(yīng)用程序的緊密性构舟,而C被認(rèn)為更可靠灰追,并且通過與硬件直接交互具有更好的性能。

創(chuàng)建嵌入式產(chǎn)品時(shí)的主要注意事項(xiàng)

開始編寫直接影響物理對(duì)象的軟件的最佳方法是探索嵌入式平臺(tái),例如Arduino弹澎,Raspberry Pi或Particle朴下。

要開發(fā)可行的產(chǎn)品,您應(yīng)該采取以下步驟:

步驟1. 學(xué)習(xí)C或C++

這是許多人停止學(xué)習(xí)的地方裁奇,因?yàn)檫@些語言可能很難學(xué)習(xí)桐猬。但是,如果要編寫嵌入式軟件刽肠,則必須學(xué)習(xí)C/C++(可能最終是Rust)溃肪。

步驟2. 學(xué)習(xí)一些基本的電子產(chǎn)品

至少要了解電壓,電流音五,功率惫撰,電阻和歐姆定律。

步驟3. 獲取基本設(shè)備

嵌入式程序員與物理世界進(jìn)行交互躺涝,因此厨钻,諸如烙鐵,數(shù)字萬用表(DMM)和硬件調(diào)試器/ JTAG適配器(例如ST-Link或OLMEX適配器)或邏輯分析儀之類的工具將有所幫助坚嗜。

步驟4. 選擇一個(gè)微控制器和工具鏈

要使程序運(yùn)行夯膀,您需要一個(gè)微控制器才能真正運(yùn)行它,一個(gè)編譯器會(huì)編譯該微控制器的代碼苍蔬,并使用其他工具將程序加載到您的硬件上诱建。微控制器與工具鏈結(jié)合的一個(gè)例子是arm-gcc和openOCD工具鏈支持的STM32微控制器。

步驟5. 了解數(shù)據(jù)表(Datasheets)

在實(shí)際坐下來編寫代碼的第一行之前碟绑,您需要了解(最終用戶)規(guī)范俺猿。

步驟6. 檢查組件

分析并挑選制造產(chǎn)品所需的組件(軟件和硬件)。

步驟7. 設(shè)計(jì)產(chǎn)品

設(shè)計(jì)始終是任何開發(fā)周期中最關(guān)鍵的階段格仲。嵌入式編程的特殊性是您必須分別開發(fā)硬件和軟件部分押袍,然后再將它們集成。

步驟8. 開發(fā)原型

原型是一個(gè)示例版本凯肋,旨在測(cè)試使用選定的硬件和軟件工具根據(jù)規(guī)范開發(fā)的概念谊惭。

步驟9:測(cè)試應(yīng)用程序

有了原型后,就可以運(yùn)行測(cè)試用例來挖掘應(yīng)用程序的潛力侮东。

步驟10:部署應(yīng)用程序

測(cè)試完應(yīng)用程序之后午笛,將在真實(shí)環(huán)境中檢查結(jié)果,以實(shí)現(xiàn)概念驗(yàn)證(一種用于驗(yàn)證想法的技術(shù))苗桂。

步驟11:支持和升級(jí)

如果需要药磺,您應(yīng)該準(zhǔn)備提供支持并使用新功能升級(jí)應(yīng)用程序。

現(xiàn)在您已準(zhǔn)備好開始改變世界煤伟!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末癌佩,一起剝皮案震驚了整個(gè)濱河市木缝,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌围辙,老刑警劉巖我碟,帶你破解...
    沈念sama閱讀 219,110評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異姚建,居然都是意外死亡矫俺,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,443評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門掸冤,熙熙樓的掌柜王于貴愁眉苦臉地迎上來厘托,“玉大人,你說我怎么就攤上這事稿湿∏ζィ” “怎么了?”我有些...
    開封第一講書人閱讀 165,474評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵饺藤,是天一觀的道長(zhǎng)包斑。 經(jīng)常有香客問我,道長(zhǎng)涕俗,這世上最難降的妖魔是什么罗丰? 我笑而不...
    開封第一講書人閱讀 58,881評(píng)論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮再姑,結(jié)果婚禮上萌抵,老公的妹妹穿的比我還像新娘。我一直安慰自己询刹,他們只是感情好谜嫉,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,902評(píng)論 6 392
  • 文/花漫 我一把揭開白布萎坷。 她就那樣靜靜地躺著凹联,像睡著了一般。 火紅的嫁衣襯著肌膚如雪哆档。 梳的紋絲不亂的頭發(fā)上蔽挠,一...
    開封第一講書人閱讀 51,698評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音瓜浸,去河邊找鬼澳淑。 笑死,一個(gè)胖子當(dāng)著我的面吹牛插佛,可吹牛的內(nèi)容都是我干的杠巡。 我是一名探鬼主播,決...
    沈念sama閱讀 40,418評(píng)論 3 419
  • 文/蒼蘭香墨 我猛地睜開眼雇寇,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼氢拥!你這毒婦竟也來了蚌铜?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,332評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤嫩海,失蹤者是張志新(化名)和其女友劉穎冬殃,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體叁怪,經(jīng)...
    沈念sama閱讀 45,796評(píng)論 1 316
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡审葬,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,968評(píng)論 3 337
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了奕谭。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片涣觉。...
    茶點(diǎn)故事閱讀 40,110評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖展箱,靈堂內(nèi)的尸體忽然破棺而出旨枯,到底是詐尸還是另有隱情,我是刑警寧澤混驰,帶...
    沈念sama閱讀 35,792評(píng)論 5 346
  • 正文 年R本政府宣布攀隔,位于F島的核電站,受9級(jí)特大地震影響栖榨,放射性物質(zhì)發(fā)生泄漏昆汹。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,455評(píng)論 3 331
  • 文/蒙蒙 一婴栽、第九天 我趴在偏房一處隱蔽的房頂上張望满粗。 院中可真熱鬧,春花似錦愚争、人聲如沸映皆。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,003評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽捅彻。三九已至,卻和暖如春鞍陨,著一層夾襖步出監(jiān)牢的瞬間步淹,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,130評(píng)論 1 272
  • 我被黑心中介騙來泰國打工诚撵, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留缭裆,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,348評(píng)論 3 373
  • 正文 我出身青樓寿烟,卻偏偏與公主長(zhǎng)得像澈驼,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子筛武,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,047評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容