自由支配!不要讓MCU、內核或編程語(yǔ)言干擾你的設計
很多時(shí)候有人試圖讓你信服:他們的“東西”或最新的產(chǎn)品將成為或取代你的下一個(gè)產(chǎn)品設計。這是真的,每天我們都在采用零星的技巧來(lái)改進(jìn)嵌入式設計,有些改進(jìn)確實(shí)是挑戰,但是,如果不從可靠的、獨特的設計開(kāi)始,沒(méi)有“新的技術(shù)”,產(chǎn)品不會(huì )成功。擺在我們面前的問(wèn)題是,設計需要時(shí)間,時(shí)間是一種易消逝的資源,并且,所有這些新事物、新設備、新工具很重要,但并不是最重要的事情。需要防漏洞實(shí)時(shí)操作系統嗎?需要更快的CPU內核嗎?微控制器中需要更密集集成的外圍設備嗎?把這些問(wèn)題找出來(lái),找到答案并為之利用,但要知道“IT”不是設計的關(guān)鍵。關(guān)鍵是設計成仿佛你想要的一切已經(jīng)存在,完全取決于您的意愿,使您的產(chǎn)品、系統按照您的需求、期望、要求精密“包裝”,定義接口。按照您想要的方式,用layers和wrappers構建設計,你會(huì )發(fā)現,采用最新的最好的事情,會(huì )使產(chǎn)品更高端,更快速,更便宜,更強大或者說(shuō)隨處滿(mǎn)足需求,可以在以后出現在您的后期設計時(shí),甚至出現在生產(chǎn)線(xiàn)上。
本文引用地址:http://dyxdggzs.com/article/106457.htm該觀(guān)點(diǎn)還在不斷繼續:
● 此類(lèi)或那類(lèi)嵌入式設計采用哪種CPU內核最好?
● 開(kāi)發(fā)嵌入式系統采用什么語(yǔ)言最好?哪個(gè)編譯器?
● 對于簡(jiǎn)單的主循環(huán)和中斷實(shí)時(shí)操作系統,應該購買(mǎi),自己編寫(xiě)還是避開(kāi)“操作系統”?
作為經(jīng)驗豐富的嵌入式系統的開(kāi)發(fā)人員,既有大型系統的經(jīng)驗(波音777飛行控制)又有小型單人項目(筆記本電腦熱風(fēng)扇控制)經(jīng)驗,應避開(kāi)單臺機器或語(yǔ)言的具體利弊,將更多的時(shí)間花在應用程序設計和構建上,并且獨立于語(yǔ)言和CPU內核。這方面部分來(lái)自于對類(lèi)似系統的工作,只是“再用于“下一個(gè)項目(雖然要求完全不同,并且切換到了微控制器)。我也參與過(guò)由幾個(gè)獨立的設備組成的系統,每個(gè)設備都有自己的程序和微控制器,各部分經(jīng)常在不同的子項目之間來(lái)回使用:某個(gè)子項目中的編碼器可能是另一個(gè)項目的測試器,或當完成自己的子項目的編碼后,會(huì )投入另一個(gè)子項目,以幫助完成項目。缺乏基于系統的設計方法會(huì )覺(jué)得這些情況很困難,難以按照計劃完成。通過(guò)獨立的系統設計可避免機器依賴(lài)性,讓設計復用和基于團隊的設計不僅成為可能,而且加大了成功機會(huì )(如以后的增加要求)。
最近的一個(gè)項目是我更加疑慮,幾乎每次都是,必須使設計適應(有時(shí)根本就是)所選的語(yǔ)言和機器。我們已經(jīng)以某個(gè)系統架構和設計開(kāi)始,只是按一般方式考慮了集成微控制器及其外圍設備,我們只關(guān)注我們需要什么并不關(guān)心它是如何實(shí)現的,至少我們是這么認為的。我們選擇了一些非常專(zhuān)業(yè)外設的新器件,并且開(kāi)始編碼時(shí),發(fā)現需要花費大量的時(shí)間來(lái)了解如何構建硬件,以及如何根據需求最好地利用。當我們發(fā)現好的方式來(lái)利用設備的某特征時(shí),設備的此特點(diǎn)通過(guò)代碼嵌入了系統級設計。我們已不再堅持我們的系統,不得不讓機器和具體操作改變了系統設計。于是只好停下來(lái)檢查問(wèn)題和實(shí)施方案,通過(guò)系統重新設計分離出依賴(lài)機器的“修復”,然后將“修復”融入系統四周的“包裝”中。
當設計某個(gè)應用時(shí)(甚至單一微控制器),以調溫器為例,有一個(gè)創(chuàng )建好了的系統級視圖,描述了硬件和實(shí)施某種方式的應用程序。該視圖用于多種用途,例如,可作為與高層管理人員或另一個(gè)小組進(jìn)行交流的工具(不希望知道所有細節),如自動(dòng)化測試人員。如果僅將其視為“視圖”而不是系統設計,并且實(shí)施不是從系統設計自上而下,而是將其用作起點(diǎn),則問(wèn)題就出現了??紤]圖1所示的溫控系統。
顯示系統相對簡(jiǎn)單,卻反映了許多嵌入式產(chǎn)品設計。在“溫度傳感”部分包含溫度輸入,其輸出進(jìn)入主系統“控制邏輯”部分。“控制邏輯”的其它輸入是標記“用戶(hù)輸入”的部分,代表人機接口,大概設置了恒溫器的溫度調節。“控制邏輯”部分根據這些輸入確定了如何命令供暖、通風(fēng)和空調(HVAC)系統,以保持恒溫器設定的溫度,將這些命令發(fā)送到“熱與冷命令”部分。最后一個(gè)部分是“顯示輸出”,將當前系統狀態(tài)傳遞到用戶(hù)。當前系統狀態(tài)的一部分是恒溫設置,另一部分是最新的溫度讀數,最后部分是正在執行的命令,以迫使溫度返回恒溫設置(即加熱、冷卻和/或打開(kāi)或關(guān)閉風(fēng)扇)。
評論