《電子技術應用》
您所在的位置:首頁 > 模擬設計 > 設計應用 > 基于嵌入式PsoC的MCU選色控制器設計
基于嵌入式PsoC的MCU選色控制器設計
摘要: 闡述Cypress公司的可配置片上系統(PSoC)的功能及其實現結構;結合選色控制器開發實例,詳細闡述使用PsoC開發的方法和流程。其設計方法也可用于其它控制系統或工業自動化等各種應用。
Abstract:
Key words :

引言

最近幾年,隨著電子技術及半導體工藝的迅猛發展,片上系統(SoC),特別是可配置片上系統PsoC(Programmable System on Chip),已逐漸成為微控制器的主流產品。因此,要求設計工程師必須迅速地掌握SoC的開發特點和要求,盡快融入SoC的開發大潮中去。但是,SoC系統設計帶來了與傳統系統設計全然不同的挑戰,其中包括從處理器和存儲器的選擇到產品環境的考慮。如果設計工程師能夠深入理解SoC的開發特點,并且考慮部件之間如何交互,以及各種因素帶來的影響等問題,就可以直接提高產品設計的成功率和開發效率,降低系統開發的復雜性和費用,同時增強系統的可靠性和抗干擾能力。

文章根據本人的開發經歷,結合選色控制器的開發過程,為設計工程師提供指導,從所有層面上幫助他們為今后的設計項目做更好的準備。

人們在各種各樣的微控制器和嵌入式控制系統設計過程中發現,并非不同的設計就必須用到完全不同的外圍器件;相反,這其吸大量共的部分,因此,啟發了芯片設計工程師建立此種可配置微控制器。在芯片內建立一些通用的數字和模擬塊(digital and analog block),把它們配置成微控制器的各種功能模塊(Module)。這樣,在ASIC設計過程中,應用工程師就可以根據自己的不同設計要求調用不同的功能模塊,完成芯片內部的功能配置,實現使用一塊芯片就可以配置成具多種不同外圍器件的微控制器。

目前,市場上有Cypress MicroSystems,InC和Cygnal Integrated Products,Inc生產可配置的SOC微控制器。本控制系統選用Cypress MicroSystems,Inc生產的M8C內核PsoC微控制器作為控制核心。

    下面我們首先熟悉開發的任務要求。選色控制器是一個由信息采集、鍵盤、顯示及輸出驅動等部分組成的控制系統,主要用來取代進口和國產劍桿織機上的紙帶輸入式光電緯紗選色器。    4.1 用戶模塊的選擇和放置

為了便于用戶根據不同的實際需要對工作方式及其它參數進行修改,要求所有的參數及組態均可通過面板睥幾個操作鍵進行輸入、檢查、修改;并可在突然并機的情況下,重新開機后,自動恢復斷點參數信息。

根據用戶提出的技術指標,我們還必須把它進步量化,并且進一步完成功能設計方案。

1 硬件方案設計

1.1 選擇微處理器

在設計任務確定后,應對控制系統所需要的硬件做出初步估計和選擇。微處理器是整個控制系統的核心,它的選擇將對整個控制系統產生決定性的影響。一般應從以下幾個方面考慮微處理器是否符合控制系統的要求:字長、指令的種類和數量、內部寄存器的種類數量、微處理器的速度、中斷處理能力以及微處理器的外圍電路配套等。對于外圍器件的來源、軟件的運行等也是設計人員必須考慮的因素,因為其涉及到整個系統實時控制能力以及硬件和應用程序的分開。

Cypress MicroSystems,Inc生產的PsoC是新一代功能強大的8位可配置微控制器。PsoC微控制順片內有8根獨立的輸入和輸出總線,分別與數字和模block相連。其內部可用的block資源包含:4個基本類型和4個通信類型的數字block,各有3個CT、SCA和SCB類型模擬block。使用這些資源可以配置成不販功能模塊,用以實現微控制器標準外圍器件的功能。

使用基本類型數字block可配置:

*計數器(counter);

*定時器(timer);

*脈寬調制(PWM);

*循環冗余碼校驗(CRC)串行接收(serial receiver)。

使用通信類型數字block可配置:

*基本數字block;

*串行發送(serial transmitter);

*串行接收(serial receiver);

*SPI主端(SPI Master);

*SPI從端(SPI Slave)。

使用模擬block可配置:

*多極濾波器(multi-pole filters);

*放大器(gain stages);

*數模轉換(DACs);

*模數轉換(ADCs)。

