7大嵌入式開發技巧你知道嗎?

2022年10月14日13:49:38 科技 1588

一些學習嵌入式的學員都會覺得嵌入式太難了,要不要放棄了?學習嵌入式有什麼技巧嗎?等等,對於這些問題大家肯定都很熟悉吧,下面可以一起來了解下嵌入式開發7大技巧哦。

點擊獲取1V1嵌入式學習規劃,現在還送100G精選學習資料。(長按複製搜索鏈接)

https://s.pdb2.com/l/CMIsoKcnATFIF4M

7大嵌入式開發技巧你知道嗎? - 天天要聞

成為一個正式的嵌入式開發工程師——它是一個艱辛的過程,需要開發人員維護和管理系統的每個比特和字節。

從規範完善的開發周期到嚴格執行和系統檢查,開發高可靠性嵌入式系統的技術有許多種。今天給大家介紹7個易操作且可以長久使用的技巧,它們對於確保系統更加可靠地運行並捕獲異常行為大有幫助。

No.1用已知值填充ROM

軟件開發人員往往都是非常樂觀的一群人,只要讓他們的代碼忠實地長時間地運行就可以了,僅此而已。微控制器跳出應用程序空間並在非預想的代碼空間中執行這種情況似乎是相當少有的。然而,這種情況發生的機會並不比緩存溢出或錯誤指針失去引用少。它確實會發生,發生這種情況後的系統行為將是不確定的,因為默認情況下內存空間都是0xFF,或者由於內存區通常沒有寫過,其中的值可能只有上帝才知道。

No.2檢查應用程序的CRC

嵌入式工程師來說一個很大的好處是,我們的IDE和工具鏈可以自動產生應用程序或內存空間校驗和(Checksum),從而根據這個校驗和驗證應用程序是否完好。有趣的是,在許多這些案例中,只有在將程序代碼加載到設備時,才會用到校驗和。

No.3在啟動時執行RAM檢查

為了建立一個更加可靠和紮實的系統,確保系統硬件正常工作非常重要。畢竟硬件會發生故障。(幸運的是軟件永遠不會發生故障,軟件只會做代碼要它做的事,不管是正確的還是錯誤的)。在啟動時驗證RAM的內部或外部沒有問題,是確保硬件可以如預期般運作的一個好方法。

No.4使用堆棧監視器

對許多的嵌入式開發者而言,堆棧似乎是一股相當神秘的力量。當奇怪的事情開始發生,工程師終於被難倒了,他們開始思考,也許堆棧中發生了什麼事。結果是盲目地調整堆棧的大小和位置等等。但該錯誤往往是與堆棧無關的,但怎能如此確定?畢竟,有多少工程師真的實際執行過最壞情況下的堆棧大小分析?

堆棧大小是在編譯時就靜態分配好的,但堆棧是以動態的方式使用的。隨着代碼的執行,應用程序需要的變量、返回的地址和其它信息被不斷存儲在堆棧中。這種機制導致堆棧在其分配的內存中不斷增長。然而,這種增長有時會超出編譯時確定的容量極限,導致堆棧破壞相鄰內存區域的數據。

No.5使用MPU

在過去,是很難在一個小而廉價的微控制器中找到內存保護單元(MPU)的,但這種情況已經開始改變。現在從高端到低端的微控制器都已經有MPU,而這些 MPU為嵌入式軟件開發人員提供了一個可以大幅提高其固件(firmware)魯棒性(robustness)的機會。

No.6建立一個強大的看門狗系統

你經常會發現的一種總是最受喜愛的看門狗(watchdog)實現是,在看門狗被啟用之處(這是一個很好的開始),但也是可以用周期性定時器將該看門狗清零之處;定時器的啟用是完全與程序中出現的任何情況隔離的。使用看門狗的目的是協助確保如果出現錯誤,看門狗不會被清零,即當工作暫停,系統會被迫去執行硬件重設定(hardware reset),以便恢復。使用與系統活動獨立的定時器可以讓看門狗保持清零,即使系統已失效。

No.7避免易失存儲器分配

不習慣在資源有限環境下工作的工程師,可能會試圖使用其編程語言的特性,這種語言讓他們可以使用易失存儲器分配。畢竟,這是一種常在計算器系統中使用的技術,在計算器系統中,只有在有必要時,內存才會被分配。例如,以C開發時,工程師可能傾向於使用malloc來分配在堆(heap)上的空間。有一個操作會執行,一旦完成,可以使用free將被分配的內存返回,以便堆的使用。

以上介紹的就是嵌入式開發的7大技巧了,這些技巧也只是幫助大家更近一點的學習嵌入式而已,不過,教程是可以讓開發技術人員獲取更好嵌入式系統的辦法。

