許琴
摘 要:為解決無線動態(tài)辦公信息發(fā)布系統(tǒng)中無線模塊通信與動態(tài)數(shù)碼顯示這兩者都要不允許中斷的矛盾,文章用keil公司的RTX51 Tiny多任務(wù)實(shí)時(shí)操作系統(tǒng),很好的解決了無線通信與動態(tài)數(shù)碼顯示,也解決了程序死機(jī)、混亂等現(xiàn)象。經(jīng)過長時(shí)間運(yùn)行,效果良好。
關(guān)鍵詞:無線模塊通信;動態(tài)數(shù)碼顯示;RTX51 Tiny;多任務(wù)實(shí)時(shí)操作系統(tǒng)
中圖分類號:TP277 文獻(xiàn)標(biāo)識碼:A 文章編號:1006-8937(2013)18-0003-02
1 RTX51的簡介
RTX51是一個(gè)用于51單片機(jī)的多任務(wù)實(shí)時(shí)操作系統(tǒng),RTX51可以簡化那些復(fù)雜而且時(shí)間要求嚴(yán)格的軟件設(shè)計(jì)。它有TINY和FULL兩個(gè)版本,TINY是FULL的子集, 最大可運(yùn)行的任務(wù)數(shù)是16個(gè),支持時(shí)間片循環(huán)任務(wù)的調(diào)度,支持任務(wù)間信號通信,可以并行地利用中斷。但它不支持存儲區(qū)的分配和釋放,不支持占先式任務(wù)的調(diào)度。RTX51TINY操作系統(tǒng)是一個(gè)非常小、易于使用的RTOS,它只占用800字節(jié)左右的程序存儲空間,可以在沒有外放數(shù)據(jù)存儲器的51系統(tǒng)中運(yùn)行。完全集成在KEIL C51編譯器中。用戶可以很容易的創(chuàng)建任務(wù),也不需要進(jìn)行復(fù)雜的配置,只需包含一個(gè)指定的頭文件即可編譯運(yùn)行。
2 系統(tǒng)硬件概述
本設(shè)計(jì)分為主機(jī)電路和從機(jī)電路,主機(jī)電路是以C8051F020單片機(jī)為控制核心,以顯示電路、時(shí)鐘電路、溫度檢測電路、無線收發(fā)模塊以及太陽能電池供電模塊構(gòu)成。從機(jī)以AT89C2051為控制核心,包含人體紅外感應(yīng)模塊和無線收發(fā)模塊。整個(gè)系統(tǒng)以主機(jī)作輪詢模式對從機(jī)進(jìn)行訪問和數(shù)據(jù)傳輸。系統(tǒng)原理框圖如1所示。
3 軟件設(shè)計(jì)
3.1 創(chuàng)建多任務(wù)
RTX51 Tiny操作系統(tǒng)編程中不再需要mian函數(shù),RTX51 Tiny從第0個(gè)任務(wù)開始執(zhí)行,在任務(wù)0中來創(chuàng)建其它需要執(zhí)行的任務(wù),在其它任務(wù)創(chuàng)建完后刪除這個(gè)任務(wù)0。系統(tǒng)自動以時(shí)間片方式執(zhí)行所創(chuàng)建的其它任務(wù)。任務(wù)0程序代碼如下:
3.2 顯示模塊流程圖
點(diǎn)陣掃描部分采用的是74HC154來控制行信號,74HC595來控制列信號,其中是低電平點(diǎn)亮LED顯示屏,154是4線16自動譯碼點(diǎn)整掃描分為兩個(gè)半屏掃描,每次掃描8次,這樣把掃描的數(shù)據(jù)送入顯示。顯示模塊流程圖如圖2所示。
3.3 無線模塊
無線模塊使用的JIT433,在初始化的時(shí)候,先讓它進(jìn)行本機(jī)通信,設(shè)置一些模塊參數(shù),空中速率,頻率,發(fā)射功率等參數(shù),設(shè)置成功后,再進(jìn)行多機(jī)通信。設(shè)置流程圖如圖3所示。
在與各分機(jī)模塊通信時(shí)設(shè)置串口的波特率1200,這樣可以信號可以傳輸?shù)酶h(yuǎn)。然后等待接受從機(jī)發(fā)送過來的信號,接受到信號進(jìn)行校正,正確就點(diǎn)亮對應(yīng)的LED燈。與各從機(jī)通信程序流程如圖4所示。
3.4 按鍵掃描模塊
在鍵盤部分,我使用了三個(gè)按鍵,分別是:功能按鍵、加鍵、減鍵;在每次按鍵時(shí)如果時(shí)間小于5 s的時(shí)候就可與進(jìn)行加減設(shè)置,大于5 s就自動退出,這樣使得任何時(shí)候可以設(shè)置時(shí)間,不必再按完以后在寫入時(shí)間的。CPU 利用率高,節(jié)約時(shí)間。
4 結(jié) 語
本軟件利用多任務(wù)RTOS設(shè)計(jì),完全實(shí)現(xiàn)了用戶所需的基本要求,能夠完成主機(jī)與各分機(jī)可靠的信息交換,系統(tǒng)運(yùn)行穩(wěn)定。較好的解決無線動態(tài)辦公信息發(fā)布系統(tǒng)中無線模塊通信與動態(tài)數(shù)碼顯示這兩者都要不允許中斷的矛盾。
參考文獻(xiàn):
[1] 黃智偉.全國大學(xué)生電子設(shè)計(jì)競賽電路設(shè)計(jì)[M].北京:北京航天航空大學(xué)出版社,2007.
[2] 譚浩強(qiáng).C程序設(shè)計(jì)[M].北京:清華大學(xué)出版社,2002.
[3] 吳金.8051單片機(jī)實(shí)踐與應(yīng)用[M].北京:清華大學(xué)出版社,2002.
[4] 張友德.單片微型機(jī)原理、應(yīng)用與實(shí)驗(yàn)[M].上海:復(fù)旦大學(xué)出版社,2003.
[5] 何小艇.電子系統(tǒng)設(shè)計(jì)[M].杭州:浙江大學(xué)出版社,2004.
[6] 石宗義.電路原理圖與電路板設(shè)計(jì)教程Protel?99SE[M].北京:希望電子出版社.2002.6