<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 自由支配!不要讓MCU、內核或編程語(yǔ)言干擾你的設計

自由支配!不要讓MCU、內核或編程語(yǔ)言干擾你的設計

作者:Jon D. Pearson 賽普拉斯半導體公司 時(shí)間:2010-03-02 來(lái)源:電子產(chǎn)品世界 收藏

  正如前面所述,這是一個(gè)直接和相對簡(jiǎn)單的應用,非常簡(jiǎn)單以至于不需要考慮系統,而是很自然地跳到實(shí)施(我相信大多數讀者甚至可以說(shuō)出最喜歡的微控制器供應商的型號)??梢允怯糜诖渭壥袌?chǎng)的高端PC游戲圖形系統的墻恒溫器或溫度管理裝置。用于墻恒溫器的微控制器的具體實(shí)施基本不需用于圖形系統。重點(diǎn)是,無(wú)論設計顯得多么簡(jiǎn)單,都有很好的理由先設計系統,然后實(shí)現它。將其盡量設計成適合通常應用。

本文引用地址:http://dyxdggzs.com/article/106457.htm

  開(kāi)始時(shí),需要考慮理想的系統設計,然后生成layers,在理想的系統和實(shí)際實(shí)施之間構建wrappers(有時(shí)是雜亂的)。“控制邏輯”部分作為框圖的核心是有充分理由的-因為它是系統的。周?chē)拿總€(gè)部分都服務(wù)于“控制邏輯”部分,要根據需要提供“服務(wù)”。

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

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

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

  讓我們以?xún)蓚€(gè)不同的實(shí)現例子驗證這個(gè)論點(diǎn):一個(gè)用于墻恒溫器,另一個(gè)是顯卡上的溫度控制子系統。首先對于墻恒溫器,如圖2所示,假定使用基于8051的賽普拉斯PSoC3設備。“溫度傳感器”部分的硬件由連接到ADC(16位Δ-Σ轉換器)的熱敏電阻組成。“用戶(hù)輸入”部分的硬件由5個(gè)常開(kāi)按鍵開(kāi)關(guān)組成,一邊連接到電路接地端,另一邊連接到含內部上拉電阻的5輸入數字端口。“熱和冷命令”模塊的硬件部分包括三個(gè)功率場(chǎng)效應管,由配置為開(kāi)漏低輸出的3輸出端口驅動(dòng)。最后,“顯示輸出”塊的硬件實(shí)現是串行字符液晶顯示器,能夠根據需要顯示字母數字字符串。

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



關(guān)鍵詞: cypress MCU 內核 編程語(yǔ)言

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>