基于μC/OS-II嵌入式操作系統(tǒng)的TCSC實(shí)驗(yàn)控制器前置單元設(shè)計(jì)
微處理器SAMSUNG S3C44B0X介紹
一款基于ARM7TDM I內(nèi)核的32位的高性能R ISC處理器。 支持16位Thumb和32位ARM雙指令集,尤其是在使用16位Thumb指令集時(shí)仍然享受ARM處理器的32位的特性,如32位長(zhǎng)的寄存器, 32位的尋址空間等,并且得到更高密度代碼。 此外還集成很多外設(shè),包括8通道ADC,外部存儲(chǔ)器控制器, LCD控制器, 4通道DMA, 71個(gè)通用IO口,具有日歷功能的RTC時(shí)鐘, 5個(gè)PWM定時(shí)器,一個(gè)內(nèi)部定時(shí)器和一個(gè)看門(mén)狗定時(shí)器,片內(nèi)鎖相環(huán)( PLL)時(shí)鐘發(fā)生器(最高時(shí)鐘頻率66 MHz) , 2 通道異步串口,帶有16 字節(jié)F IFO, IIC、IIS總線控制器等等。
USB接口器件PD IUSBD12介紹
Philip s公司推出的一款應(yīng)用廣泛的USB 接口器件,符合USB1.1規(guī)范,集成SIE, F IFO存儲(chǔ)器,收發(fā)器以及電壓調(diào)整器,可與任何外部微控制器或微處理器實(shí)現(xiàn)高速并行接口(2 MB / s) ,完全DMA操作,主端點(diǎn)的雙緩沖配置增加了數(shù)據(jù)吞吐量并輕松實(shí)現(xiàn)實(shí)時(shí)數(shù)據(jù)傳輸。
電壓過(guò)零檢測(cè)電路
過(guò)零檢測(cè)電路由一個(gè)電橋,光電隔離及其它器件組成,共3組,兩個(gè)74HC14反向門(mén)用來(lái)將電壓整形為T(mén)TL電平,輸入到微處理器S3C44B0X外部中斷端,當(dāng)電力線電壓變?yōu)榱銜r(shí),光電隔離器中發(fā)光二極管截止,此時(shí)向中斷端輸出高電平脈沖引發(fā)中斷。
采樣保持電路
保持器共6 路,其中3 路測(cè)電壓, 3 路測(cè)電流。采用LF398芯片,它有8個(gè)引腳, 1和4腳接電源,范圍為( ±5 ~ ±18) V之間, 3腳為輸入端,接電力線經(jīng)變壓后的電壓或經(jīng)電流互感器轉(zhuǎn)化的電壓, 2腳接1 kΩ電阻,用于調(diào)節(jié)漂移電壓。7腳接參考電壓, 8 腳接控制信號(hào),控制芯片的采樣保持狀態(tài)。在這里通過(guò)S3C44B0X的通用I/O 引腳GPF0-5 分別控制6 路采樣保持器的8腳。6腳外接保持電容,這里考慮到實(shí)時(shí)性的要求,因此選擇較小的電容值,取C1 = 0.001μF,此時(shí)采樣時(shí)間不超過(guò)10μs,同時(shí)可以滿(mǎn)足8位的采樣精度。
晶閘管觸發(fā)電路
觸發(fā)電路共3 組分別接A, B, C三相,如圖3 所示,兩個(gè)74LS04反向門(mén)用來(lái)增加驅(qū)動(dòng)能力,輸入端接44B0X的通用IO 口GPE4-6引腳。脈沖變壓器N1 和N2一方面?zhèn)鬟f觸發(fā)脈沖,另一方面對(duì)強(qiáng)弱電之間起到很好的隔離作用。CPU 發(fā)出觸發(fā)脈沖信號(hào)之后,兩個(gè)反向可控硅的觸發(fā)端會(huì)同時(shí)有觸發(fā)信號(hào),但由于某一時(shí)刻加在兩個(gè)可控硅上的電壓只有一個(gè)滿(mǎn)足導(dǎo)通條件,故只有一個(gè)可控硅會(huì)導(dǎo)通。
軟件設(shè)計(jì)
前置單元的軟件要完成和上位機(jī)通訊、AD 采樣和晶閘管觸發(fā)3項(xiàng)功能。 其中AD采樣速率很高、晶閘管觸發(fā)實(shí)時(shí)性很強(qiáng),所以這兩項(xiàng)功能必須采用硬件定時(shí)器來(lái)保證其實(shí)時(shí)性,因此設(shè)計(jì)使用中斷服務(wù)程序( Interrup t Service Routine, ISR ) 來(lái)完成這兩項(xiàng)功能。USB驅(qū)動(dòng)程序由開(kāi)發(fā)板附帶,通訊的功能主要通過(guò)μC /OS-Ⅱ中的任務(wù)來(lái)完成(當(dāng)然, USB 中斷處理也是必不可少的)。USB 任務(wù)和各ISR 之間的通訊通過(guò)μC /OS-Ⅱ的同步機(jī)制(信號(hào)量、消息隊(duì)列)和全局變量來(lái)完成。 所有軟件均是在ARM公司自己的開(kāi)發(fā)環(huán)境ADS下實(shí)現(xiàn)的,ADS1。2有自己的C, C + +語(yǔ)言編譯器及庫(kù)文件,有GU I界面的調(diào)試器AXD和命令行界面的調(diào)試器armsd以及GU I界面的編輯器Code WarriorIDE,這為開(kāi)發(fā)人員提供了極大的便利。 調(diào)試工具用的是JTAG仿真器, JTAG仿真器通過(guò)JTAG邊界掃描口與ARM CPU核通信,屬于完全非插入式(即不使用片上資源)調(diào)試,它無(wú)需目標(biāo)存儲(chǔ)器,不占用目標(biāo)系統(tǒng)的任何端口,是目前采用最多的一種調(diào)試方式。
嵌入式實(shí)時(shí)操作系統(tǒng)μC /OS-II介紹
對(duì)于復(fù)雜的應(yīng)用,直接在裸機(jī)上開(kāi)發(fā)運(yùn)行的前后臺(tái)系統(tǒng)開(kāi)發(fā)、維護(hù)和擴(kuò)展都很困難,嵌入式操作系統(tǒng)應(yīng)運(yùn)而生,其最大的特點(diǎn)就是處理多任務(wù),而且在工控領(lǐng)域大多實(shí)時(shí)性要求較強(qiáng),而μC /OS-II迎合了這些特點(diǎn)。μC /OS-II支持64個(gè)任務(wù),每個(gè)任務(wù)的優(yōu)先級(jí)必須是不同的,調(diào)度算法總是讓處于就緒狀態(tài)的最高優(yōu)先級(jí)任務(wù)先執(zhí)行, 并提供了信號(hào)量( Semaphore) 、郵箱(Mailbox)和消息隊(duì)列(Message Queue)等多種通訊同步原語(yǔ)。每個(gè)任務(wù)都處在以下5種狀態(tài)之一的狀態(tài)下,這5種狀態(tài)是休眠態(tài)(Dormant) ,就緒態(tài)(Ready) 、運(yùn)行態(tài)(Running) 、掛起態(tài)(Waiting)和被中斷態(tài)( Interrup ted)。μC /OS-II中全部系統(tǒng)調(diào)用的執(zhí)行時(shí)間是可確定,其系統(tǒng)調(diào)用的執(zhí)行時(shí)間不依賴(lài)于應(yīng)用任務(wù)的多少,這也是其實(shí)時(shí)性的表現(xiàn)。
評(píng)論