www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 嵌入式 > 嵌入式教程
[導(dǎo)讀]別讓MCU、內(nèi)核或編程語言干擾設(shè)計

 很多時候有人試圖讓你信服:他們的“東西”或最新的產(chǎn)品將成為或取代你的下一個產(chǎn)品設(shè)計。這是真的,每天我們都在采用零星的技巧來改進嵌入式設(shè)計,有些改進確實是挑戰(zhàn),但是,如果不從可靠的、獨特的設(shè)計開始,沒有“新的技術(shù)”,產(chǎn)品不會成功。擺在我們面前的問題是,設(shè)計需要時間,時間是一種易消逝的資源,并且,所有這些新事物、新設(shè)備、新工具很重要,但并不是最重要的事情。需要防漏洞實時操作系統(tǒng)嗎?需要更快的CPU內(nèi)核嗎?微控制器中需要更密集集成的外圍設(shè)備嗎?把這些問題找出來,找到答案并為之利用,但要知道“IT”不是設(shè)計的關(guān)鍵。關(guān)鍵是設(shè)計成仿佛你想要的一切已經(jīng)存在,完全取決于您的意愿,使您的產(chǎn)品、系統(tǒng)按照您的需求、期望、要求精密“包裝”,定義接口。按照您想要的方式,用layers和wrappers構(gòu)建設(shè)計,你會發(fā)現(xiàn),采用最新的最好的事情,會使產(chǎn)品更高端,更快速,更便宜,更強大或者說隨處滿足需求,可以在以后出現(xiàn)在您的后期設(shè)計時,甚至出現(xiàn)在生產(chǎn)線上。

  該觀點還在不斷繼續(xù):

  ● 此類或那類嵌入式設(shè)計采用哪種CPU內(nèi)核最好?

  ● 開發(fā)嵌入式系統(tǒng)采用什么語言最好?哪個編譯器?

  ● 對于簡單的主循環(huán)和中斷實時操作系統(tǒng),應(yīng)該購買,自己編寫還是避開“操作系統(tǒng)”?

  作為經(jīng)驗豐富的嵌入式系統(tǒng)的開發(fā)人員,既有大型系統(tǒng)的經(jīng)驗(波音777飛行控制)又有小型單人項目(筆記本電腦熱風(fēng)扇控制)經(jīng)驗,應(yīng)避開單臺機器或語言的具體利弊,將更多的時間花在應(yīng)用程序設(shè)計和構(gòu)建上,并且獨立于語言和CPU內(nèi)核。這方面部分來自于對類似系統(tǒng)的工作,只是“再用于“下一個項目(雖然要求完全不同,并且切換到了微控制器)。我也參與過由幾個獨立的設(shè)備組成的系統(tǒng),每個設(shè)備都有自己的程序和微控制器,各部分經(jīng)常在不同的子項目之間來回使用:某個子項目中的編碼器可能是另一個項目的測試器,或當(dāng)完成自己的子項目的編碼后,會投入另一個子項目,以幫助完成項目。缺乏基于系統(tǒng)的設(shè)計方法會覺得這些情況很困難,難以按照計劃完成。通過獨立的系統(tǒng)設(shè)計可避免機器依賴性,讓設(shè)計復(fù)用和基于團隊的設(shè)計不僅成為可能,而且加大了成功機會(如以后的增加要求)。

  最近的一個項目是我更加疑慮,幾乎每次都是,必須使設(shè)計適應(yīng)(有時根本就是)所選的語言和機器。我們已經(jīng)以某個系統(tǒng)架構(gòu)和設(shè)計開始,只是按一般方式考慮了集成微控制器及其外圍設(shè)備,我們只關(guān)注我們需要什么并不關(guān)心它是如何實現(xiàn)的,至少我們是這么認(rèn)為的。我們選擇了一些非常專業(yè)外設(shè)的新器件,并且開始編碼時,發(fā)現(xiàn)需要花費大量的時間來了解如何構(gòu)建硬件,以及如何根據(jù)需求最好地利用。當(dāng)我們發(fā)現(xiàn)好的方式來利用設(shè)備的某特征時,設(shè)備的此特點通過代碼嵌入了系統(tǒng)級設(shè)計。我們已不再堅持我們的系統(tǒng),不得不讓機器和具體操作改變了系統(tǒng)設(shè)計。于是只好停下來檢查問題和實施方案,通過系統(tǒng)重新設(shè)計分離出依賴機器的“修復(fù)”,然后將“修復(fù)”融入系統(tǒng)四周的“包裝”中。

  當(dāng)設(shè)計某個應(yīng)用時(甚至單一微控制器),以調(diào)溫器為例,有一個創(chuàng)建好了的系統(tǒng)級視圖,描述了硬件和實施某種方式的應(yīng)用程序。該視圖用于多種用途,例如,可作為與高層管理人員或另一個小組進行交流的工具(不希望知道所有細節(jié)),如自動化測試人員。如果僅將其視為“視圖”而不是系統(tǒng)設(shè)計,并且實施不是從系統(tǒng)設(shè)計自上而下,而是將其用作起點,則問題就出現(xiàn)了??紤]圖1所示的溫控系統(tǒng)。

  顯示系統(tǒng)相對簡單,卻反映了許多嵌入式產(chǎn)品設(shè)計。在“溫度傳感”部分包含溫度輸入,其輸出進入主系統(tǒng)“控制邏輯”部分。“控制邏輯”的其它輸入是標(biāo)記“用戶輸入”的部分,代表人機接口,大概設(shè)置了恒溫器的溫度調(diào)節(jié)。“控制邏輯”部分根據(jù)這些輸入確定了如何命令供暖、通風(fēng)和空調(diào)(HVAC)系統(tǒng),以保持恒溫器設(shè)定的溫度,將這些命令發(fā)送到“熱與冷命令”部分。最后一個部分是“顯示輸出”,將當(dāng)前系統(tǒng)狀態(tài)傳遞到用戶。當(dāng)前系統(tǒng)狀態(tài)的一部分是恒溫設(shè)置,另一部分是最新的溫度讀數(shù),最后部分是正在執(zhí)行的命令,以迫使溫度返回恒溫設(shè)置(即加熱、冷卻和/或打開或關(guān)閉風(fēng)扇)。

 正如前面所述,這是一個直接和相對簡單的應(yīng)用,非常簡單以至于不需要考慮系統(tǒng),而是很自然地跳到實施(我相信大多數(shù)讀者甚至可以說出最喜歡的微控制器供應(yīng)商的型號)。可以是用于次級市場的高端PC游戲圖形系統(tǒng)的墻恒溫器或溫度管理裝置。用于墻恒溫器的微控制器的具體實施基本不需用于圖形系統(tǒng)。重點是,無論設(shè)計顯得多么簡單,都有很好的理由先設(shè)計系統(tǒng),然后實現(xiàn)它。將其盡量設(shè)計成適合通常應(yīng)用。

  開始時,需要考慮理想的系統(tǒng)設(shè)計,然后生成layers,在理想的系統(tǒng)和實際實施之間構(gòu)建wrappers(有時是雜亂的)。“控制邏輯”部分作為框圖的核心是有充分理由的-因為它是系統(tǒng)的內(nèi)核。周圍的每個部分都服務(wù)于“控制邏輯”部分,要根據(jù)需要提供“服務(wù)”。

  應(yīng)自“溫度傳感器”部分開始。其理由是獲得當(dāng)前/瞬時溫度,并以一致的格式提供出來。從“控制邏輯”的角度來看,其作用是“獲取溫度”,并以格式化的值(xxx.xx攝氏度)返回當(dāng)前溫度值。溫度傳感器部分的硬件wrappers將包括實施中任何需要用來將原溫度傳感輸入“翻譯”成預(yù)期格式的攝氏度。這可能意味著需要考慮獲得新讀數(shù)的最佳時間,如果溫度讀數(shù)中有太多的噪音(無論何種原因),應(yīng)添加過濾算法,并且如果溫度硬件出現(xiàn)故障,應(yīng)采用決策邏輯。重點是,“溫度傳感器”部分的輸出是什么,而且傳遞到“控制邏輯”應(yīng)為理想的溫度,所有的噪音,實際隱藏的細節(jié)都應(yīng)很容易的由wrapper代替。

  如果設(shè)計需要從系統(tǒng)中三個不同的點測量三個溫度值(對于計算機箱內(nèi)的計算機很普遍)怎么辦?處理這三個溫度是控制邏輯問題(例如,何時多路輸出也將受到控制)?如果是這樣,從1個溫度轉(zhuǎn)換到3個溫度首先意味著“溫度傳感器”部分要更新,以提供3個溫度和為每個溫度實施創(chuàng)建的wrappers(允許多種類型的輸入),然后控制邏輯也因為多個輸出而更新。這可能意味著三個不同的“GetTemperature_n”服務(wù)或需要更新服務(wù)以確定是識別哪個溫度的參量。[!--empirenews.page--]

  如果三個溫度僅僅用于加權(quán)以得到一個“更真實”的系統(tǒng)溫度,控制邏輯不需要改變,只需將含wrappers的溫度傳感塊以統(tǒng)一格式輸入這三個溫度,然后通過一個wrappers來對這三個溫度進行加權(quán),生成控制邏輯所需的單一溫度。這種方法易于包含來自不同的溫度輸入(例如,圖形處理器的二極管結(jié)測量和連接到PCB的模擬熱敏電阻),因為wrappers將系統(tǒng)邏輯與硬件隔離開。

  讓我們以兩個不同的實現(xiàn)例子驗證這個論點:一個用于墻恒溫器,另一個是顯卡上的溫度控制子系統(tǒng)。首先對于墻恒溫器,如圖2所示,假定使用基于8051的賽普拉斯PSoC3設(shè)備?!皽囟葌鞲衅鳌辈糠值挠布蛇B接到ADC(16位Δ-Σ轉(zhuǎn)換器)的熱敏電阻組成?!坝脩糨斎搿辈糠值挠布?個常開按鍵開關(guān)組成,一邊連接到電路接地端,另一邊連接到含內(nèi)部上拉電阻的5輸入數(shù)字端口。“熱和冷命令”模塊的硬件部分包括三個功率場效應(yīng)管,由配置為開漏低輸出的3輸出端口驅(qū)動。最后,“顯示輸出”塊的硬件實現(xiàn)是串行字符液晶顯示器,能夠根據(jù)需要顯示字母數(shù)字字符串。

  對于第2個應(yīng)用,即顯示卡,將用戶輸入從離散開關(guān)變?yōu)镮2C基于寄存器的從接口(由主CPU而不是人類直接控制),并將串行LCD顯示變?yōu)镾PI-從控制顯示器(使用一系列的寄存器和指令,可能是安裝在主計算機外殼前面板上的遠程變頻顯示,未安裝到顯卡上)。溫度輸入和HVAC命令保持不變。圖3顯示了早期實施的變化,假定使用基于8051的賽普拉斯PSoC3設(shè)備。

  用戶輸入的兩種實現(xiàn)均可服務(wù)于“GetThermostatSetting”、“IsHeaterEnabled”、“IsCoolerEnabled”和“IsFanOn”。對于第一個墻恒溫器應(yīng)用,“用戶輸入”將數(shù)字端口包裝到所列的服務(wù)中,當(dāng)設(shè)備被調(diào)用時,提供端口的實時讀數(shù)(一種可能的實施)。對于另一個應(yīng)用,基于I2C從機的實現(xiàn),相同的服務(wù)將來自I2C主機寫入的寄存器的最新值返回到“控制邏輯”部分,也許經(jīng)常返回也許僅在上電時返回。并且這些實現(xiàn)還有很多其它特點,包括用作切換鍵的墻上按鈕開關(guān)而不是瞬間讀數(shù),甚至在“用戶輸入”部分的wrappers深層進行邊沿觸發(fā)異步處理。

  綜合上述的關(guān)鍵是:系統(tǒng)設(shè)計隱藏了硬件細節(jié);硬件和實施細節(jié)被系統(tǒng)設(shè)計包裝并隱藏。通過外端設(shè)計(即代碼)的實施細節(jié),可以保護這些應(yīng)用實現(xiàn)時避免分裂,可以做到個性化的設(shè)計,權(quán)衡利弊,保證項目成功交付,并仍然能夠提供可復(fù)用性和組設(shè)計。不要讓賣方牽引注意力——先設(shè)計系統(tǒng),然后加強保護系統(tǒng)設(shè)計實現(xiàn)細節(jié)不被抄襲。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

