電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>嵌入式開發(fā)>基于μC/OS-II的GPRS終端設(shè)計(jì)

基于μC/OS-II的GPRS終端設(shè)計(jì)

2017-10-23 | rar | 0.3 MB | 次下載 | 1積分

資料介紹

 實(shí)時(shí)嵌入式操作系統(tǒng)μC/OS-II面向中小型嵌入式應(yīng)用,包含全部功能模塊的內(nèi)核大約為10KB,RAM的應(yīng)用量主要與系統(tǒng)中的任務(wù)數(shù)有關(guān)。
  GPRS是在目前運(yùn)行的GSM網(wǎng)絡(luò)基礎(chǔ)上發(fā)展起來(lái)的數(shù)據(jù)業(yè)務(wù),可以采用與GSM同樣的調(diào)制技術(shù)、頻率,以及同樣的TDMA幀結(jié)構(gòu)。利用現(xiàn)有的基站子系統(tǒng)(BSS),GPRS從一開始就可以提供全面的覆蓋。
  GPRS終端系統(tǒng)的硬件組成
  GPRS終端系統(tǒng)主要由控制部分和GPRS無(wú)線模塊組成,如圖1所示。
  基于μC/OS-II的GPRS終端設(shè)計(jì)
  圖1 GPRS終端的硬件組成原理
  為了適應(yīng)嵌入式技術(shù)在GPRS通信中的應(yīng)用,系統(tǒng)的控制部分采用了S3C44B0x芯片
  S3C44B0x是16/32位RISC微處理器, 為手持設(shè)備和通常應(yīng)用提供了一種高性價(jià)比的解決方案。
  S3C44B0x具有豐富的片內(nèi)資源,可以通過(guò)串行接口操作GPRS模塊,操作指令為AT命令集。
  GPRS無(wú)線模塊采用了SIM300,該模塊支持GPRS的語(yǔ)音、數(shù)據(jù)和短信息功能,內(nèi)嵌TCP/IP協(xié)議。該模塊主要由射頻天線、內(nèi)部Flash、SRAM、GSM基帶處理器、匹配電源和一個(gè)60腳的ZIF插座組成。其中,GSM基帶處理器是核心部件,其作用相當(dāng)于一個(gè)協(xié)議處理器,用來(lái)處理外部系統(tǒng)通過(guò)串口發(fā)送過(guò)來(lái)的AT指令。GPRS模塊接收速率可達(dá)86.2kbps,發(fā)送速率達(dá)21.5kbps,易于集成。
  μC/OS-II的移植
  μC/OS-II是一個(gè)移植性很強(qiáng)的操作系統(tǒng),其源代碼分為硬件無(wú)關(guān)和硬件有關(guān)兩個(gè)部分,移植時(shí)只需修改與硬件有關(guān)的部分。移植μC/OS-II到S3C44B0X 上,需做以下工作:
  (1) 修改數(shù)據(jù)類型
  為保持與平臺(tái)的無(wú)關(guān)性,μC/OS-II使用經(jīng)過(guò)宏定義的通用類型,如INT16U,表示16 位無(wú)符號(hào)數(shù)。在移植時(shí),要把它們映射成正確的類型。
 ?。?) 進(jìn)入和退出臨界段
  用關(guān)閉和打開中斷的方式,實(shí)現(xiàn)進(jìn)入臨界段函數(shù)OS_ENTER_CRITICAL()和退出臨界段函數(shù)OS_EX2IT_CRITICAL()。
  (3) 設(shè)置堆棧生長(zhǎng)方向
  不同的處理器堆棧的生長(zhǎng)方向不同,對(duì)S3C44B0X來(lái)說(shuō),其生長(zhǎng)方向可以向上也可以向下。但是,由于編譯器ADS僅支持堆棧從上往下長(zhǎng),并且必須是滿遞減堆棧,所以這里要設(shè)置的實(shí)際使用方向?yàn)橄蛳略鲩L(zhǎng),即
  #define OS_STR_GROWTH 1;
 ?。?) 任務(wù)的切換和調(diào)度
  進(jìn)行任務(wù)的切換和調(diào)度有兩種方法,一是當(dāng)前運(yùn)行的任務(wù)主動(dòng)調(diào)用OS_Sched() ,判斷是否有更高優(yōu)先級(jí)的任務(wù)要運(yùn)行,如果有就將其切換到就緒態(tài),然后調(diào)用OS_TASK_SW() ,產(chǎn)生一個(gè)軟中斷,中斷向量指向函數(shù)OSIntCtxSw() ,在其中修改任務(wù)堆棧,運(yùn)行新的任務(wù)。二是產(chǎn)生硬件中斷后,在中斷處理函數(shù)中調(diào)用OSIntEx()。
  在上述過(guò)程中,產(chǎn)生軟中斷和修改任務(wù)堆棧的代碼都是與處理器相關(guān)的, S3C44B0X 的軟中斷匯編指令是SWI ,壓棧和出棧的匯編指令分別是STM和LDM。
 ?。?) 堆棧的初始化
  μC/OS-II在創(chuàng)建任務(wù)時(shí)會(huì)調(diào)用OSTaskStkInt() 函數(shù)對(duì)任務(wù)堆棧進(jìn)行初始化,這里需要將堆棧設(shè)置成和產(chǎn)生中斷后的形式一樣,一般包括任務(wù)起始地址、中斷返回地址、CPU 寄存器等內(nèi)容。另外,還要保證任務(wù)是運(yùn)行在特權(quán)模式下,而不是用戶模式下。
  (6) 時(shí)鐘節(jié)拍中斷
  μC/OS-II用時(shí)鐘節(jié)拍中斷實(shí)現(xiàn)時(shí)間延遲和超時(shí)功能,定時(shí)頻率一般在10Hz~100Hz。設(shè)置定時(shí)器的代碼與CPU 相關(guān),中斷向量必須指向μC/OS-II時(shí)鐘節(jié)拍中斷服務(wù)子程序OSTickISR() 。
  系統(tǒng)的流程和任務(wù)的組成
  本系統(tǒng)中,首先調(diào)用OSInit(),初始化μC/OS-II所有的變量和數(shù)據(jù)結(jié)構(gòu),再調(diào)用ARM_init()初始化微控制器的定時(shí)器及串口等硬件,通過(guò)調(diào)用OSTaskCreate(),依次創(chuàng)建各個(gè)任務(wù),最后調(diào)用OSStart()啟動(dòng)系統(tǒng),開始多任務(wù)調(diào)度。整個(gè)系統(tǒng)控制程序模塊及流程如圖2 所示。
  基于μC/OS-II的GPRS終端設(shè)計(jì)
  圖2 系統(tǒng)控制程序模塊及流程
  整個(gè)系統(tǒng)中的任務(wù)包括ARM控制部分的鍵盤掃描、LCD顯示任務(wù)和通信任務(wù)以及GPRS終端功能的短消息任務(wù),語(yǔ)音通話任務(wù)等。因此,在μC/OS-II系統(tǒng)中的任務(wù)主要包括:
  鍵盤掃描任務(wù)task_sys_key scan(),包括4×4鍵盤部分的掃描識(shí)別keyscan(),以及對(duì)應(yīng)按鍵功能編碼的實(shí)現(xiàn)keyscan_code()等。
  LCD顯示任務(wù)task_sys_ lcddis(),包括背景內(nèi)容顯示display_context()、輸入內(nèi)容顯示display_input()、輸出內(nèi)容顯示display_output()等。
