電動車作為一種新型的代步工具,,已經(jīng)實實在在地被人民群眾所接受,。尤其是在當(dāng)前油價飛漲、摩托車牌照發(fā)放受限,,汽車的夢想可望而不可即的情況下,,電動車越來越受到老百姓的青睞,。在中國這樣一個“自行車王國”,電動車的市場空間是值得期待的,。業(yè)內(nèi)人士預(yù)測,,未來幾年內(nèi),電動車的容量幾乎相當(dāng)于自行車的市場容量,,全國4.5億輛自行車用戶中至少有3億的用戶將成為電動車的用戶,。隨著電動車市場趨向成熟,,無刷電機電動車逐漸占據(jù)了80%以上的市場份額,無刷電機控制器也在不斷的技術(shù)進(jìn)步中被廣大用戶所喜愛,,并且將會不斷地推陳出新,,以豐富的功能來適應(yīng)市場的變化。
PSoC微處理器是美國賽普拉斯半導(dǎo)體公司推出的一種現(xiàn)場可編程片上系統(tǒng),。片內(nèi)備有通用模擬和數(shù)字模塊,,用戶可根據(jù)開發(fā)需要,隨意調(diào)用模塊,,實現(xiàn)混合信號陣列的動態(tài)配置,。文中以CY8C24423為例,介紹PSoC在電動車無刷電機控制器上的應(yīng)用,,它將對電壓電流信號的放大,、處理、模數(shù)轉(zhuǎn)換功能,,以及PWM信號輸出功能全部集成到微處理器的內(nèi)部完成,,減少了芯片的外圍器件,提高了系統(tǒng)整體的集成性能和可靠性,。
可編程片上系統(tǒng)
由美國賽普拉斯半導(dǎo)體公司倡導(dǎo)并推出的完全基于通用IP模塊,,由可編程選擇來構(gòu)成產(chǎn)品SoC的設(shè)想,并把單片機的發(fā)展從MCU推動到SoC的新階段,。這種可編程的SoC取名為可編程片上系統(tǒng)(PSoC),,由基本的CPU內(nèi)核和預(yù)設(shè)外圍器件組成,就是在一個專有MCU內(nèi)和周圍集成了PSoC模塊(可配置的模擬和數(shù)字外圍器件陣列),,利用芯片內(nèi)部可編程互聯(lián)陣列,,可以有效地配置芯片的模擬和數(shù)字電路資源,達(dá)到可編程片上系統(tǒng)的目的,。
與傳統(tǒng)的MCU相較,,從根本意義上講PSoC系列是一種微控制器,而且是一種可編程片上系統(tǒng)微控制器,,它的出現(xiàn)使設(shè)計者逐步擺脫了板級電子系統(tǒng)設(shè)計方法層次而進(jìn)入芯片級電子系統(tǒng)設(shè)計,,減少了單片機的品種和規(guī)格,同時更有利于新品開發(fā)和升級換代,。與同種價位的普通單片機比較,,其豐富的內(nèi)部資源、新穎的設(shè)計界面,、靈活的設(shè)計方式,、簡單的編程技巧都使其極具特點。PSoC完全不同于以往的傳統(tǒng)的微處理器,。PSoC開發(fā)者不需要自己構(gòu)建ADC,、DAC和其它外圍設(shè)備,,可以通過PSoC的配置性進(jìn)行資源調(diào)配,而且PSoC為控制器成功的引入動態(tài)可重新配置功能,,真正實現(xiàn)在線可編程,,由此可見,一個PSoC微控制器就能代替多種類型的單片機,。
PSoC的內(nèi)部框圖結(jié)構(gòu)及資源
賽普拉斯CY8C21×××~29×××系列的內(nèi)部結(jié)構(gòu)如圖1所示,。其資源包括:
圖1:CY8C24423內(nèi)部系統(tǒng)資源框圖
1. 處理器內(nèi)核
PSoC微處理器CY8C21×××~29×××系列器件使用強大的8位哈佛結(jié)構(gòu)處理器內(nèi)核(M8C CPU),它具有獨立的程序存儲器和數(shù)據(jù)存儲器總線,,處理器速度可達(dá)24MHz,。擁有豐富的M8C架構(gòu)指令,并可進(jìn)行I/O和內(nèi)存上的操作,。此外系統(tǒng)提供便捷的尋址方式,。
CPU內(nèi)核具有完善的快速乘加能力,PSoC系列所有處理器中都有一個乘法器/加法器(MAC),。MAC系統(tǒng)中作為一個獨立的組件,,并映射到特定的寄存器地址空間,由輸入寄存器和輸出寄存器,,能執(zhí)行帶符號的8×8乘法運算和32位的加法運算。只要把數(shù)據(jù)傳送到輸入寄存器在下一個指令周期,,在輸出寄存器就能得到運算結(jié)果,。寄存器加速內(nèi)存數(shù)據(jù)交換,大大提高了處理數(shù)據(jù)的速度,。
2. 內(nèi)存儲器
PSoC系列器件擁有靈活的片內(nèi)存儲器,,包括4~16KB的快速程序存儲器(Flash Program Memory)以及256字節(jié)的片內(nèi)SRAM數(shù)據(jù)存儲器,速內(nèi)存可擦寫100,000次,,并可分塊實時修改,,不同的型號芯片閃存的容量不同。此外,,系統(tǒng)具有串行編程功能(ISSP),,即在程序頭(Programme Pod)或者用戶板上的閃存可通過串行的方式,把程序固化到內(nèi)部程序閃存存儲器中,。PSoC對片內(nèi)存儲器提供多種保護(hù)加密方式,。以保證用戶敏感信息的安全。這個功能允許用戶有選擇性的對內(nèi)存模塊的讀寫操作加鎖和寫操作保護(hù),。這允許對部分代碼進(jìn)行升級,,而不會泄漏重要數(shù)據(jù)。
3. PSoC模塊
在每一個PSoC芯片中共有若干個PSoC數(shù)字模塊,。PSoC片內(nèi)的數(shù)字模塊減少了多種微控制器類型和外設(shè)元件的需求,。數(shù)字PSoC模塊可以配置成各種各樣的用戶模塊,,比如時間定時器、實時時鐘,、脈寬調(diào)制(PWM)和死區(qū)脈寬調(diào)制(DB PWM),、循環(huán)冗余核對模塊、全雙工(UARTS),、串行主從通信(SPI)功能,。PSoC軟件開發(fā)包提供了PSoC模塊自動配置,用戶只需簡單地選擇需要功能塊,,PSoC軟件開發(fā)包就能產(chǎn)生正確的配制信息和器件數(shù)據(jù)手冊,。
在每一個PSoC芯片中還有若干個模擬PSoC模塊,芯片內(nèi)的模擬PSoC模塊可以減少CPU復(fù)雜的系列編號以及對外設(shè)的需求,。模擬PSoC模塊可以配置許多外設(shè)功能,,譬如12個PSoC模塊可以提供11位△-∑模數(shù)轉(zhuǎn)換、8位逐次逼近式模數(shù)轉(zhuǎn)換,、8位直接模數(shù)轉(zhuǎn)換,、12增量式模數(shù)轉(zhuǎn)換、可編程增益放大器,、采樣和保持功能,、可編程濾波器、差分比較器和片內(nèi)溫度傳感器等,。PSoC系統(tǒng)包含三種類型的模擬模塊:連續(xù)時鐘模塊(CT),,A類和B類開關(guān)電容(SC)模塊。
4. 通用I/O
PSoC微控制器的通用I/O數(shù)量從6到44位不等,,具體根據(jù)不同型號來確定,。每個I/O功能可編程選擇。在輸出模式中可選擇輸出驅(qū)動方式,,模擬輸出驅(qū)動可達(dá)40mA,。通過內(nèi)部上拉或者下拉電阻輸出,強輸出,,可設(shè)置輸出最大的驅(qū)動電流達(dá)25mA,。所有引腳都能作為中斷電源,通過引腳信號變化產(chǎn)生中斷,。并可選擇位上升沿觸發(fā)終端,、下降沿觸發(fā)。引腳能與模擬模塊相連,。此外,,還有用作斯密特觸發(fā)器的TTL、I/O。
5. 振蕩器
PSoC系列器件有多種振蕩器可供選擇,,總能為CPU時鐘,、模擬PSoC模塊和數(shù)字PSoC模塊的時鐘,找到合適的振蕩器,。主要有內(nèi)部達(dá)到24/48MHz的主振蕩器,、一個32.768MHz外部晶體振蕩器和內(nèi)部低速振蕩器。主振蕩器誤差為±2.5%,,且沒有外部補償,,外部晶體振蕩器可對PLL選定精度,內(nèi)部低速振蕩器一般作為PSoC模塊和看門狗/睡眠定時器的時鐘,??墒褂脮r鐘分頻器,從而優(yōu)化代碼執(zhí)行速度和減少功耗,。