<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è) > 嵌入式系統 > 設計應用 > 基于PIC32的無(wú)線(xiàn)自助點(diǎn)菜系統的實(shí)現,包含原理圖及

基于PIC32的無(wú)線(xiàn)自助點(diǎn)菜系統的實(shí)現,包含原理圖及

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

2)最具性?xún)r(jià)比的ZigBee技術(shù)

一般而言,隨著(zhù)通信距離的增大,設備的復雜性、功耗以及系統成本都在增加。相對于現有的各種無(wú)線(xiàn)通信技術(shù),ZigBee技術(shù)是最低功耗和成本的技術(shù)。ZigBee技術(shù)也存在著(zhù)自身的缺點(diǎn),該技術(shù)的數據速率比較低和通信范圍較小。但由于本系統所承載數據流量較小,所以ZigBee就非常適合,具有最佳的性?xún)r(jià)比。

3)Cerebot 32MX4豐富的外設接口

本課題所使用的Digilent Cerebot™ 32MX4開(kāi)發(fā)板是一個(gè)功能強大的微控制器開(kāi)發(fā)板,它擁有九個(gè)Digilent Pmod™外圍模塊連接器。本課題需要用到的Digilent Pmod模塊有按鍵開(kāi)關(guān)、字符LCD、以及SD卡插槽,開(kāi)發(fā)板還可以用來(lái)連接H-bridge驅動(dòng)、模數和數模轉換器、蜂鳴器、滑動(dòng)開(kāi)關(guān)、LED指示燈等,其提供了豐富的外設資源。

3.軟件流程介紹

3.1無(wú)線(xiàn)網(wǎng)絡(luò )軟件設計

系統中通過(guò)簡(jiǎn)單的無(wú)線(xiàn)星型網(wǎng)絡(luò )實(shí)現了前臺的PC機和PIC32點(diǎn)菜節點(diǎn)的雙向通信。無(wú)線(xiàn)網(wǎng)絡(luò )系統初始化時(shí)將各節點(diǎn)的通信頻率固定在2.48G頻點(diǎn)上,通過(guò)中心節點(diǎn)輪詢(xún)各子節點(diǎn)的方式時(shí)分復用實(shí)現組網(wǎng)及雙向通信。

中心節點(diǎn)和子節點(diǎn)的CC2430均通過(guò)中斷接收串口數據與無(wú)線(xiàn)傳輸的數據。如果PC機通過(guò)串口向中心節點(diǎn)發(fā)送數據,則中心節點(diǎn)首先解析數據包(33個(gè)字節,首字節為地址,其余為數據),并根據地址設置相應的節點(diǎn)標志位。當中心節點(diǎn)對子節點(diǎn)進(jìn)行詢(xún)問(wèn)時(shí)首先查詢(xún)該節點(diǎn)的標志位,若沒(méi)有數據傳輸則將發(fā)送數據報首位設置為DATA_REQ(0x0F),表明該數據報沒(méi)有數據內容;若有數據傳輸則將發(fā)送數據報首位設置為DATA_TRANS(0xF0),表明該數據報有數據內容。傳輸結束后中心節點(diǎn)進(jìn)入接收狀態(tài),接收子節點(diǎn)回傳的數據報。接收到的數據報首位為ACK_NO_DATA(0x30)表明數據報中沒(méi)有數據內容,中心節點(diǎn)不作處理;若數據報首位為ACK_WITH_DATA(0x33),則將子節點(diǎn)號和數據內容通過(guò)串口傳給PC機,接開(kāi)始新的詢(xún)問(wèn)操作。若中心節點(diǎn)沒(méi)有收到相應的回傳數據報,則中心節點(diǎn)會(huì )重復詢(xún)問(wèn)子節點(diǎn),重復詢(xún)問(wèn)最高次數為3次。中心節點(diǎn)通過(guò)對子節點(diǎn)地址進(jìn)行計數實(shí)現對各個(gè)子節點(diǎn)的輪詢(xún)。

子節點(diǎn)的無(wú)線(xiàn)模塊一般處于接收狀態(tài),當接收到數據報時(shí)首先解析數據報的目的地址字節,若目的地址和自身地址不匹配則不作處理;若目的地址和自身地址匹配則對接收到的數據報進(jìn)行解析,若包頭為DATA_TRANS(0xF0)則將數據內容傳給終端的PIC32系統,接著(zhù)查詢(xún)串口標志位(子節點(diǎn)串口中斷接收程序在接受到PIC32發(fā)送的數據后設置串口標志位),若有數據發(fā)送則將數據報首位置為ACK_WITH_DATA(0x33),并將其和數據內容一起回傳給中心節點(diǎn);若沒(méi)有數據發(fā)送則首位標志置為ACK_NO_DATA(0x30)。

3.2前臺人機交互界面設計

點(diǎn)菜系統的前臺需要構建操作友好的人機交互界面,考慮到CC2430中心節點(diǎn)板的串口模塊可直接將接收到的數據與上位機通信,選用VC搭建該界面。VC提供了MSComm(microsoft communications control)控件,通過(guò)串行口進(jìn)行數據傳輸和接收,為應用程序提供串行通信功能。MSComm控件通信功能的實(shí)現實(shí)際上是調用了API函數,而API函數是由Comm.drv解釋并傳遞給設備驅動(dòng)程序進(jìn)行的,即MSComm控件的屬性提供了通信接口的參數設置,能實(shí)現串行通信。

終端與前臺通信遵循一定的協(xié)議格式,頭一個(gè)字節是節點(diǎn)號(即就餐桌號),緊接著(zhù)兩個(gè)字節是傳輸命令,最后才是所傳輸的內容。終端傳到前臺的命令共有5類(lèi):傳送菜單(MENU_CMD)、催菜(HUSH_CMD)、加菜(ADD_CMD)、菜單狀態(tài)(STATE_CMD)和結賬(CHECK_CMD);前臺傳回的命令有兩類(lèi):操作成功(OK_CMD)和操作失敗(NO_CMD)。


上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞:

評論


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