



下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
[實驗項目]:ZigBee線通信[實驗?zāi)康腯:探究基于ZigBee試驗板與Z-Stack的按鍵試驗[實驗儀器設(shè)備]:一塊ZigBee實驗板、桌面電腦[實驗原理]:基于IEEE802.15無線通信協(xié)議的無線試驗[設(shè)計內(nèi)容]:探究基于ZigBee試驗板與Z-Stack的按鍵與液晶屏顯示試驗[設(shè)計思路]:說明: 首先觀察實驗板,總共有5個可見的按鍵(keys),其中一個是所謂的搖 桿,即程序里注釋的joy-stick,它又可以代表5個鍵,總共加起來就有9 個實際按鍵,除去兩個復(fù)位鍵,我們可以支配可用的就有7個,但去分 析程序(SampleApp.C)時,只有兩(HAL_KEY_SW_1、HAL_KEY_SW_2) 個按鍵被應(yīng)用上了,其余都沒用上,去看hal_key.H時,有七個按鍵 可用,與以上分析吻合,那么可不可以利用上它們呢?以下是我設(shè)計的 驗證這些按鍵的實驗。思路: 照著模版程序里對按鍵事件的處理程序添加自己想探究的按鍵的處理程 序。[實驗步驟與方法]:查看hal_key.H,確定可用的按鍵,即觀察定義了那些按鍵消息在本Z-Stack模版程序里,其定義如下:/*Switches(keys)*/#defineHAL_KEY_SW_10x01//Joystickup#defineHAL_KEY_SW_20x02//Joystickright#defineHAL_KEY_SW_50x04//Joystickcenter#defineHAL_KEY_SW_40x08//Joystickleft#defineHAL_KEY_SW_30x10//Joystickdown#defineHAL_KEY_SW_60x20//ButtonS1ifavailable#defineHAL_KEY_SW_70x40//ButtonS2ifavailable/*Joystick*/#defineHAL_KEY_UP0x01//Joystickup#defineHAL_KEY_RIGHT0x02//Joystickright#defineHAL_KEY_CENTER0x04//Joystickcenter#defineHAL_KEY_LEFT0x08//Joystickleft#defineHAL_KEY_DOWN0x10//Joystickdown我們可以看到,一共有七個按鍵被定義了,Joystick其實被包含于Switches(keys)。LCD顯示函數(shù)位于hal_lcd.h中,有以下:voidHalLcdWriteString(char*str,uint8option);voidHalLcdWriteValue(uint32value,constuint8radix,uint8option);voidHalLcdWriteScreen(char*line1,char*line2);voidHalLcdWriteStringValue(char*title,uint16value,uint8format,uint8line);voidHalLcdWriteStringValueValue(char*title,uint16value1,uint8format1,uint16value2,uint8format2,uint8line);voidHalLcdDisplayPercentBar(char*title,uint8value);五個函數(shù),這里我們使用HalLcdWriteString()函數(shù),*str是要顯示的字符串,option查看宏定義可知是要顯示位置(第幾行)。三、添加按鍵處理消息,在SampleApp.c里找到按鍵消息處理函數(shù),即voidSampleApp_HandleKeys(uint8shift,uint8keys),再照著其中已有的按鍵處理程序段,添加自己想驗證的按鍵,在這里,我添加了HAL_KEY_SW_3HAL_KEY_SW_4HAL_KEY_SW_5也即是HAL_KEY_CENTERHAL_KEY_LEFTHAL_KEY_DOWN的處理代碼,其代碼為if(keys&HAL_KEY_SW_3)//按鍵3按下{ //調(diào)用LCD輸出函數(shù)在LCD上顯示SW_3ispressedHalLcdWriteString("SW_3is",HAL_LCD_LINE_1);HalLcdWriteString("pressed",HAL_LCD_LINE_2);}if(keys&HAL_KEY_SW_4)//按鍵4按下{//調(diào)用LCD輸出函數(shù)在LCD上顯示SW_4ispressedHalLcdWriteString("SW_4is",HAL_LCD_LINE_1);HalLcdWriteString("pressed",HAL_LCD_LINE_2);}if(keys&HAL_KEY_SW_5)//按鍵5按下{//調(diào)用LCD輸出函數(shù)在LCD上顯示SW_5ispressedHalLcdWriteString("SW_5is",HAL_LCD_LINE_1);HalLcdWriteString("pressed",HAL_LCD_LINE_2);}代碼解釋:在次試驗,按鍵功能被定義為:當(dāng)按鍵被按下,相應(yīng)在LCD上顯示提示,比較直觀的演示了按鍵事件的響應(yīng)處理,要實現(xiàn)其它功能,只需在相應(yīng)的消息處填寫代碼即可。四.連接好試驗板,在IAR下正確設(shè)置DEBUG編譯等選項,選擇Project->Debug進(jìn)行編譯仿真,若不需要仿真,退出Debug,實驗板復(fù)位,進(jìn)行接下來的實驗。[實驗記錄]:當(dāng)實驗板復(fù)位后,SoC開始執(zhí)行指令,SoC先是進(jìn)行初始化,等初始化完成之后,我們就可以做以上修改的代碼實驗了。試驗時,joystick往下掰,即key3,LCD上分兩行顯示SW_3ispressed。joystick往左掰,即key4,LCD上分兩行顯示SW_4ispressed。按joystick中鍵,即key5,LCD上分兩行顯示SW_5ispressed。[實驗結(jié)論]:實驗結(jié)果與
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 存儲場地租賃服務(wù)合同
- 校園保安合同的補(bǔ)充協(xié)議
- 網(wǎng)約租車合同協(xié)議書
- 和合同解協(xié)議
- 光伏項目協(xié)議書合同模板
- 婚前彩禮合同協(xié)議
- 房地產(chǎn)中介合同協(xié)議
- 智慧旅游合同協(xié)議
- 股東投資協(xié)議合同
- 合同出借協(xié)議
- 品牌總監(jiān)的面試題及答案
- 貴州高品質(zhì)住宅設(shè)計導(dǎo)則
- 裝修公司設(shè)計經(jīng)理述職報告
- 水電配電箱知識培訓(xùn)課件
- 初中所有數(shù)學(xué)公式大全
- 多感知融合的智能垃圾識別分揀實驗系統(tǒng)設(shè)計
- 【珍藏版】魯教版初中英語全部單詞表(帶音標(biāo)、按單元順序)
- 9《小水滴的訴說》(教學(xué)設(shè)計)-2023-2024學(xué)年統(tǒng)編版道德與法治二年級下冊
- 電力設(shè)施災(zāi)害應(yīng)急響應(yīng)與救援技術(shù)
- 2025年安徽合肥興泰金融控股集團(tuán)招聘筆試參考題庫含答案解析
- 2025年駕校安全生產(chǎn)工作計劃
評論
0/150
提交評論