日本車用MCU大廠瑞薩電子發(fā)布公告稱,該公司將于8月31日完全關(guān)閉滋賀工廠,并將土地轉(zhuǎn)讓給日本大坂的ARK不動產(chǎn)株式會社。瑞薩電子曾在2018年6月宣布,滋賀工廠將在大約兩到三年內(nèi)關(guān)閉,該工廠的硅生產(chǎn)線已于2021年3月...

關(guān)鍵字: MCU ARK 芯片

(全球TMT2022年10月17日訊)近日,第17屆中國研究生電子設(shè)計競賽全國總決賽評審工作圓滿完成。今年,來自全國63個高校的114支參賽隊伍報名了TI企業(yè)命題,創(chuàng)下歷史新高。此次TI的企業(yè)命題要求學(xué)生基于TI前沿的...

關(guān)鍵字: 電子設(shè)計競賽 TI MCU 圖像處理

單片機誕生于1971年,經(jīng)歷了SCM、MCU、SoC三大階段。單片機由以前的1位、4位、8位、16位,發(fā)展到現(xiàn)在的32位甚至64位。當(dāng)前國內(nèi)MCU廠商已有上百家,對標(biāo)進口芯片的情況非常嚴(yán)重,導(dǎo)致國內(nèi)MCU產(chǎn)品將陷入同質(zhì)化...

