資料介紹
實時嵌入式操作系統μC/OS-II面向中小型嵌入式應用,包含全部功能模塊的內核大約為10KB,RAM的應用量主要與系統中的任務數有關。
GPRS是在目前運行的GSM網絡基礎上發展起來的數據業務,可以采用與GSM同樣的調制技術、頻率,以及同樣的TDMA幀結構。利用現有的基站子系統(BSS),GPRS從一開始就可以提供全面的覆蓋。
GPRS終端系統的硬件組成
GPRS終端系統主要由控制部分和GPRS無線模塊組成,如圖1所示。
圖1 GPRS終端的硬件組成原理
為了適應嵌入式技術在GPRS通信中的應用,系統的控制部分采用了S3C44B0x芯片。
S3C44B0x是16/32位RISC微處理器, 為手持設備和通常應用提供了一種高性價比的解決方案。
S3C44B0x具有豐富的片內資源,可以通過串行接口操作GPRS模塊,操作指令為AT命令集。
GPRS無線模塊采用了SIM300,該模塊支持GPRS的語音、數據和短信息功能,內嵌TCP/IP協議。該模塊主要由射頻天線、內部Flash、SRAM、GSM基帶處理器、匹配電源和一個60腳的ZIF插座組成。其中,GSM基帶處理器是核心部件,其作用相當于一個協議處理器,用來處理外部系統通過串口發送過來的AT指令。GPRS模塊接收速率可達86.2kbps,發送速率達21.5kbps,易于集成。
μC/OS-II的移植
μC/OS-II是一個移植性很強的操作系統,其源代碼分為硬件無關和硬件有關兩個部分,移植時只需修改與硬件有關的部分。移植μC/OS-II到S3C44B0X 上,需做以下工作:
(1) 修改數據類型
為保持與平臺的無關性,μC/OS-II使用經過宏定義的通用類型,如INT16U,表示16 位無符號數。在移植時,要把它們映射成正確的類型。
?。?) 進入和退出臨界段
用關閉和打開中斷的方式,實現進入臨界段函數OS_ENTER_CRITICAL()和退出臨界段函數OS_EX2IT_CRITICAL()。
(3) 設置堆棧生長方向
不同的處理器堆棧的生長方向不同,對S3C44B0X來說,其生長方向可以向上也可以向下。但是,由于編譯器ADS僅支持堆棧從上往下長,并且必須是滿遞減堆棧,所以這里要設置的實際使用方向為向下增長,即
#define OS_STR_GROWTH 1;
(4) 任務的切換和調度
進行任務的切換和調度有兩種方法,一是當前運行的任務主動調用OS_Sched() ,判斷是否有更高優先級的任務要運行,如果有就將其切換到就緒態,然后調用OS_TASK_SW() ,產生一個軟中斷,中斷向量指向函數OSIntCtxSw() ,在其中修改任務堆棧,運行新的任務。二是產生硬件中斷后,在中斷處理函數中調用OSIntEx()。
在上述過程中,產生軟中斷和修改任務堆棧的代碼都是與處理器相關的, S3C44B0X 的軟中斷匯編指令是SWI ,壓棧和出棧的匯編指令分別是STM和LDM。
?。?) 堆棧的初始化
μC/OS-II在創建任務時會調用OSTaskStkInt() 函數對任務堆棧進行初始化,這里需要將堆棧設置成和產生中斷后的形式一樣,一般包括任務起始地址、中斷返回地址、CPU 寄存器等內容。另外,還要保證任務是運行在特權模式下,而不是用戶模式下。
(6) 時鐘節拍中斷
μC/OS-II用時鐘節拍中斷實現時間延遲和超時功能,定時頻率一般在10Hz~100Hz。設置定時器的代碼與CPU 相關,中斷向量必須指向μC/OS-II時鐘節拍中斷服務子程序OSTickISR() 。
系統的流程和任務的組成
本系統中,首先調用OSInit(),初始化μC/OS-II所有的變量和數據結構,再調用ARM_init()初始化微控制器的定時器及串口等硬件,通過調用OSTaskCreate(),依次創建各個任務,最后調用OSStart()啟動系統,開始多任務調度。整個系統控制程序模塊及流程如圖2 所示。
圖2 系統控制程序模塊及流程
整個系統中的任務包括ARM控制部分的鍵盤掃描、LCD顯示任務和通信任務以及GPRS終端功能的短消息任務,語音通話任務等。因此,在μC/OS-II系統中的任務主要包括:
鍵盤掃描任務task_sys_key scan(),包括4×4鍵盤部分的掃描識別keyscan(),以及對應按鍵功能編碼的實現keyscan_code()等。
LCD顯示任務task_sys_ lcddis(),包括背景內容顯示display_context()、輸入內容顯示display_input()、輸出內容顯示display_output()等。
GPRS是在目前運行的GSM網絡基礎上發展起來的數據業務,可以采用與GSM同樣的調制技術、頻率,以及同樣的TDMA幀結構。利用現有的基站子系統(BSS),GPRS從一開始就可以提供全面的覆蓋。
GPRS終端系統的硬件組成
GPRS終端系統主要由控制部分和GPRS無線模塊組成,如圖1所示。
圖1 GPRS終端的硬件組成原理
為了適應嵌入式技術在GPRS通信中的應用,系統的控制部分采用了S3C44B0x芯片。
S3C44B0x是16/32位RISC微處理器, 為手持設備和通常應用提供了一種高性價比的解決方案。
S3C44B0x具有豐富的片內資源,可以通過串行接口操作GPRS模塊,操作指令為AT命令集。
GPRS無線模塊采用了SIM300,該模塊支持GPRS的語音、數據和短信息功能,內嵌TCP/IP協議。該模塊主要由射頻天線、內部Flash、SRAM、GSM基帶處理器、匹配電源和一個60腳的ZIF插座組成。其中,GSM基帶處理器是核心部件,其作用相當于一個協議處理器,用來處理外部系統通過串口發送過來的AT指令。GPRS模塊接收速率可達86.2kbps,發送速率達21.5kbps,易于集成。
μC/OS-II的移植
μC/OS-II是一個移植性很強的操作系統,其源代碼分為硬件無關和硬件有關兩個部分,移植時只需修改與硬件有關的部分。移植μC/OS-II到S3C44B0X 上,需做以下工作:
(1) 修改數據類型
為保持與平臺的無關性,μC/OS-II使用經過宏定義的通用類型,如INT16U,表示16 位無符號數。在移植時,要把它們映射成正確的類型。
?。?) 進入和退出臨界段
用關閉和打開中斷的方式,實現進入臨界段函數OS_ENTER_CRITICAL()和退出臨界段函數OS_EX2IT_CRITICAL()。
(3) 設置堆棧生長方向
不同的處理器堆棧的生長方向不同,對S3C44B0X來說,其生長方向可以向上也可以向下。但是,由于編譯器ADS僅支持堆棧從上往下長,并且必須是滿遞減堆棧,所以這里要設置的實際使用方向為向下增長,即
#define OS_STR_GROWTH 1;
(4) 任務的切換和調度
進行任務的切換和調度有兩種方法,一是當前運行的任務主動調用OS_Sched() ,判斷是否有更高優先級的任務要運行,如果有就將其切換到就緒態,然后調用OS_TASK_SW() ,產生一個軟中斷,中斷向量指向函數OSIntCtxSw() ,在其中修改任務堆棧,運行新的任務。二是產生硬件中斷后,在中斷處理函數中調用OSIntEx()。
在上述過程中,產生軟中斷和修改任務堆棧的代碼都是與處理器相關的, S3C44B0X 的軟中斷匯編指令是SWI ,壓棧和出棧的匯編指令分別是STM和LDM。
?。?) 堆棧的初始化
μC/OS-II在創建任務時會調用OSTaskStkInt() 函數對任務堆棧進行初始化,這里需要將堆棧設置成和產生中斷后的形式一樣,一般包括任務起始地址、中斷返回地址、CPU 寄存器等內容。另外,還要保證任務是運行在特權模式下,而不是用戶模式下。
(6) 時鐘節拍中斷
μC/OS-II用時鐘節拍中斷實現時間延遲和超時功能,定時頻率一般在10Hz~100Hz。設置定時器的代碼與CPU 相關,中斷向量必須指向μC/OS-II時鐘節拍中斷服務子程序OSTickISR() 。
系統的流程和任務的組成
本系統中,首先調用OSInit(),初始化μC/OS-II所有的變量和數據結構,再調用ARM_init()初始化微控制器的定時器及串口等硬件,通過調用OSTaskCreate(),依次創建各個任務,最后調用OSStart()啟動系統,開始多任務調度。整個系統控制程序模塊及流程如圖2 所示。
圖2 系統控制程序模塊及流程
整個系統中的任務包括ARM控制部分的鍵盤掃描、LCD顯示任務和通信任務以及GPRS終端功能的短消息任務,語音通話任務等。因此,在μC/OS-II系統中的任務主要包括:
鍵盤掃描任務task_sys_key scan(),包括4×4鍵盤部分的掃描識別keyscan(),以及對應按鍵功能編碼的實現keyscan_code()等。
LCD顯示任務task_sys_ lcddis(),包括背景內容顯示display_context()、輸入內容顯示display_input()、輸出內容顯示display_output()等。
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- μC/OS-II 在Nios上的移植
- 基于μC/OS-II的無線監控終端設計與實現
- μC/OS-II在PC機上移植的設計與實現
- 基于μC/OS-II的無線調度策略分析與實現
- 輕型PPP協議在μC/OS-II操作系統中的實現
- 嵌入式實時操作系統μC/OS-II在配電自動化遠方終端中的應
- 嵌入式μC/OS-II在LPC2104上的移植及通信設計
- 基于μC/OS-II 的配電室監控終端的研究
- 基于μC/OS-II 的CAN總線驅動程序設計
- μC OS-II 中擴充任務數的方法
- μC OS-II 在Nios 上的移植1
- μC OS-II 在S3C44B0X 處理器上的移植
- 編寫μC OS-II 實時內核下的串行驅動
- μC/OS-II 任務調度機制的改進
- 基于μC/OS-II的嵌入式音頻系統設計
- 基于μC/OS-II和TMS320LF2407A實現集散式數據采集系統的設計 2186次閱讀
- 基于實時嵌入式操作系統mC/OS-II實現GPRS終端系統的設計 2252次閱讀
- 基于MC9S12DP256芯片和μC/OS-II實現CCP軟件的設計 2685次閱讀
- 基于嵌入式工控模塊和μC/OS-II實現車載狀態監控系統的設計 1907次閱讀
- 基于μC/OS-II操作系統實現在P89V51RD2微控制器上運行 747次閱讀
- 基于μC/OS-II操作系統在SPCE061A上的移植優化研研究 779次閱讀
- 基于μC/OS-II嵌入式系統開發中低功耗系統的設計 2984次閱讀
- 51單片機對μC/OS-II實時操作系統的移植 2385次閱讀
- LPC213X通過μC/OS-II的多種移植方案 621次閱讀
- 淺論uC/OS-II 在電動車電池管理系統中的應用研究 1313次閱讀
- μC/OS-II系統基礎嵌入式開發編程教程 4370次閱讀
- LPC2119簡介 μC/OS-II在LPC2119上的移植 2705次閱讀
- 車輛調度系統的整體設計 UC/OS-II的內核調度機理 1116次閱讀
- 利用μC/OS-II的嵌入式激光測距系統 1992次閱讀
- 用AndesCore N1033A-S處理器實現μC/OS-II的移植 3969次閱讀
下載排行
本周
- 1TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 2開關電源基礎知識
- 5.73 MB | 6次下載 | 免費
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設計
- 0.60 MB | 3次下載 | 免費
- 5基于FPGA的光纖通信系統的設計與實現
- 0.61 MB | 2次下載 | 免費
- 6基于FPGA的C8051F單片機開發板設計
- 0.70 MB | 2次下載 | 免費
- 751單片機窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費
- 8基于51單片機的RGB調色燈程序仿真
- 0.86 MB | 2次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33564次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關電源設計實例指南
- 未知 | 21548次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅動電路設計》 溫德爾著
- 0.00 MB | 6653次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537796次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191185次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183278次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多