欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品

主頁(yè) > 智能呼叫系統(tǒng) > 行業(yè)資訊 > EPSON MCU和μC/OS-II實(shí)現(xiàn)短信息電話機(jī)的通信系統(tǒng)設(shè)計(jì)

EPSON MCU和μC/OS-II實(shí)現(xiàn)短信息電話機(jī)的通信系統(tǒng)設(shè)計(jì)

POST TIME:2021-07-22 17:04

將μC/OS-II實(shí)時(shí)嵌入式操作系統(tǒng)移植到EPSON八位單片機(jī)上來開發(fā)短信息電話機(jī)。此電話機(jī)除普通電話的通用功能外,還增加了短消息收/發(fā)功能、信息瀏覽與查閱功能、信息點(diǎn)播與信息訂閱功能等。

1 背 景

Short Messages Phone(短信息電話機(jī))是一種操作簡(jiǎn)便、成本低廉的固定電話信息終端產(chǎn)品。它集成了網(wǎng)絡(luò)和智能電話的優(yōu)點(diǎn),是一種基于信息網(wǎng)絡(luò)的,具有交互功能的信息終端產(chǎn)品,可以通過固定電話網(wǎng)絡(luò)與信息中心進(jìn)行數(shù)據(jù)雙向傳送。

2 系統(tǒng)功能及其實(shí)現(xiàn)方案

2.1 功能特點(diǎn)

短信息電話機(jī)除了實(shí)現(xiàn)普通電話機(jī)的通用功能外,還增加了短消息收/發(fā)、信息瀏覽與查閱、信息點(diǎn)播、信息訂閱、電話簿、來電號(hào)碼顯示與存儲(chǔ)、通話記錄、來電轉(zhuǎn)移、呼叫等待、呼叫限制、對(duì)屏幕的灰度進(jìn)行設(shè)置、對(duì)回執(zhí)進(jìn)行設(shè)置以及時(shí)鐘和日歷功能、鬧鐘功能、特色鈴聲功能、記事本功能等。

短信息電話機(jī)還可以和信息中心在線交互,查看信息中心提供的信息(例如天氣預(yù)報(bào)、電視預(yù)告、電影預(yù)告、股價(jià)查詢、話費(fèi)查詢、區(qū)號(hào)郵編查詢、新聞欄目、彩票信息等等),還可以訂閱一些自己喜歡的信息。在線瀏覽的信息取決于信息中心提供的信息。

短信息電話機(jī)就像是一個(gè)固定的手機(jī)。手機(jī)的功能幾乎它都具備。

2.2 硬件方案

(1)MCU的選擇

MCU是整個(gè)方案的核心,由它來處理CPE(客戶端設(shè)備)與IIS(集成信息系統(tǒng)),控制整個(gè)電話機(jī)的各個(gè)功能部件。由于人機(jī)界面對(duì)速度的要求不是很高,數(shù)據(jù)通信速度也相對(duì)較低,一般的8位MCU就能夠滿足方案的要求。我們選擇EPSON 的EOC88系列的E0C88104芯片。

(2)數(shù)據(jù)信號(hào)的解/編碼

① FSK信號(hào)的解碼。FSK(頻移鍵控)的解碼選用臺(tái)灣華邦公司的W91030。它是用同步串口與MCU連接的,不僅能提供FSK的解碼,而且還能提供CAS信號(hào)的檢測(cè)(CAS信號(hào)是IIS與CPE連接時(shí)下傳的一個(gè)很重要的握手信號(hào))和振鈴檢測(cè),是一款很實(shí)用的芯片,但它的成本較高。如果用分離器件,也能做到FSK解碼,但這樣做沒有經(jīng)過驗(yàn)證,風(fēng)險(xiǎn)較大。

② DTMF信號(hào)的解碼。選用的是9170,這一款芯片是很通用的。

③ DTMF信號(hào)的編碼。選用的是臺(tái)灣華邦公司的W91082,同樣是以同步串口與MCU相連接。

