基于嵌入式PsoC的MCU選色控制器設計
摘要:闡述Cypress公司的可配置片上系統(PSoC)的功能及其實(shí)現結構;結合選色控制器開(kāi)發(fā)實(shí)例,詳細闡述使用PsoC開(kāi)發(fā)的方法和流程。其設計方法也可用于其它控制系統或工業(yè)自動(dòng)化等各種應用。
關(guān)鍵詞:PsoC(可配置片上系統) 選色控制器MCU
引言
最近幾年,隨著(zhù)電子技術(shù)及半導體工藝的迅猛發(fā)展,片上系統(SoC),特別是可配置片上系統PsoC(Programmable System on Chip),已逐漸成為微控制器的主流產(chǎn)品。因此,要求設計工程師必須迅速地掌握SoC的開(kāi)發(fā)特點(diǎn)和要求,盡快融入SoC的開(kāi)發(fā)大潮中去。但是,SoC系統設計帶來(lái)了與傳統系統設計全然不同的挑戰,其中包括從處理器和存儲器的選擇到產(chǎn)品環(huán)境的考慮。如果設計工程師能夠深入理解SoC的開(kāi)發(fā)特點(diǎn),并且考慮部件之間如何交互,以及各種因素帶來(lái)的影響等問(wèn)題,就可以直接提高產(chǎn)品設計的成功率和開(kāi)發(fā)效率,降低系統開(kāi)發(fā)的復雜性和費用,同時(shí)增強系統的可靠性和抗干擾能力。
文章根據本人的開(kāi)發(fā)經(jīng)歷,結合選色控制器的開(kāi)發(fā)過(guò)程,為設計工程師提供指導,從所有層面上幫助他們?yōu)榻窈蟮脑O計項目做更好的準備。
人們在各種各樣的微控制器和嵌入式控制系統設計過(guò)程中發(fā)現,并非不同的設計就必須用到完全不同的外圍器件;相反,這其吸大量共的部分,因此,啟發(fā)了芯片設計工程師建立此種可配置微控制器。在芯片內建立一些通用的數字和模擬塊(digital and analog block),把它們配置成微控制器的各種功能模塊(Module)。這樣,在A(yíng)SIC設計過(guò)程中,應用工程師就可以根據自己的不同設計要求調用不同的功能模塊,完成芯片內部的功能配置,實(shí)現使用一塊芯片就可以配置成具多種不同外圍器件的微控制器。
目前,市場(chǎng)上有Cypress MicroSystems,InC和Cygnal Integrated Products,Inc生產(chǎn)可配置的SOC微控制器。本控制系統選用Cypress MicroSystems,Inc生產(chǎn)的M8C內核PsoC微控制器作為控制核心。
下面我們首先熟悉開(kāi)發(fā)的任務(wù)要求。選色控制器是一個(gè)由信息采集、鍵盤(pán)、顯示及輸出驅動(dòng)等部分組成的控制系統,主要用來(lái)取代進(jìn)口和國產(chǎn)劍桿織機上的紙帶輸入式光電緯紗選色器。
為了便于用戶(hù)根據不同的實(shí)際需要對工作方式及其它參數進(jìn)行修改,要求所有的參數及組態(tài)均可通過(guò)面板睥幾個(gè)操作鍵進(jìn)行輸入、檢查、修改;并可在突然并機的情況下,重新開(kāi)機后,自動(dòng)恢復斷點(diǎn)參數信息。
根據用戶(hù)提出的技術(shù)指標,我們還必須把它進(jìn)步量化,并且進(jìn)一步完成功能設計方案。
1 硬件方案設計
1.1 選擇微處理器
在設計任務(wù)確定后,應對控制系統所需要的硬件做出初步估計和選擇。微處理器是整個(gè)控制系統的核心,它的選擇將對整個(gè)控制系統產(chǎn)生決定性的影響。一般應從以下幾個(gè)方面考慮微處理器是否符合控制系統的要求:字長(cháng)、指令的種類(lèi)和數量、內部寄存器的種類(lèi)數量、微處理器的速度、中斷處理能力以及微處理器的外圍電路配套等。對于外圍器件的來(lái)源、軟件的運行等也是設計人員必須考慮的因素,因為其涉及到整個(gè)系統實(shí)時(shí)控制能力以及硬件和應用程序的分開(kāi)。
Cypress MicroSystems,Inc生產(chǎn)的PsoC是新一代功能強大的8位可配置微控制器。PsoC微控制順片內有8根獨立的輸入和輸出總線(xiàn),分別與數字和模block相連。其內部可用的block資源包含:4個(gè)基本類(lèi)型和4個(gè)通信類(lèi)型的數字block,各有3個(gè)CT、SCA和SCB類(lèi)型模擬block。使用這些資源可以配置成不販功能模塊,用以實(shí)現微控制器標準外圍器件的功能。
使用基本類(lèi)型數字block可配置:
*計數器(counter);
*定時(shí)器(timer);
*脈寬調制(PWM);
*循環(huán)冗余碼校驗(CRC)串行接收(serial receiver)。
使用通信類(lèi)型數字block可配置:
*基本數字block;
*串行發(fā)送(serial transmitter);
*串行接收(serial receiver);
*SPI主端(SPI Master);
*SPI從端(SPI Slave)。
使用模擬block可配置:
*多極濾波器(multi-pole filters);
*放大器(gain stages);
*數模轉換(DACs);
*模數轉換(ADCs)。
在模塊功能設計方面,Cypress公司把各種常用處理器的外圍器件作為設計Module的標準,把芯片內數字和模擬block資源組配成標準的功能模塊(module),并把這些功能模塊存儲在器件庫中。用戶(hù)通過(guò)使用其提供的集成開(kāi)發(fā)平臺(IDE),調用這些功能模塊、設定模塊時(shí)鐘輸入,配置全局變量和局部變量,設定用戶(hù)功能參數,完成功能模塊的配置。另外,這些功能模塊還可以相互連接,以完成更加復雜的功能。因此,通過(guò)合理的配置數字和模擬block就可以在片內實(shí)現大部分外圍器件的工作。并且,由于設定的參數量存儲在片內Flash中,因此,無(wú)論是在設計之初,還是在產(chǎn)品應用現場(chǎng),工程師均通過(guò)軟件重新配置數字和模擬block參數,從而增加/刪除功能模塊,定義輸入/輸出引腳,完成硬件升級。這就是可編程嵌入式片上系統的動(dòng)態(tài)重新配置能力(Dynamic ReConfigurability)。因此,可配置片上系統(PSoC)允許用戶(hù)根據自己的需求,定義整個(gè)系統所需要的功能模塊的種類(lèi)和數量,分配芯片的資源,完成芯片內部的功能配置。
對于本控制系統來(lái)說(shuō),可以利用其內部的多個(gè)定時(shí)器功能模塊,完成各個(gè)動(dòng)作之間的間隔和定時(shí),從及復雜的邏輯關(guān)系;利用A/D、PGA模塊,實(shí)現鍵盤(pán)輸入等功能;利用液晶模塊,實(shí)現參數的顯示等功能;利用PsoC具有I/O多的特點(diǎn),可以方便地實(shí)現對多個(gè)開(kāi)關(guān)信號量的控制。因此,利用PsoC就可以實(shí)現使用一塊芯片來(lái)配置多種不同外圍元器件微控制器。建立一種可配置控制器,可以實(shí)現從確定系統功能開(kāi)始,到軟/硬件劃分,并在片內完成整個(gè)選色控制器的設計過(guò)程。
本系統使用PSoC微控制器具有三個(gè)明顯優(yōu)勢:①通過(guò)使用數字和模擬block配置不同的外圍器件,大量的外圍器件可以設計成SoC;②通過(guò)使用內部總線(xiàn)連接用戶(hù)所選的功能,用戶(hù)可以建立實(shí)際系統信號鏈,減少大量的外部線(xiàn)路,甚至可以重新分配輸入/輸出引腳,幫助優(yōu)化電路板的布局;③最大的益處是它可以實(shí)時(shí)重新定義模塊功能,迅速完成硬件升級,能夠適應非常復雜的實(shí)時(shí)控制需求,同時(shí)增強系統的可靠性和抗干擾能力。
1.2 確定總體控制方案
選色控制方式是一種典型的順序控制方式。順序控制是工業(yè)自動(dòng)控制系統中一種常見(jiàn)的控制方式,其控制系統一般具有以下一些特性:開(kāi)關(guān)信號量多、定時(shí)范圍大、邏輯關(guān)系復雜、可靠性要求高等。因此,在總體方案設計時(shí)必須考慮其控制特點(diǎn)。
PSoC微處理器的所有輸入/輸出引腳都可以申請中斷,各個(gè)內部數字和模擬模塊也可以申請中斷。因此本系統可以根據要求,方便靈活地申請執行多個(gè)中斷。
經(jīng)過(guò)對上述各項認真分析后,就可以畫(huà)出整個(gè)系統的概略框圖。本選色控制系統是由存儲器、輸入/輸出電路、液晶顯示模塊、鍵盤(pán)電路等部件構成,其系統組成如圖1所示。
1.3 具體硬件設計方案
進(jìn)入具體設計階段,必須認真考慮和反復權衡硬件和軟件的分工及比例。
硬件和軟件設計過(guò)程必須同時(shí)進(jìn)行,兩者相輔相成。對于本控制系統的設計來(lái)說(shuō),由于大部分外圍器件的功能是在微控制器片內實(shí)現的,因此,外部硬件的主要工作集中在輸入/輸出接口設計上,而輸入/輸出接口設計又往往和控制程序交織在一起。此外,存儲器的連接和擴充也是必做的工作。
硬件設計過(guò)程中,器件應注意篩選,在布線(xiàn)和安排時(shí),注意制作技術(shù)和裝配技術(shù),以克服電氣干擾。下面就是具體的硬件設計:在單片配備8位液晶顯示器,2
評論