PSoC Express實施透明無代碼PSoC應用開發(fā)
PSoC作為可編程的系統(tǒng)級芯片(SoC),克服了SoC制設(shè)計制造周期長和成本高的缺點。其集成了微控制器以及嵌入式系統(tǒng)中通常位于微控制器周圍的模擬及數(shù)字組件。它具有混合信號ASIC的優(yōu)勢,同時又無需ASIC NRE或設(shè)計完成時間。從而幫助客戶節(jié)約設(shè)計時間和板上面積,降低了功耗及系統(tǒng)成本。
PSoC(可編程片上系統(tǒng))是Cypress半導體生產(chǎn)的包含有8位微處理器核和數(shù)字與模擬混合信號陣列的可編程片上系統(tǒng)。其應用領(lǐng)域與8位的MCU相同。區(qū)別于8位的MCU,PSoC的周邊數(shù)字資源(如定時器、PWM、UART等等)和周邊模擬資源(放大器、比較器、濾波器等等)以數(shù)字模塊和模擬模塊的方式提供。不同型號的PSoC芯片的差異主要在于其擁有的數(shù)字模塊和模擬模塊的數(shù)量的不同。用戶可以根據(jù)自己的需要來定義這些模塊。PSoC的集成開發(fā)環(huán)境PSoC Designer也預先為用戶定義了七十多個常用的數(shù)字和模擬資源供用戶選擇。如數(shù)字資源有:定時器、PWM、UART、SPI、CRC、PRS等等;模擬資源有放大器、比較器、濾波器等等;AD和DA轉(zhuǎn)換器由若干數(shù)字模塊和模擬模塊組合而成。所有這些預定義的模塊被稱之為用戶模塊。PSoC Designer也為用戶提供這些用戶模塊的API函數(shù)供用戶編程時調(diào)用。在PSoC Express出現(xiàn)以前,開發(fā)PSoC的應用項目與MCU的應用開發(fā)相似,使用PSoC Designer集成開發(fā)環(huán)境根據(jù)項目的需要調(diào)用和配置資源(用戶模塊),編寫代碼(C或匯編),編譯,調(diào)試….
現(xiàn)在由于PSoC Express可以在更高的抽象概念水平上運行,且無需匯編或C的軟件開發(fā),因此設(shè)計人員只需要數(shù)小時或數(shù)天時間即可完成對PSoC器件的新設(shè)計開發(fā)、仿真及編程,而不再耗時數(shù)周乃至數(shù)月。由于其采用無縫多重處理器架構(gòu)、具有設(shè)計可視化功能,包含豐富的驅(qū)動程序庫和多種傳輸函數(shù)的*估器以及軟仿真功能,因此系統(tǒng)開發(fā)工程師采用PSoC Express工具能夠更快地完成設(shè)計工作,并實現(xiàn)更高的可靠性。在PSoC Express中,尤其值得提到它的Monitor功能,它使得PSoC的無代碼、可視化應用開發(fā)變得透明化。對某些比較復雜的應用,需要及時調(diào)節(jié)或修改某些參數(shù)時,不會再有那種捉摸不定和黑匣子的感覺。使你的調(diào)試過程更從容、更快、更有效率。
透明化應用開發(fā)過程
使用PSoC Express的開發(fā)過程
1. 選擇輸入和輸出
運行PSoC Express,選擇Design選項夾,根據(jù)設(shè)計的需要選擇相應的輸入、輸出和接口驅(qū)動器。如果有的話,根據(jù)要求設(shè)定驅(qū)動器的參數(shù)。
2. 定義輸出的行為
根據(jù)不同的輸入變化,來定義系統(tǒng)的輸出行為。系統(tǒng)的輸入輸出的關(guān)系相對比較簡單的直接使用輸出驅(qū)動器的傳輸函數(shù)來定義輸入和輸出的相應關(guān)系。通過鼠標右鍵點擊輸出驅(qū)動器選擇傳輸函數(shù),輸出驅(qū)動器提供三種傳輸函數(shù):優(yōu)先編碼器、狀態(tài)編碼器和表格對應器。通過使用這三種傳輸函數(shù)建立起輸入和輸出的關(guān)系。輸入輸出的關(guān)系相對比較復雜的則需要使用*估器(Valuator),傳輸函數(shù)*估器包含6個傳輸函數(shù),它們除了輸出驅(qū)動器里提到的三種以外,還有環(huán)狀延時(LoopDelay)、狀態(tài)機和閾值(SetPointRegin)三種傳輸函數(shù)。選擇更合適的傳輸函數(shù)來產(chǎn)生中間結(jié)果作為輸出驅(qū)動器的輸入。
3. 仿真和驗證
仿真為軟仿真。它主要通過交互式的方式,移動或單擊輸入器件旁的圖形或小窗口來改變輸入的值或狀態(tài),輸出驅(qū)動器和*估器的狀態(tài)或數(shù)值顯示圖形塊中的參數(shù)值隨即發(fā)生相應的變化,通過觀察這個變化,用戶可以*估和驗證他的設(shè)計是否實現(xiàn)他所要的結(jié)果。
4.生成系統(tǒng)文件及使用編程器下載十六進制編程文件到PSoC芯片。
通常如果順利的話,軟件設(shè)計便大功告成。PSoC芯片的運行結(jié)果將滿足設(shè)計工程師的預期。但是,如果PSoC芯片的運行結(jié)果沒有滿足設(shè)計工程師的預期,則他需要重新檢查他的整個設(shè)計過程。有些項目需要通過仔細調(diào)節(jié)輸入驅(qū)動器的某些參數(shù),才能達到設(shè)計工程師的預期效果。早先的PSoC Express版本,由于沒有提供有效的調(diào)試方法,當用戶遇到諸如此類的問題時,便會有手足無措的感覺、或者仿佛感到PSoC芯片象一個黑匣子,其中間過程和中間結(jié)果不得而知。調(diào)試過程非常盲目。
現(xiàn)在PSoC Express 3.0版本為用戶提供了Monitor功能。它使用USB到I2C的轉(zhuǎn)接器將PSoC芯片和PC上的PSoC Express開發(fā)環(huán)境連接起來,在用戶用PSoC Express開發(fā)項目時增加一個步驟,即第一個階段選擇輸入和輸出時,從接口驅(qū)動器中選擇一個從的I2C驅(qū)動器加入到項目中即可。幾乎所有的的PSoC芯片都包含有I2C資源。當PSoC運行時,啟動Monitor功能,就可以在PSoC Express開發(fā)環(huán)境的輸出窗口中看到所有中間變量的實時數(shù)據(jù),它可以將多個中間變量的實時數(shù)據(jù)以動態(tài)曲線的方式給出。對有些驅(qū)動器,在Monitor的功能里,還提供調(diào)諧功能,并提供專用輸入驅(qū)動器參數(shù)調(diào)節(jié)窗口,當你在這個窗口里調(diào)節(jié)某一個參數(shù)時,馬上就可以看到受影響的曲線是如何變化的。通過這么一個簡單的工具和PSoC Express所集成的Monitor功能,使得無代碼的PSoC應用開發(fā)透明化。使得用戶開發(fā)和調(diào)試項目變得更輕松而且更有趣。