在模塊功能設計方面,Cypress公司把各種常用處理器的外圍器件作為設計Module的標準,把芯片內數字和模擬block資源組配成標準的功能模塊(module),并把這些功能模塊存儲在器件庫中。用戶通過使用其提供的集成開發平臺(IDE),調用這些功能模塊、設定模塊時鐘輸入,配置全局變量和局部變量,設定用戶功能參數,完成功能模塊的配置。另外,這些功能模塊還可以相互連接,以完成更加復雜的功能。因此,通過合理的配置數字和模擬block就可以在片內實現大部分外圍器件的工作。并且,由于設定的參數量存儲在片內Flash中,因此,無論是在設計之初,還是在產品應用現場,工程師均通過軟件重新配置數字和模擬block參數,從而增加/刪除功能模塊,定義輸入/輸出引腳,完成硬件升級。這就是可編程嵌入式片上系統的動態重新配置能力(Dynamic ReConfigurability)。因此,可配置片上系統(PSoC)允許用戶根據自己的需求,定義整個系統所需要的功能模塊的種類和數量,分配芯片的資源,完成芯片內部的功能配置。

對于本控制系統來說,可以利用其內部的多個定時器功能模塊,完成各個動作之間的間隔和定時,從及復雜的邏輯關系;利用A/D、PGA模塊,實現鍵盤輸入等功能;利用液晶模塊,實現參數的顯示等功能;利用PsoC具有I/O多的特點,可以方便地實現對多個開關信號量的控制。因此,利用PsoC就可以實現使用一塊芯片來配置多種不同外圍元器件微控制器。建立一種可配置控制器,可以實現從確定系統功能開始,到軟/硬件劃分,并在片內完成整個選色控制器的設計過程。

本系統使用PSoC微控制器具有三個明顯優勢:①通過使用數字和模擬block配置不同的外圍器件,大量的外圍器件可以設計成SoC;②通過使用內部總線連接用戶所選的功能,用戶可以建立實際系統信號鏈,減少大量的外部線路,甚至可以重新分配輸入/輸出引腳,幫助優化電路板的布局;③最大的益處是它可以實時重新定義模塊功能,迅速完成硬件升級,能夠適應非常復雜的實時控制需求,同時增強系統的可靠性和抗干擾能力。

1.2 確定總體控制方案

選色控制方式是一種典型的順序控制方式。順序控制是工業自動控制系統中一種常見的控制方式,其控制系統一般具有以下一些特性:開關信號量多、定時范圍大、邏輯關系復雜、可靠性要求高等。因此,在總體方案設計時必須考慮其控制特點。

PSoC微處理器的所有輸入/輸出引腳都可以申請中斷,各個內部數字和模擬模塊也可以申請中斷。因此本系統可以根據要求,方便靈活地申請執行多個中斷。

經過對上述各項認真分析后,就可以畫出整個系統的概略框圖。本選色控制系統是由存儲器、輸入/輸出電路、液晶顯示模塊、鍵盤電路等部件構成,其系統組成如圖1所示。

1.3 具體硬件設計方案

進入具體設計階段,必須認真考慮和反復權衡硬件和軟件的分工及比例。

硬件和軟件設計過程必須同時進行,兩者相輔相成。對于本控制系統的設計來說,由于大部分外圍器件的功能是在微控制器片內實現的,因此,外部硬件的主要工作集中在輸入/輸出接口設計上,而輸入/輸出接口設計又往往和控制程序交織在一起。此外,存儲器的連接和擴充也是必做的工作。

硬件設計過程中,器件應注意篩選,在布線和安排時,注意制作技術和裝配技術,以克服電氣干擾。下面就是具體的硬件設計:在單片配備8位液晶顯示器,2×4的鍵盤,8KB的存儲器。輸入/輸出都采用光電隔離,每一路輸出還經過功率放大。

(1)PSoC微控制器

PSoC微控制器控制系統中最主要的部件,它完成對輸入信號的判斷和邏輯運算,產生時序控制信號,對PSoC微控制器的配置可以通過其系統提供的IDE集成開發平臺上的圖形化工具來完成。選擇本控制系統所需的計時器、放大器、液晶等功能模塊,配置其內部參數,指定其輸入與輸出關系,主、輸出引腳。在全局變量部分要配置CPU的工作頻率、系統時鐘、中斷、電荷泵以及其它特性,以此完成PSoC微控制器片內配置。

(2)存儲器

存儲器用來存儲工作參數和用戶應用程序。隨機存儲器有動態隨機存儲器DRAM和靜態隨機存儲器SRAM兩種。DRAM雖然價格低,但它需要不斷刷新。PSoC單片機沒有刷新功能,為了使用DRAM,不得不增加刷新電路。這樣總的價格并不低,且使電路復雜化,可靠性降低,因此本系統中采用SRAM——6264。

