




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
技能操作實(shí)務(wù)模塊四:智慧商超應(yīng)用軟件開發(fā)*TRANSITIONPAGE過渡頁無線串口通信本章簡介1、basicRF串口介紹2、實(shí)驗(yàn)3、拓展題1、basicRF串口介紹串口介紹?串口就是RS232接口串口重要性?1、basicRF串口介紹如何通過basicRF操作的串口?串口數(shù)據(jù)接收:
通過調(diào)用halUartRxLen()函數(shù)來判斷是否有數(shù)據(jù),調(diào)用halUartRead()來接收數(shù)據(jù),并返回接收到的數(shù)據(jù)長度。串口數(shù)據(jù)發(fā)送:
通過創(chuàng)建一個(gè)buffer,把數(shù)據(jù)放入其中,然后調(diào)用halUartWrite()函數(shù)發(fā)送數(shù)據(jù)。1、接收串口數(shù)據(jù)len=RecvUartData(); //通過調(diào)用函數(shù)獲取數(shù)據(jù)if(len>0) //判斷是否收到數(shù)據(jù){halLedToggle(3);//收到數(shù)據(jù)是,綠燈取反2、把串口數(shù)據(jù)通過zigbee發(fā)送出去basicRfSendPacket(SEND_ADDR,uRxData,len); //將接收的數(shù)據(jù)發(fā)送出去
}串口數(shù)據(jù)接收:1、basicRF介紹如何通過basicRF操作的串口?1、判斷是否接收到信號(hào)if(basicRfPacketIsReady())//查詢有沒收到無線信號(hào){halLedToggle(4); //紅燈取反,無線接收指示2、接收無線數(shù)據(jù)len=basicRfReceive(pRxData,MAX_RECV_BUF_LEN,NULL);3、接收到的無線發(fā)送到串口數(shù)halUartWrite(pRxData,len);}串口數(shù)據(jù)接收:
通過調(diào)用RecvUartDate()函數(shù)來接收數(shù)據(jù),并以數(shù)據(jù)長度來判斷是否有收到數(shù)據(jù)。串口數(shù)據(jù)發(fā)送:
通過創(chuàng)建一個(gè)buffer,把數(shù)據(jù)放入其中,然后調(diào)用halUartWrite()函數(shù)發(fā)送數(shù)據(jù)。2、實(shí)驗(yàn)用2個(gè)ZigBee模塊,將2個(gè)zigbee分別和PC機(jī)相連,打開串口調(diào)試工具,實(shí)現(xiàn)2個(gè)zigbee互相通信。設(shè)置波特率38400bps。實(shí)驗(yàn)內(nèi)容:2、實(shí)驗(yàn)實(shí)驗(yàn)內(nèi)容:2、實(shí)驗(yàn)第一步,新建工程和程序文件1、復(fù)制庫文件。將CC2530_lib文件夾復(fù)制到該任務(wù)的工程文件夾內(nèi),即“D:\zigbee\任務(wù)2.2無線串口通信”內(nèi)(可以放在其它盤內(nèi))。并在該工程文件夾內(nèi)新建一個(gè)Project文件夾,用于存放工程文件。2、新建工程。具體方法參照實(shí)訓(xùn)1。并在工程中新建App、basicrf、board(板)、common(常見的)、utils(實(shí)用工具)等5個(gè)組,把各文件夾中的“xx.c”文件添加到對(duì)應(yīng)的文件夾中。3、新建程序文件。新源程序文件,將其命名為uartRF.c,保存在D:\zigbee\任務(wù)2.2無線串口通信\Project文件夾中。并將該文件添加到工程中的App文件夾中。實(shí)驗(yàn)步驟:2、實(shí)驗(yàn)實(shí)驗(yàn)環(huán)境配置:注意:$PROJ_DIR$\表示你當(dāng)前工作的workspace的目錄。..\表示對(duì)應(yīng)目錄的上一層。打開工程Options對(duì)話框,選擇“C/C++Compiler”,選擇“Preproce(預(yù)處理器)”選項(xiàng)卡,并在“additionalincludedirectories(附加包括目錄):”中輸入頭文件的路徑,然后點(diǎn)擊【OK】。第二步,添加頭文件。2、實(shí)驗(yàn)第三步,關(guān)鍵代碼講解。#include"hal_defs.h"http://通用定義,uint8、uint16用到該頭文件#include"basic_rf.h"http://basicRfCfg_t使用#include"hal_led.h"http://使用到led的相關(guān)操作#include"hal_uart.h"http://需要用到串口函數(shù)#include"hal_cc8051.h"http://IO口的定義使用#include"hal_int.h"http://中斷函數(shù)庫定義,這里沒用到#include"hal_mcu.h"http://cpu初始化使用,如工作頻率,延時(shí)等#include"hal_board.h"http://模塊板的相關(guān)設(shè)置(如led燈,按鍵等等)#include"hal_rf.h"http://無線函數(shù)庫定義,這里沒用到#include<stdio.h>//標(biāo)準(zhǔn)輸入輸出函數(shù)時(shí),如printf、scanf,這里沒用到#include<string.h>//字符串操作使用,這里沒用到#include<stdarg.h>//主要目的為讓函數(shù)能夠接收可變參數(shù),這里沒用到1、頭文件,平時(shí)常用的一些頭文件這4個(gè)頭文件本實(shí)驗(yàn)必須添加,其它可以不用添加2、實(shí)驗(yàn)第三步,關(guān)鍵代碼講解。uint16RecvUartData(void){uint16r_UartLen=0;uint8r_UartBuf[128];//用于存放數(shù)據(jù)
uRxlen=0;r_UartLen=halUartRxLen();//返回串口接收緩沖區(qū)中的字節(jié)數(shù)。
while(r_UartLen>0)//如果緩沖區(qū)中有數(shù)據(jù)
{r_UartLen=halUartRead(r_UartBuf,sizeof(r_UartBuf));//讀取串口數(shù)據(jù),
MyByteCopy(uRxData,uRxlen,r_UartBuf,0,r_UartLen);uRxlen+=r_UartLen;halMcuWaitMs(5);//非常重要,串口連續(xù)讀取數(shù)據(jù)時(shí)需有一定的間隔
r_UartLen=halUartRxLen();}returnuRxlen;}2、讀取串口數(shù)據(jù)2、實(shí)驗(yàn)第三步,關(guān)鍵代碼講解。voidMyByteCopy(uint8*dst,intdststart,uint8*src,intsrcstart,intlen){inti; //定義一個(gè)變量for(i=0;i<len;i++)//循環(huán){*(dst+dststart+i)=*(src+srcstart+i);//將原地址中的數(shù)復(fù)制到目的地址中//dst[dststart+i]=src[srcstart+i];//上述代碼這樣寫也可以}}3、數(shù)據(jù)復(fù)制,將原地址中的數(shù)據(jù)復(fù)制到目的地址中2、實(shí)驗(yàn)開始實(shí)驗(yàn)。。。。。。3、拓展題拓展題1兩個(gè)zigbee互相通信,按下1號(hào)zigbee的按鍵SW1時(shí),2號(hào)zigbee的燈全部亮,同時(shí)從串口輸出一串?dāng)?shù)據(jù)“zigbee2”。1、設(shè)時(shí)鐘為32MHz(無線發(fā)送需要32MHz的頻率)
CLKCONCMD&=0X80;2、等待時(shí)鐘32MHz生效
clkconcmd=CLKCONCMD; do { clkconsta=CLKCONSTA;
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- DB3707T 135-2025 大蔥三系雜交制種技術(shù)規(guī)程
- 楚雄州統(tǒng)測數(shù)學(xué)試卷
- 海南優(yōu)騰愛科醫(yī)療科技有限公司醫(yī)療器械研發(fā)生產(chǎn)環(huán)評(píng)報(bào)告表
- 運(yùn)動(dòng)解剖學(xué)試題冊(cè)答案全套
- 協(xié)同推進(jìn)降碳減污擴(kuò)綠增長的背景與意義
- 完善基層衛(wèi)生服務(wù)網(wǎng)絡(luò)建設(shè)的策略及實(shí)施路徑
- 國內(nèi)外醫(yī)療機(jī)構(gòu)水污染物排放現(xiàn)狀
- 低空經(jīng)濟(jì)發(fā)展趨勢與前景
- 促進(jìn)醫(yī)療服務(wù)的公平性的策略及實(shí)施路徑
- 四級(jí)人力資源管理師-上半人力(四級(jí))《基礎(chǔ)知識(shí)》黑鉆押題4
- 2025屆高考作文素材積累專題(春晚、哪吒2、deepseek)課件
- 色卡-CBCC中國建筑標(biāo)準(zhǔn)色卡(千色卡1026色)
- 《魏書生班主任工作漫談》讀書心得體會(huì)課件
- 切紙機(jī)說明書-原稿
- 中國國際航空公司VI形象識(shí)別規(guī)劃提案
- 江蘇企業(yè)投資項(xiàng)目備案申請(qǐng)表樣表
- 三菱PLC模擬量模塊fx2n4da中文手冊(cè)
- 金屬材料工程課程設(shè)計(jì)
- 學(xué)校突發(fā)公共衛(wèi)生事件應(yīng)急處置.ppt
- 學(xué)生課堂表現(xiàn)評(píng)價(jià)量表(20211208204532)
- 4K超高清電視在傳統(tǒng)播出中面臨的問題及系統(tǒng)建設(shè)規(guī)劃探討
評(píng)論
0/150
提交評(píng)論