④ FSK的編碼。FSK信號(hào)的編碼不是必需的,考慮到FSK傳送的效率要比DTMF高20“28倍,當(dāng)然最好選用FSK上傳方式。由于相應(yīng)的FSK的編碼器件價(jià)位很高,本方案采用了低成本的軟件方式作為后備模塊。

(3)語(yǔ)音電路

目前選用的是Philips公司的TEA1098。該器件集成了普通話音放大、消側(cè)音及免提功能,實(shí)用方便,但價(jià)位有點(diǎn)高。考慮到我們初次接觸電話電路,而且這部分也不是關(guān)鍵技術(shù),為了縮短研發(fā)周期,選擇這款芯片是比較合適的。

2.3 軟件方案

本系統(tǒng)選用μC/OS-II操作系統(tǒng),將其移植到所選的MCU上。在main中建立一個(gè)起始任務(wù)

然后,用OSTaskCreate()函數(shù)建立6個(gè)任務(wù)。任務(wù)名分別為:HandsetTask(摘/掛機(jī)任務(wù))、RingTask(響鈴任務(wù))、KeyTask(鍵盤任務(wù))、SmTask(短消息任務(wù))、UITask(用戶界面(UI)任務(wù))、ClockTask(時(shí)鐘任務(wù))。最后,在起始任務(wù)中將它本身刪除掉。

(1)摘/掛機(jī)任務(wù)

當(dāng)拿起聽筒或放下聽筒時(shí),就產(chǎn)生中斷。在中斷中,調(diào)用OSMboxPost(Mbox_Int_Hook,Msg_Int_Hook)來喚醒摘/掛機(jī)任務(wù),同時(shí)清除中斷標(biāo)志。Msg_Int_Hook[0]=0x00為摘機(jī),Msg_Int_Hook[0]=0x01為掛機(jī)。

摘/掛機(jī)任務(wù)不斷調(diào)用OSMboxPend(Mbox _Int_Hook,0,%26;amp;err)來獲得信箱。獲得信箱后,根據(jù)Msg_Int_Hook[0]中的值,就知道是摘機(jī)還是掛機(jī),然后調(diào)用OSMboxPost(Mbox_Any_UI,Msg_Any_UI)來喚醒UI任務(wù)。Msg_Any_UI [0]=任務(wù)號(hào)1,Msg_Any_UI =0x00為摘機(jī),Msg_Any_UI =0x01為掛機(jī)。

在掛機(jī)的時(shí)候,如果先前是在響鈴的時(shí)候摘機(jī)的,那么UI任務(wù)把它當(dāng)做已接來電處理;如果不是在響鈴的時(shí)候摘機(jī)的,那么在掛機(jī)的時(shí)候把它當(dāng)做已撥電話處理。

(2)振鈴任務(wù)

當(dāng)鈴聲來到時(shí),就產(chǎn)生中斷。在這個(gè)中斷中,調(diào)用OSSemPost(Sem_Int_Ring)來喚醒振鈴任務(wù)。

響鈴任務(wù)調(diào)用OSSemPend(Sem_Int_Ring,0,%26;amp;err)來獲得信號(hào)量。獲得信號(hào)量后,就把下傳的號(hào)碼接收下來;根據(jù)號(hào)碼就可以知道是短信息,還是普通電話。

① 當(dāng)是短信息時(shí),就調(diào)用OSSemPost(Sem_Any _SMTask)來喚醒短消息任務(wù);

② 如果是電話,就響鈴,同時(shí)調(diào)用OSMboxPost(Mbox_Any_UI,Msg_Any_UI)來喚醒UI任務(wù)。這時(shí)Msg_Any_UI[0]=任務(wù)號(hào)2,從Msg_Any_UI開始存的是來電時(shí)間和電話號(hào)碼,然后調(diào)用OSSemPend(Sem_Int_Ring,RING_RECV_TIMEOUT,%26;amp;err),來延時(shí)響鈴一段時(shí)間。

