可編程器件固件開發的現代化方法
如果您是硬件設計人員,您一定覺得可編程器件很好用且功能強大??扇绻擒浖_發人員,這些可編程器件一定會讓您很頭疼,因為您還得為這些器件編寫固件,滿足不斷變化的目標需求。器件廠商通常在他們工具中集成軟件開發特性,創建一個整體環境來支持軟硬件兩方面需求,從而解決這一問題。
本文引用地址:http://www.j9360.com/article/137421.htm這種解決方案的難點在于,它將使軟件工程師不得不采用硬件設計人員使用的工具,而考慮到通常項目中軟硬件設計人員比例嚴重失調,這種做法往往不夠理想。有時采用一種工具沒問題,但有經驗且有成熟開發流程的分散的工程師團隊來說不太適宜。工程師需要工具對思維進行逆向工程,并將硬件設計集成在現有第三方軟件開發流程中,比方說賽普拉斯的 PSoC Creator 配合 ARM 的 μVision IDE。這種完美組合能滿足兩方面的需求,既能讓硬件工程師集中精力進行芯片創新,又不會造成軟件開發方面的瓶頸。
正如當今可編程器件的可編程能力和 CPU 性能大相徑庭一樣,可編程器件的設計團隊的規模和成員也各有不同。雖然仍有不少成功的應用是由一個兼具軟硬件專業技術的工程師實現的,但是在越來越多的情況下,產品設計是由角色分工相當明確的小團隊完成的,也就是說硬件專家負責器件配置,只需編寫一點軟件來驗證系統能夠根據預期工作,而剩下的則由軟件團隊來開發應用代碼。這種分散的團隊里的各個成員可能并不在同一幢大樓里工作,甚至根本不在同一個國家。
您的工具,您的成功之路
所有用戶均可從軟件開發的集成工具中大獲裨益。一人獨自工作,通常沒有時間去學習新工具的使用。小規模軟件團隊都有自己慣用的產品,并不希望新的軟件環境強加在他們身上。多站點工作團隊在基礎架構方面已經進行了大量投資,不能為了每個基于當前芯片的項目都開辟新的環境。簡而言之,雖然在硬件配置工具中集成軟件開發功能是一項不錯的特性,但是為商業和其它流行軟件 IDE 提供功能豐富和可靠的支持則顯得至關重要。
在詳細介紹如何將軟件 IDE集成到硬件環境中之前,我們應了解一下 PSoC 及其設計環境。PSoC 是一款完全可編程的嵌入式片上系統,其在單個芯片上集成了可配置的模擬和數字外設功能、存儲器以及微控制器等。雖然技術有很大不同,模擬內容大幅增加,但設計流程仍類似于目前您所能看見的 FPGA 器件,特別是集成了硬件微控制器內核的器件。
PSoC Creator 工具可提供非常靈活的可視化嵌入式設計方法,其中包括預配置、自定義外設和分層原理圖輸入等。當在這款工具中構建設計時,許多軟件文件已經創建完成了,最明顯的就是每個元件所用的 API 文件都已經生成并放置在項目之中了。通過 Counter_Start() 和 ADC_SetValue() 等容易記住的名字,這些 API 構成了一種簡單一致、易于使用的控制硬件外設的方法,而且無需了解全部實施細節。所有用于可編程器件的良好工具都應生成軟件接口,因為“通過構建”是確保有效無誤代碼的唯一方法。除了 API 之外,還有包含配置可編程陣列代碼的引導文件。應用總是使用這些文件,但通常不做修改,這些文件也是 IDE 導出特性的重要組成部分。
除了以硬件為中心的功能之外,PSoC Creator 還包括開發人員所期待的常用的軟件特性:源代碼編寫、項目管理、集成型編譯器、器件編程和片上調試。在現代化工具中,這些都很常見,但這種方法的問題也很簡單,喜歡使用 PSoC 的人很多,但不是他們所有人都愿意在應用開發中使用賽普拉斯的軟件工具。
樣片設計
讓我們先從一個簡單的 PSoC 設計開始,便于講解說明。PSoC Creator 的原理圖捕獲和參數化元件可讓您輕松繪制峰值檢波器電路圖?! ?/p>

這項設計使用了兩個主要元件:一個比較器 (Comp) 和一個混頻器 (Peak_Mixer)。比較器可簡單地比較兩個輸入模擬電壓并輸出數字結果。混頻器被配置為采樣模式,輸出參考和輸入信號之間的差值并在每個時鐘周期上更新該值。由于設計中的參考電壓接地 (Vssa),因此混頻器始終將采樣的輸入電壓輸出到另一個引腳(峰值)。
此外,混頻器的輸出也反饋到比較器的參考輸入 (-)。當引腳 (Sig_In) 上的電壓為低時,比較器輸出也為低,并且混頻器時鐘被 AND 門阻塞。因此,混頻器不會采樣電壓,并繼續輸出其最后采樣的峰值電壓。當引腳電壓升高時,比較器改變輸出,時鐘不再進行門控,混頻器則用新的峰值電壓更新其輸出。
構建這款設計會生成大量的 API。我們這里的目的只是想要接通電路:
? Comp_Start()
? Peak_Mixer_Start()
如果想要編寫代碼,我們需要創建 μVision 項目。在 PSoC Creator 項目菜單中選擇“導出到 IDE”向導。

評論