<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è) > 嵌入式系統 > 設計應用 > 基于μC/OS-II的GPRS終端設計

基于μC/OS-II的GPRS終端設計

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

實(shí)時(shí)嵌入式操作系統μC/OS-II面向中小型嵌入式應用,包含全部功能模塊的內核大約為10KB,RAM的應用量主要與系統中的任務(wù)數有關(guān)。

本文引用地址:http://dyxdggzs.com/article/257374.htm

  GPRS是在目前運行的GSM網(wǎng)絡(luò )基礎上發(fā)展起來(lái)的數據業(yè)務(wù),可以采用與GSM同樣的調制技術(shù)、頻率,以及同樣的TDMA幀結構。利用現有的基站子系統(BSS),GPRS從一開(kāi)始就可以提供全面的覆蓋。

  系統的硬件組成

  系統主要由控制部分和GPRS無(wú)線(xiàn)模塊組成,如圖1所示。

圖1 的硬件組成原理

  為了適應嵌入式技術(shù)在GPRS通信中的應用,系統的控制部分采用了S3C44B0x芯片。

  S3C44B0x是16/微處理器, 為手持設備和通常應用提供了一種高性?xún)r(jià)比的解決方案。

  S3C44B0x具有豐富的片內資源,可以通過(guò)串行接口操作GPRS模塊,操作指令為AT命令集。

  GPRS無(wú)線(xiàn)模塊采用了SIM300,該模塊支持GPRS的語(yǔ)音、數據和短信息功能,內嵌TCP/IP協(xié)議。該模塊主要由射頻天線(xiàn)、內部Flash、SRAM、GSM基帶處理器、匹配電源和一個(gè)60腳的ZIF插座組成。其中,GSM基帶處理器是核心部件,其作用相當于一個(gè)協(xié)議處理器,用來(lái)處理外部系統通過(guò)串口發(fā)送過(guò)來(lái)的AT指令。GPRS模塊接收速率可達86.2kbps,發(fā)送速率達21.5kbps,易于集成。

μC/OS-II的移植

  μC/OS-II是一個(gè)移植性很強的操作系統,其源代碼分為硬件無(wú)關(guān)和硬件有關(guān)兩個(gè)部分,移植時(shí)只需修改與硬件有關(guān)的部分。移植μC/OS-II到S3C44B0X 上,需做以下工作:

  (1) 修改數據類(lèi)型

  為保持與平臺的無(wú)關(guān)性,μC/OS-II使用經(jīng)過(guò)宏定義的通用類(lèi)型,如INT16U,表示16 位無(wú)符號數。在移植時(shí),要把它們映射成正確的類(lèi)型。

  (2) 進(jìn)入和退出臨界段

  用關(guān)閉和打開(kāi)中斷的方式,實(shí)現進(jìn)入臨界段函數OS_ENTER_CRITICAL()和退出臨界段函數OS_EX2IT_CRITICAL()。

  (3) 設置堆棧生長(cháng)方向

  不同的處理器堆棧的生長(cháng)方向不同,對S3C44B0X來(lái)說(shuō),其生長(cháng)方向可以向上也可以向下。但是,由于編譯器ADS僅支持堆棧從上往下長(cháng),并且必須是滿(mǎn)遞減堆棧,所以這里要設置的實(shí)際使用方向為向下增長(cháng),即

  #define OS_STR_GROWTH 1;

  (4) 任務(wù)的切換和調度

  進(jìn)行任務(wù)的切換和調度有兩種方法,一是當前運行的任務(wù)主動(dòng)調用OS_Sched() ,判斷是否有更高優(yōu)先級的任務(wù)要運行,如果有就將其切換到就緒態(tài),然后調用OS_TASK_SW() ,產(chǎn)生一個(gè)軟中斷,中斷向量指向函數OSIntCtxSw() ,在其中修改任務(wù)堆棧,運行新的任務(wù)。二是產(chǎn)生硬件中斷后,在中斷處理函數中調用OSIntEx()。

  在上述過(guò)程中,產(chǎn)生軟中斷和修改任務(wù)堆棧的代碼都是與處理器相關(guān)的, S3C44B0X 的軟中斷匯編指令是SWI ,壓棧和出棧的匯編指令分別是STM和LDM。

  (5) 堆棧的初始化

  μC/OS-II在創(chuàng )建任務(wù)時(shí)會(huì )調用OSTaskStkInt() 函數對任務(wù)堆棧進(jìn)行初始化,這里需要將堆棧設置成和產(chǎn)生中斷后的形式一樣,一般包括任務(wù)起始地址、中斷返回地址、CPU 寄存器等內容。另外,還要保證任務(wù)是運行在特權模式下,而不是用戶(hù)模式下。

  (6) 時(shí)鐘節拍中斷

  μC/OS-II用時(shí)鐘節拍中斷實(shí)現時(shí)間延遲和超時(shí)功能,定時(shí)頻率一般在10Hz~100Hz。設置定時(shí)器的代碼與CPU 相關(guān),中斷向量必須指向μC/OS-II時(shí)鐘節拍中斷服務(wù)子程序OSTickISR() 。

  系統的流程和任務(wù)的組成

  本系統中,首先調用OSInit(),初始化μC/OS-II所有的變量和數據結構,再調用ARM_init()初始化微控制器的定時(shí)器及串口等硬件,通過(guò)調用OSTaskCreate(),依次創(chuàng )建各個(gè)任務(wù),最后調用OSStart()啟動(dòng)系統,開(kāi)始多任務(wù)調度。整個(gè)系統控制程序模塊及流程如圖2 所示。

圖2 系統控制程序模塊及流程

  整個(gè)系統中的任務(wù)包括ARM控制部分的鍵盤(pán)掃描、LCD顯示任務(wù)和通信任務(wù)以及GPRS終端功能的短消息任務(wù),語(yǔ)音通話(huà)任務(wù)等。因此,在μC/OS-II系統中的任務(wù)主要包括:

  鍵盤(pán)掃描任務(wù)task_sys_key scan(),包括4×4鍵盤(pán)部分的掃描識別keyscan(),以及對應按鍵功能編碼的實(shí)現keyscan_code()等。

  LCD顯示任務(wù)task_sys_ lcddis(),包括背景內容顯示display_context()、輸入內容顯示display_input()、輸出內容顯示display_output()等。

  通信任務(wù)task_sys_ communication(),除了包括系統和主機進(jìn)行通信的函數host_msg(),以實(shí)現通過(guò)電腦進(jìn)行系統操作,還有各個(gè)任務(wù)之間相互通信的處理msg_tasl()。

  話(huà)音通話(huà)任務(wù)task_sys_ telephone(),其中包括電話(huà)呼叫GPRS_phone_call()、電話(huà)接聽(tīng)gprs_phone_recevie()等。 另外,還包括系統短信收發(fā)任務(wù)。

  根據系統進(jìn)行GPRS短消息通信和語(yǔ)音通信的功能要求,設置各個(gè)任務(wù)的優(yōu)先級如表1所示。

  結語(yǔ)

  μC/OS-II實(shí)時(shí)操作系統是開(kāi)放源代碼且得到實(shí)際驗證的軟件平臺,而S3C44BOx具有強大的性能,基于此軟件及硬件平臺對GPRS模塊進(jìn)行設計,能大量減輕研發(fā)任務(wù),提高研發(fā)速度,為在短時(shí)間內實(shí)現GPRS終端系統設計創(chuàng )造良好條件。



關(guān)鍵詞: μC/OS-II GPRS終端 32位RISC

評論


相關(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>