<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 模擬技術(shù) > 設計應用 > 基于A(yíng)RM和CPLD的高速數據采集系統設計

基于A(yíng)RM和CPLD的高速數據采集系統設計

作者: 時(shí)間:2009-04-15 來(lái)源:網(wǎng)絡(luò ) 收藏

由于采樣頻率高,用將采樣數據存儲到兩路同步動(dòng)態(tài)存儲器(SDRAM)中。先把到的數據以DMA的方式存儲到A路SDRAM中。 等數據寫(xiě)滿(mǎn)A路SDRAM后,由器件引起LPC2214外部中斷,LPC2214進(jìn)入中斷處理程序,讀取SDRAM中的數據,并進(jìn)行處理,同時(shí)CPLD將接下來(lái)到的數據以DMA的方式存儲到B路SDRAM中, 等存儲器B數據裝滿(mǎn)后,CPLD器件引起LPC2214外部中斷,LPC2214進(jìn)入中斷處理程序,讀取B路SDRAM中的數據,并進(jìn)行處理,如此循環(huán)下去,完成數據的接收和傳輸并行。
可以看到微處理器只控制數據的啟動(dòng)和對采集到的數據進(jìn)行快速處理和傳輸,在數據采集的過(guò)程中,微處理器不對采集通道進(jìn)行任何控制,完全由硬件自動(dòng)實(shí)現數據采集的全過(guò)程,實(shí)現了采集的目的。

系統軟件設計
軟件部分要分別編寫(xiě)LPC2214的處理模塊程序和CPLD的控制模塊程序,LPC2214的程序包括嵌入式操作系統μC/OS-II和各應用程序的編寫(xiě),CPLD控制模塊程序用VHDL語(yǔ)言來(lái)實(shí)現。


在編寫(xiě)處理器的處理程序時(shí),如采用單任務(wù)順序機制,系統的安全性差,這對于穩定性、實(shí)時(shí)性要求高的數據采集系統是不允許的,因此根據整個(gè)裝置實(shí)現的功能和對它的要求進(jìn)行系統任務(wù)的分割,并分配優(yōu)先級,由操作系統來(lái)進(jìn)行管理調度。本設計選用μC/OS-II操作系統,μC/OS-II V2.52已通過(guò)美國航空航天管理局(FAA)的安全認證,其采用優(yōu)先級調度算法完成任務(wù)間的調度,支持搶占式調度,具有執行效率高、占有空間小、實(shí)時(shí)性能優(yōu)良和擴展性強等特點(diǎn),其內核還提供信號量、消息郵箱、消息隊列、內存管理等系統服務(wù)。程序架構如圖3所示。

圖3 程序架構圖


根據應用,本系統分為以下幾個(gè)任務(wù):軟復位任務(wù)(程序對系統初始狀態(tài)進(jìn)行重新設定),對SDRAM的讀取、與上位機的TCP/IP通信、顯示任務(wù)、鍵盤(pán)管理任務(wù)和數據處理任務(wù),任務(wù)間的通信通過(guò)消息隊列來(lái)完成。系統中的每個(gè)任務(wù)包括應用程序、任務(wù)堆棧和任務(wù)控制塊三部分。任務(wù)控制塊是一個(gè)數據結構,當任務(wù)的CPU使用權被剝奪時(shí),μC/OS-II用它來(lái)保存該任務(wù)的狀態(tài),當任務(wù)重新獲得CPU的使用權時(shí),任務(wù)控制塊能確保任務(wù)從被中斷的那一點(diǎn)執行下去,操作系統可以通過(guò)查詢(xún)任務(wù)控制塊的內容從而對任務(wù)進(jìn)行調度管理。


在用μC/OS-II作為內核來(lái)編寫(xiě)數據采集系統系統的應用軟件之前,必須完成μC/OS-II在微處理器的移植工作,由于μC/OS-II在設計之初就充分考慮了在不同處理器上的移植問(wèn)題,其結構化設計把與處理器相關(guān)的部分分離出來(lái),因此在任何處理器上的移植 μC/OS-II都只需要關(guān)心三個(gè)文件:頭文件OS_CPU.H、文件OS_CPU_C.C和匯編文件OS_CPU_A.ASM。


為了滿(mǎn)足系統與以太網(wǎng)直接交換信息的需要,本設計在μC/OS-II中移植了LWIP(Light Weight IP輕型IP協(xié)議)協(xié)議棧。LWIP是瑞士計算機科學(xué)院Adam Dunkels等開(kāi)發(fā)的一套用于嵌入式系統的開(kāi)放源代碼TCP/IP協(xié)議棧。LWIP可以移植到操作系統上,也可以在無(wú)操作系統的情況下運行,LWIP實(shí)現的重點(diǎn)是在保持TCP協(xié)議主要功能的基礎上減少對RAM的占用,一般它只需要幾十字節的RAM和40Kb左右的ROM就可以了。
LWIP可以很容易地在μC/OS-II的調度下,為系統增加網(wǎng)絡(luò )通信和網(wǎng)絡(luò )管理功能。LWIP把所有與硬件、操作系統、編譯器相關(guān)的部分獨立出來(lái),放在/src/arch目錄下,因此LWIP在 μC/OS-II上的移植修改這個(gè)目錄下的文件即可。

結論
微處理器中移入嵌入式實(shí)時(shí)操作系統μC/OS-II,使系統的穩定性、實(shí)時(shí)性得到保證,實(shí)時(shí)操作系統將應用分解成多任務(wù),簡(jiǎn)化了應用系統軟件的設計;采用CPLD器件集成了電路的全部控制功能,擺脫了單純用由微控制器為核心的數據采集系統時(shí)的速度瓶頸,極大提高了數據采集速度。整個(gè)系統具有速度高、實(shí)時(shí)性好、抗干擾能力強、性?xún)r(jià)比高等特點(diǎn)。


上一頁(yè) 1 2 3 下一頁(yè)

關(guān)鍵詞: CPLD ARM 高速數據 采集

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>