關(guān)鍵字: 單片機 MCU 市場

MH32F103AVET6使用高性能的32位內(nèi)核,內(nèi)置了多達2個高級定時器、10個通用定時器、2個基本定時器、3個12位的ADC、2個12位的DAC,還包含標(biāo)準(zhǔn)和先進的通信接口包括:3個SPI接口、2個I2S接口、2個I...

關(guān)鍵字: 單片機 MCU

近年來,伴隨著新能源車的生產(chǎn)制造及其對安全性較高驅(qū)動力電池的要求,高效率驅(qū)動力電池BMS愈來愈獲得重視,市場占有率開始瘋狂擴大。據(jù)統(tǒng)計,2020年我國BMS市場需求規(guī)模為97億元,同比增長6.6%,預(yù)計2022年BMS市...

關(guān)鍵字: 雅特力 新能源車 MCU BMS智能保護板

近日,沁恒微電子一款伍毛級別的RISC-V通用MCU引起行業(yè)震動,王炸價格成為眾多電子工程師交流討論的焦點。

關(guān)鍵字: 沁恒 RISC-V MCU

北京2022年10月11日 /美通社/ -- 在四川大涼山深處,有一只"涼山黑鷹"少年籃球隊:隊員平均年齡12歲,平均身高1米3,球隊剛成立時,連個像樣的球場都沒有。然而,憑著一腔熱情和驚人天賦,這只...

關(guān)鍵字: 網(wǎng)絡(luò) BSP 內(nèi)核 騰訊

近日兆易創(chuàng)新 GigaDevice 發(fā)布首款基于 Cortex?-M33 內(nèi)核的 GD32A503 系列車規(guī)級微控制器,正式進入車規(guī)級 MCU 市場。GD32A503 新品采用 40nm 車規(guī)級制程和高速嵌入式閃存 eF...

關(guān)鍵字: GigaDevice Cortex?-M33 MCU

XL32F003 系列微控制器采用高性能的 32 位 ARM?Cortex?- M0+ 內(nèi)核,寬電壓工作范圍的MCU。嵌入高達64 Kbytes flash和8 Kbytes SRAM存儲器,最高工作頻率32 MHz。包...

關(guān)鍵字: 單片機 MCU

為增進大家對芯片的認(rèn)識,本文將對MCU芯片、MCU芯片技術(shù)原理以及MCU芯片的應(yīng)用予以介紹。

關(guān)鍵字: MCU 芯片 指數(shù)

嵌入式教程

6897 篇文章

關(guān)注

發(fā)布文章

編輯精選

技術(shù)子站

關(guān)閉