下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評(píng)論

查看更多

下載排行

本周

  1. 1TC358743XBG評(píng)估板參考手冊(cè)
  2. 1.36 MB  |  330次下載  |  免費(fèi)
  3. 2開關(guān)電源基礎(chǔ)知識(shí)
  4. 5.73 MB  |  6次下載  |  免費(fèi)
  5. 3100W短波放大電路圖
  6. 0.05 MB  |  4次下載  |  3 積分
  7. 4嵌入式linux-聊天程序設(shè)計(jì)
  8. 0.60 MB  |  3次下載  |  免費(fèi)
  9. 5基于FPGA的光纖通信系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
  10. 0.61 MB  |  2次下載  |  免費(fèi)
  11. 6基于FPGA的C8051F單片機(jī)開發(fā)板設(shè)計(jì)
  12. 0.70 MB  |  2次下載  |  免費(fèi)
  13. 751單片機(jī)窗簾控制器仿真程序
  14. 1.93 MB  |  2次下載  |  免費(fèi)
  15. 8基于51單片機(jī)的RGB調(diào)色燈程序仿真
  16. 0.86 MB  |  2次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33564次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開關(guān)電源設(shè)計(jì)實(shí)例指南
  8. 未知  |  21548次下載  |  免費(fèi)
  9. 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實(shí)例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
  16. 0.00 MB  |  6653次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537796次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420026次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191185次下載  |  免費(fèi)
  13. 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
  14. 158M  |  183278次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)