當6264的CE1為高電平或CE2為怦時時,6264處于低功耗的保持狀態,此時流過的電源電流為維持電流,只有μA級。在保持狀態的情況下,VCC可降至3V左右,內部所存儲數據不會丟失。由此可見,只要在掉電之后保持CE1為高,并保持VCC大于3V,就可保持RAM中所存儲數據不變,且消耗VCC的電流很小。由此可以建立數據存儲保護電路。

(3)液晶模塊

字符型液晶顯示模塊是一類專用于顯示字母、數字、符號等的點陣型液晶顯示模塊。字符型液晶顯示驅動控制器廣泛應用于字符型液晶顯示模塊上。目前PSoC微控制器內液晶模塊僅支持HD44780U顯示驅動控制器。

(4)輸入電路

單片機只能接受0~5的邏輯電路平信號,而現場工作信號是按鈕、行程開關。輸入電路完成電平轉換任務,同時為了系統的安全和可靠,還要考慮信號的濾波和隔離問題。

本系統采用的是光電隔離及電平轉換電路。光電耦合器以光電轉換原理傳輸信息,它不僅使信息發出端(收側)與信息接收并輸出端(二次側)是電絕緣的,從而對地電位差干擾有很強的抑制能力,而且有很強的抑制電磁干擾能力,且速度高、價格低、接口簡單,因而得到廣泛的應用。光電耦合器的一次側都是發光二極管,但是二次側側則有多種結構,如光敏二極管、光敏晶體管等,因而就有二極管-二極管光電耦全器、二極管一晶體管光電耦全器等多種型號的光電耦全器。本系統選用TPL521-4,它在同一個封裝內4個相同而獨立的光電耦合器。TPL521主要用于工業控制中,其速度不高。

(5)輸出電路

輸出電路主要包括兩部分:一是隔離,二是功率放大。在順序控制系統中,單片機輸出的控制信號常用來控制繼電器等執行機構,它們需要較大的功率,因此輸出信號需要光隔離和放大后才輸出到執行機構。

2 織機選色器的功能設計

織機選色控制器是一個可以編程的順序控制器。它有兩個工作狀態:編程狀態和運行狀態。編程狀態的主程序的功能為更新顯示器上顯示的內容、用戶鍵入編輯相應的用戶程序。鍵盤有MOD、TAB、INC、DEC、ENT這5個鍵,用于輸入程序和參數。下面介紹這些鍵的功能。

MOD模式鍵:用于編程狀態和運行狀態之間的切換。編程狀態下,用戶可以完成用戶程序的編輯;運行狀態下,用于顯示程序執行的步驟。

TAB光標移動鍵:用于屏幕光標的移動,隨著光標處于不同的變量位置,表明此變量處于編輯狀態。此變量可以編輯。

INC增加鍵:在編程狀態下,按下此鍵,光標所在位置的變量加1。

DEC減少鍵:在編程狀態下,按下此鍵,光標所位置的變量減1。

ENT確認鍵:變量改變后,按此鍵確認更改。

為了使織機選色器能按照用戶輸入的程序執行,我們設定了固定的程序格式。用戶按此格式輸入用戶程序,織機選色器就可按程序進行工作。其格式如下:

 

程序號 段號 色號 緯數 最大段號

 

程序號:表示執行或編輯的程序名稱。

段號:表示程序步的標號。

色號:表示此次選中的顏色。

緯數:表示打緯的次數。

最大段號:表明程序循環段數。

使用以上定義的幾個鍵,就可以完成用戶程序輸入。在開機后處于運行狀態中,此時執行監控中的鍵盤、顯示器管理程序,輸入信號監控。根據輸入信號執行用戶預先存儲在存儲器內的程序。

3 具體軟件設計方案

用戶通過鍵盤編寫用戶程序,為此在外部存儲空間中預留一定的存儲空間供用戶存儲用戶程序。用戶可以隨時調用、查看、編輯自己的選色程序。具體做法根據程序號確定高位址,根據段號確定低位地址,然后向不同字節寫入色號和緯數的信息,最大段號存放在一個固定的地址中。在工作過程中,同樣根據程序號確定高位地址,根據段號確定低位地址,然后讀出存放在不同字節內的色號和緯數信息。

4 MCU內部資源配置