如果在這段時(shí)間內(nèi)沒有接電話,那么必然會(huì)超時(shí),于是就清除鈴聲中斷,同時(shí)調(diào)用OSMboxPost(Mbox_Any_UI,Msg_Any_UI)來喚醒UI任務(wù),這時(shí)Msg_Any_UI[0]=任務(wù)號(hào)2,Msg_Any_UI=0xff表示鈴聲結(jié)束。UI任務(wù)把它當(dāng)作未接來電處理。

如果在這段時(shí)間內(nèi)接電話,就必然喚醒摘/掛機(jī)任務(wù)。如果從響鈴到對(duì)摘/掛機(jī)任務(wù)處理完畢所需要的總時(shí)間還沒有到RING_RECV_TIMEOUT,那么,當(dāng)時(shí)間到了,UI任務(wù)也會(huì)收到鈴聲結(jié)束的消息;但此時(shí),UI任務(wù)不對(duì)它做任何處理。

響鈴任務(wù)如何區(qū)別是正常的電話還是信息中心的來電信息呢?其實(shí)很簡(jiǎn)單。信息中心也是一個(gè)終端,是由一個(gè)特定的號(hào)碼來確定的。就像用不同的電話號(hào)碼來區(qū)別不同的用戶一樣。這樣響鈴任務(wù)就可以根據(jù)電話線上下傳的號(hào)碼,來確定是哪種情況了。

(3)鍵盤任務(wù)

有按鍵按下時(shí),產(chǎn)生一中斷,在中斷服務(wù)子程序中調(diào)用OSSemPost(Sem_Int_Keyboard)來喚醒鍵盤任務(wù),同時(shí)清除中斷標(biāo)志。鍵盤任務(wù)調(diào)用OSSemPend(Sem_Int_Keyboard,0,%26;amp;err)來獲得信號(hào)量。獲得信號(hào)量后,鍵盤任務(wù)將調(diào)用OSMboxPost(Mbox_Any_UI,Msg_Any_UI)喚醒UI任務(wù)。

Msg_Any_UI[0]為任務(wù)號(hào)3, Msg_Any_UI為鍵值。

(4)短消息任務(wù)

該任務(wù)調(diào)用OSSemPend(Sem_Any_SMTask,0,%26;amp;err)獲得信號(hào)量。當(dāng)獲得信號(hào)量后,通過標(biāo)志位判別是準(zhǔn)備上傳數(shù)據(jù)還是下傳數(shù)據(jù)。

① 下傳數(shù)據(jù)時(shí),將下傳的數(shù)據(jù)放在recv_buf[]中,然后調(diào)用OSMboxPost(Mbox_Any_UI,Msg_Any_UI)喚醒UI任務(wù)。Msg_Any_UI [0]=任務(wù)號(hào)4,從Msg_Any_UI 開始存的是從recv_buf[]中篩選過的數(shù)據(jù)。這是在連上后從信息中心下載信息的情況,其中Msg_Any_UI 存的是信息的種類號(hào),種類號(hào)都是大于0x80H小于0xFFH的;沒有連上信息中心或者是連上之后完成任務(wù)。這時(shí)recv_buf存的就是0xff;如果剛剛連上,就在recv_buf存0x01。

② 如果用戶需要發(fā)送短消息任務(wù),先將信息存在Msg_send_buf[]中,然后UI任務(wù)調(diào)用OSSemPost(Sem_Any_SMTask),將該任務(wù)激活。該任務(wù)提取存在Msg_send_buf[]中的信息后,包裝后保存在send_buf[],然后將其發(fā)出去。

(5)用戶界面任務(wù)

UI任務(wù)一直在等待消息。當(dāng)它被激活時(shí),根據(jù)存在Msg_Any_UI[255]中的不同數(shù)據(jù)進(jìn)行不同的處理。詳述見“3.用戶界面任務(wù)詳述”。

(6)時(shí)鐘任務(wù)