for (i = 0; i < 8; i++)

{

SetData((data >> i) & 0x1);

SetClockHigh();

for (j = 0; j < 5; j++);

SetClockLow();

for (j = 0; j < 5; j++);

}

科技分類資訊推薦

蘋果Vision Pro頭顯新專利:屏幕位置/角度隨心調,提升佩戴舒適度 - 天天要聞

蘋果Vision Pro頭顯新專利:屏幕位置/角度隨心調,提升佩戴舒適度

【TechWeb】科技媒體PatentlyApple報道稱,蘋果公司最近獲得了一項關於Vision Pro頭顯的新專利,該專利的目的是為了提升頭顯的佩戴舒適度。這項專利的核心創新在於允許用戶根據個人偏好和需求調整屏幕的位置。專利描述顯示,這款頭顯包含一個顯示單元和一個固定帶,用戶可以通過固定帶佩戴頭顯,讓屏幕位於眼睛前方。頭顯配...
2025西門子Simcenter仿真與試驗技術峰會在皖成功舉辦 - 天天要聞

2025西門子Simcenter仿真與試驗技術峰會在皖成功舉辦

5 月 23 日,為期四天的 2025 西門子大中華區 Simcenter 仿真與試驗技術峰會在合肥圓滿落幕。大會以“工程創新,智啟未來”為主題,匯聚千餘位製造業行業精英、技術領袖,及西門子全球專家,聚焦仿真與試驗前沿技術的發展與實踐,共探人工智能 (AI) 與數字孿生雙輪驅動的數智化產業變革趨勢。 Simcenter —— 全維度仿真能...
華為鴻蒙摺疊電腦預約量達11萬 部分版本已顯示缺貨 - 天天要聞

華為鴻蒙摺疊電腦預約量達11萬 部分版本已顯示缺貨

【CNMO科技消息】據CNMO了解,截至5月22日午間,華為旗下售價23999元起的鴻蒙摺疊電腦 ——HUAWEI MateBook Fold 非凡大師預約人數達到11萬。該款摺疊電腦於5月19日在nova 14系列及鴻蒙電腦新品發布會上正式推出。華為首款鴻蒙摺疊電腦作為華為首款超薄摺疊電腦,它重1.16kg,平展薄度為7.3mm,閉合薄度為14.9mm。其
真我 Neo7 Turbo 手機搭載 7200mAh 電池 + 100W 快充 - 天天要聞

真我 Neo7 Turbo 手機搭載 7200mAh 電池 + 100W 快充

IT之家 5 月 23 日消息,真我 Neo7 Turbo 手機將於 5 月 29 日 14:00 發布,realme 官方今日確認這款新機搭載 7200mAh 泰坦電池,支持 100W 快充。除此之外,這款新機還支持全場景旁路充電,遊戲、視頻、直播等多種場景邊充邊玩。IT之家注意到,今年 2 月發布的真我 GT7 Pro 競速版手機便搭載旁路充電技術,宣稱
逆境鑄輝煌:美國打壓下小米3納米芯片橫空出世 - 天天要聞

逆境鑄輝煌:美國打壓下小米3納米芯片橫空出世

在全球科技競爭的激烈浪潮中,近年來,美國為了維持自身科技霸權地位,對中國科技企業發起了一輪又一輪的打壓,其手段不斷升級,通過技術封鎖、制裁禁令等一系列不合理舉措,妄圖遏制中國科技產業的蓬勃發展,阻礙中國科技崛起的步伐。
開源引擎Godot已為visionOS提供基本支持 - 天天要聞

開源引擎Godot已為visionOS提供基本支持

上個月,在開源遊戲引擎 Godot 的 GitHub 代碼倉庫中,發生了一件備受矚目的事情。visionOS 工程團隊里的一位蘋果員工,提交了一個規模龐大的拉取請求。這一請求意味着數千行代碼被添加到 Godot 中,專門用於實現對 visionOS 平台的支持。與此同時,該員工還正式提交書面申請,希望將這些代碼合併到 Godot 的主分支里。這一...
首發密集、消費場景上新……文博會亮點多多氣象新 - 天天要聞

首發密集、消費場景上新……文博會亮點多多氣象新

第二十一屆文博會昨日在深圳開幕,六千多家政府組團、文化機構和企業線上線下參展,比上屆增加265家。今天是文博會開幕的第二天,有哪些新品亮相?還有哪些亮點值得期待?總台央視記者 杜思源:在文博會的各個展區,都設有發布專區,每天大約有二十多場新品發布會在這裡舉行。首發密集打造文化新品超級發布平台除了專區,在...