和普通的ASIC設計相比較,PsoC的設計首先必須完成片內功能模塊的設計。因此,可配置片上系統設計流程和集成開發環境上也與通用的ASIC設計流程及集成開發環境有所不同。PSoC設計必須首先完成芯片內部資源的規劃,其片內資源設計流程具體為:

*確定系統需求;

*選擇用戶模塊;

*放置用戶模塊;

*設置全局變量和用戶模塊參數;

*定義輸出引腳;

*產生應用代碼;

*編輯應用代碼。

因此,在集成開發環境內按照設計流程完成設備編輯器參數配置。

圖2

 

選擇Timer16、Timer8、PGA、SAR6、LCD模塊,如圖2所示。IDE內含用戶模塊描述、說明,以及用戶指導/代碼摘錄、閱讀模塊的用戶指導信息,以供配置使用。數字模塊放置一般沒有什么限制,盡量使用基本類型的數字模塊;模擬模塊只能放置在允許的位置。

4.2 設置全局變量和用戶模塊參數

全局資源

24V1=16 ;配置系統時鐘一

24V2=16 ;配置系統時鐘二

Timer16模塊

Clock=CPU_32KHz ;時鐘選擇

Capture=Low ;捕捉功能關

Period=65535 ;配置period

CompareValue=Terminal Count

;指定中斷類型

InterruptType=Terminal Count

;指定中斷類型

Output=None

Timer8模塊

Clock=CPU_32KHz ;時鐘選擇

Capture=Low ;捕捉功能關

Period=255 ;配置period

CompareValue=Terminal Count

;指定中斷類型

InterruptType=Terminal Count

;指定中斷類型

Output=None

PGA模塊

Gain=1 ;單元增益

Input=AnalogColumn_InputMUX_3

;信號輸入

Reference=AGND ;參考地

Analogbus=Disable ;輸出總線

AnalogColumn_InputMUX_3=PORT_0_2;輸入總線

Specify Pinout P0[2]=Analog_Input

;模擬輸入引腳

SAR6模塊

SignSource=ACA03 ;信號選擇

ClockPhase=Normal ;時鐘選擇

LCD模塊

LCDPort=Port_0 ;數據口

BarGraph=Enable ;啟用

4.3 定義輸出引腳

輸入/輸出引腳指定

P2[2]=StdCPU RisingEdge(Int);選色

P2[3]=StdCPU DisablrInt ;倒棕輸入

P2[4]=StdCPU DisablrInt ;加緯

P2[5]=StdCPU DisablrInt ;減緯

P1[1]=AnalogColumn_InputMUX_3(High Z)鍵盤輸入

4.4 產生應用代碼

在完成功能模塊的參數配置工作后,系統就自動生成應用程序接口API和中斷服務程序ISR,并且自動插入到工程項目中。設計工程師可在此基礎之上填寫應用代碼,完成用戶程序的編制。

結語

總的來說,在基于PSoC的選色控制系統中,除了個別無法集成的器件以外,選色控制系統所應用的大部分器件均可以集成到PSoC芯片中去,應用系統電路板變得很簡潔,這對于減小系統的體積和功耗、提高系統的可靠性都是非常有利的。與傳統解決方案相比,可配置嵌入式片上系統提供的解決方案具有無法比擬的優越性。

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 波多野结衣一区在线观看 | 中文字幕水野优香在线网在线 | 国产a∨一区二区三区香蕉小说 | 欧美在线观看www | 亚洲精品欧美精品国产精品 | 久夜色精品国产一区二区三区 | 韩国三级大全久久网站 | 岛国毛片在线观看 | 美国一级免费毛片 | 欧美大片毛片大片 | 完整日本特级毛片 | 欧美日本一区视频免费 | 国产精品特黄一级国产大片 | 国产成人精品区在线观看 | 偷拍视频一区在线观看 | 欧美久 | 成人免费毛片一区二区三区 | 99久久精品免费观看国产 | yy6080福利午夜免费观看 | 黄色片免费网址 | 一本久道久久综合中文字幕 | 武松金莲肉体交战在线观看 | 九九久久久久午夜精选 | 欧美操人 | 欧美一级毛片片免费 | 91看片淫黄大片欧美看国产片 | 亚洲欧美日韩国产专区一区 | 免费视频男女 | 亚洲精品久久久久网站 | 另类专区国产在线视频 | 欧美高清另类自拍视频在线看 | cao在线视频 | 国产黄色小视频在线观看 | 国产亚洲欧洲精品 | 青青草国产免费一区二区 | 泰国一级毛片aaa下面毛多 | 欧美aaa| 福利视频美女国产精品 | 国内国语一级毛片在线视频 | 国产精彩视频在线 | 在线成人毛片 |