單片機(jī)每10ms產(chǎn)生一個(gè)中斷,在這個(gè)中斷服務(wù)子程序中,對(duì)clock_count減1。當(dāng)減為0時(shí),就調(diào)用OSSemPost(Sem_Int_ClockTask)喚醒時(shí)鐘任務(wù);同時(shí),clock_count重新回到100。這樣每1s,就會(huì)調(diào)用一次OSSemPost(Sem_Int_ClockTask)。時(shí)鐘任務(wù)調(diào)用OSSemPend(Sem_Int_ClockTask,0,%26;amp;err)獲得信號(hào)量。當(dāng)獲得信號(hào)量時(shí),就更新時(shí)間。如果在23:59:59的時(shí)候更新時(shí)間,那就要同時(shí)更新日期和星期。如果此時(shí)UI任務(wù)處于待機(jī)狀態(tài),時(shí)鐘任務(wù)就調(diào)用OSMboxPost(Mbox_Any_UI,Msg_Any_UI)來喚醒UI任務(wù)。Msg_Any_UI[0]為任務(wù)號(hào)0x06。時(shí)鐘任務(wù)只是負(fù)責(zé)更新時(shí)間,顯示時(shí)間是由UI任務(wù)在待機(jī)的時(shí)候來完成的。

3 用戶界面任務(wù)詳述

在所有這些任務(wù)中,用戶界面任務(wù)做的工作相對(duì)比較煩瑣。首先,根據(jù)放在Msg_Any_UI[255]中的第一個(gè)字節(jié),判斷是什么任務(wù)激活了本任務(wù)。

① 如果是摘/掛機(jī)任務(wù)激活的,再判斷第二個(gè)字節(jié)的值,根據(jù)值的不同知道是掛機(jī)還是摘機(jī)。如果是掛機(jī),就在液晶上顯示待機(jī)畫面。如果是摘機(jī),就在液晶上顯示打電話圖標(biāo)和有關(guān)的字樣,并等待鍵盤任務(wù)送來的數(shù)字鍵,將其顯示出來。(只有主動(dòng)向外打電話才顯示數(shù)字鍵,在接電話按數(shù)字鍵轉(zhuǎn)接時(shí)不顯示數(shù)字鍵。)

② 如果是振鈴任務(wù)激活的,就將Msg_Any_UI[255]中接下來的來電號(hào)碼、時(shí)間和來電圖標(biāo)顯示在液晶上。

③ 如果是鍵盤任務(wù)激活的,就根據(jù)3號(hào)任務(wù)放在Msg_Any_UI[255]中的鍵值和當(dāng)前的工作模式做不同的處理。

如果是在摘機(jī)模式下,就只是響應(yīng)數(shù)字鍵和#*鍵,并每按一個(gè)鍵就通過5號(hào)任務(wù)號(hào)碼發(fā)出去。

如果是在掛機(jī)模式下,那么,就可以響應(yīng)數(shù)字鍵和有關(guān)操作菜單的鍵(包括進(jìn)入各個(gè)子菜單的快捷鍵、上下鍵、左右鍵、返回上級(jí)菜單鍵、快速返回待機(jī)畫面的鍵、確定鍵、刪除鍵、拼音輸入法/字母輸入法/數(shù)字輸入法/短語(yǔ)輸入法切換鍵)。各個(gè)菜單是不同的狀態(tài),通過鍵值和原來的狀態(tài)可以知道現(xiàn)在該進(jìn)入什么狀態(tài)。然后根據(jù)新得到的狀態(tài),進(jìn)行相應(yīng)的液晶刷新和完成相應(yīng)的功能。比如添加、刪除、查找電話簿;添加、刪除、查找通話記錄;編輯短消息并發(fā)送出去,刪除草稿箱里的短消息;寫記事本,設(shè)置鬧鐘、時(shí)間、日期,設(shè)置信箱的密碼,設(shè)置信息中心的號(hào)碼等。

如果是在與信息中心的連接模式下,那么就可以響應(yīng)上下鍵,確定鍵(進(jìn)入下級(jí)菜單),返回上一級(jí)菜單,通過選擇返回這個(gè)選項(xiàng)來實(shí)現(xiàn)。

④如果是短消息任務(wù)激活的,就根據(jù)Msg_ Any_UI[255]中的命令碼,來確定該信息的模塊種類是信息下載管理模塊、信息上傳管理模塊、信息詢問管理模塊,或者是屏幕信息輸出管理模塊,然后,再根據(jù)Msg_Any_UI[255]中接下來的信息做相應(yīng)的處理。

⑤ 如果是時(shí)鐘任務(wù)激活的,UI任務(wù)就刷新界面上的時(shí)間、日期和星期這些信息。

4 調(diào)試環(huán)境與調(diào)試成果

此程序用EPSON公司的S1C88 C-Compiler編譯器編譯,用EPSON公司的ICE88UR 的E0C88系列在線仿真器進(jìn)行仿真。在仿真器下仿真完畢后,再脫機(jī)運(yùn)行。試驗(yàn)結(jié)果令人滿意,達(dá)到了預(yù)期的效果。

責(zé)任編輯:gt

標(biāo)簽:包頭 健身房 車展?fàn)I銷 陽(yáng)江 石家莊



收縮
  • 微信客服
  • 微信二維碼
  • 電話咨詢

  • 400-1100-266
欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品
  • <rt id="w000q"><acronym id="w000q"></acronym></rt>
  • <abbr id="w000q"></abbr>
    <rt id="w000q"></rt>
    日韩黄色小视频| 又大又长粗又爽又黄少妇视频| 91玉足脚交白嫩脚丫| 欧美亚洲国产bt| 亚洲欧美日韩在线| 成年人网站91| 青青青在线免费观看| 国产精品国产三级国产aⅴ无密码| 韩国视频一区二区| 欧美波霸videosex极品| 久久综合国产精品| 精品一区二区三区日韩| 欧美波霸videosex极品| 久久精品夜夜夜夜久久| 国产一区二区在线视频| 亚洲午夜精品久久久久久高潮| 精品久久久三级丝袜| 狠狠色丁香久久婷婷综合_中| 欧美大波大乳巨大乳| 精品国产伦理网| 国精产品一区一区三区mba视频| 少妇视频在线播放| 欧美激情艳妇裸体舞| 国产成人综合在线播放| 婷婷激情四射网| 成人免费在线观看入口| 美女又黄又免费的视频| 91麻豆精品91久久久久同性| 免费观看日韩av| 人人妻人人澡人人爽| 国产女人18水真多18精品一级做| 丰满少妇在线播放bd日韩电影| 日韩女优一区二区| 亚洲综合色视频| 性久久久久久久久久久| 精品国产免费一区二区三区香蕉| 国产精品123区| 91久久精品网| 天天色综合天天| 尤物视频最新网址| 国产精品久久久久四虎| 无码人妻少妇色欲av一区二区| 欧美二区在线观看| 激情深爱一区二区| 澳门黄色一级片| 亚洲成av人片一区二区| 免费看污片的网站| 中文字幕一区二区在线观看| 午夜性福利视频| 精品国精品国产尤物美女| 国产91丝袜在线播放九色| 欧美性猛交xxxxxx富婆| 蜜桃视频一区二区三区| 久久久久久视频| 亚洲成人7777| 欧美aaa级片| 一区二区三区加勒比av| 美女被到爽高潮视频| 中文字幕亚洲一区二区va在线| 久久久久久久人妻无码中文字幕爆| 26uuu亚洲综合色欧美| 成人国产亚洲欧美成人综合网| 欧美久久久久久久久| 国产一区二区精品在线观看| 欧美色中文字幕| 狠狠色狠狠色合久久伊人| 欧美无乱码久久久免费午夜一区| 麻豆精品在线看| 91久久香蕉国产日韩欧美9色| 麻豆精品新av中文字幕| 色八戒一区二区三区| 另类调教123区| 一本一本久久a久久精品综合麻豆| 日韩精品欧美成人高清一区二区| 多男操一女视频| 日韩电影在线观看一区| 一本色道**综合亚洲精品蜜桃冫| 日本欧美在线看| 欧美午夜精品久久久久久超碰| 韩国成人在线视频| 欧美剧在线免费观看网站| 国产99久久久久| 日韩欧美一级二级三级| 黄色片子免费看| 国产性色一区二区| 欧美bbbbb性bbbbb视频| 亚洲激情在线播放| 亚洲天堂精品一区| 日韩电影在线观看网站| 欧美亚洲综合一区| 处破女av一区二区| 久久中文字幕电影| 男女性杂交内射妇女bbwxz| 国产精品白丝在线| 69精品无码成人久久久久久| 亚洲成人www| 欧亚洲嫩模精品一区三区| 国产乱妇无码大片在线观看| 欧美一级片免费看| 超碰人人cao| 中文字幕日韩精品一区| 精品一区二区三孕妇视频| 免费精品99久久国产综合精品| 欧美日韩高清在线| 99国产精品久| 中文字幕一区二区三区四区不卡| 国产综合精品久久久久成人av| 日本强好片久久久久久aaa| 欧美精品电影在线播放| 91丨国产丨九色丨pron| 国产精品国产三级国产aⅴ原创| 精品在线观看一区| 激情五月婷婷综合| 久久视频一区二区| 国产jk精品白丝av在线观看 | 玖玖爱在线观看| 亚洲成人动漫一区| 欧美老女人第四色| 91九色蝌蚪porny| 亚洲sss视频在线视频| 欧美视频完全免费看| 99re这里只有精品首页| 中文字幕一区二区三区蜜月| 91香蕉一区二区三区在线观看| 国产美女一区二区| 国产亚洲欧美中文| 91狠狠综合久久久久久| 狠狠网亚洲精品| 国产日韩v精品一区二区| 久久视频一区二区三区| 国产成人av影院| 国产精品日产欧美久久久久| 91香蕉视频网| 成人的网站免费观看| 中文字幕亚洲精品在线观看| 色婷婷久久久久swag精品| 懂色av一区二区三区免费观看| 国产精品色哟哟| 在线观看xxx| 久久无码人妻一区二区三区| 一区二区三区av电影| 欧美日韩久久久一区| 先锋资源av在线| 日本成人在线视频网站| 亚洲精品在线观看网站| 欧美美女性生活视频| 成年人国产精品| 亚洲一区欧美一区| 日韩欧美中文字幕制服| 国产精品天天干| 国产成人精品综合在线观看| 成人免费在线观看入口| 欧美日韩国产成人在线免费| 日本免费福利视频| 精品一区二区三区香蕉蜜桃| 国产精品伦理在线| 欧美亚洲综合一区| 日本免费福利视频| 国产精品一级二级三级| 亚洲人精品一区| 欧美精品1区2区3区| 99久久久无码国产精品性| 国产成人福利片| 一区二区三区四区在线免费观看| 91精品国产色综合久久ai换脸| 中文字幕人妻一区二区三区在线视频| 国产乱妇无码大片在线观看| 亚洲美女偷拍久久| 欧美xxx久久| h色网站在线观看| 稀缺呦国内精品呦| 激情六月婷婷综合| 亚洲三级小视频| 日韩午夜在线影院| 久久福利免费视频| 男人网站在线观看| 国产剧情一区二区三区| 亚洲国产日韩a在线播放| 久久视频一区二区| 欧美图片一区二区三区| 精品欧美一区二区久久久| 99久久精品情趣| 蜜臀av一级做a爰片久久| 国产精品久久二区二区| 欧美一区2区视频在线观看| 来吧亚洲综合网| 手机免费看av片| 国产成人免费网站| 视频一区二区三区入口| 国产精品麻豆视频| 欧美成人乱码一区二区三区| 九九精品视频免费| 无套内谢大学处破女www小说| 成人av在线网站| 久草精品在线观看| 亚洲一区在线视频观看| 国产偷国产偷亚洲高清人白洁| 欧美高清视频www夜色资源网| 女性裸体视频网站| 国产福利在线观看视频|