無(wú)線wifi模塊,51單片機(jī),C語(yǔ)言程序_第1頁(yè)
無(wú)線wifi模塊,51單片機(jī),C語(yǔ)言程序_第2頁(yè)
無(wú)線wifi模塊,51單片機(jī),C語(yǔ)言程序_第3頁(yè)
無(wú)線wifi模塊,51單片機(jī),C語(yǔ)言程序_第4頁(yè)
無(wú)線wifi模塊,51單片機(jī),C語(yǔ)言程序_第5頁(yè)
已閱讀5頁(yè),還剩3頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、無(wú)線WIFI模塊ESP826解口51單片機(jī)實(shí)現(xiàn)LED燈的無(wú)線控制、關(guān)于51單片機(jī)和無(wú)線WIFI模塊的接線方面RXD、TXD、GND和51單片機(jī)的TXD、RXD、GND接好,模塊其他引腳均為高電平,電源VCC是3.3V左右(兩節(jié)1.5v干電池),本人由于沒(méi)有穩(wěn)壓模塊,偷懶了當(dāng)時(shí)使用5V的直流源,測(cè)試結(jié)果目前沒(méi)有問(wèn)題(不過(guò)不建議啊?。┒?、關(guān)于安卓手機(jī)方面測(cè)試時(shí)可以使用,網(wǎng)絡(luò)調(diào)試助手(下載這個(gè)app安裝在手機(jī)即可)發(fā)送數(shù)字1表示小燈亮,0表示燈滅。后續(xù)想深入的話可以自己開(kāi)發(fā)安卓app軟件。三、參數(shù)設(shè)置由于參數(shù)的設(shè)置方法和步奏網(wǎng)上資料很全,這里提供相關(guān)的網(wǎng)址自行參考Uart-WiFi模塊ESP8266

2、把玩記物聯(lián)網(wǎng)wifi模塊工作的STA和AP模式詳細(xì)介紹http:/www.hx-四、資料可能存在不足之處,僅作參考!/*題目:基于STC12C560S2單片機(jī)無(wú)線WIFI模塊控制內(nèi)容:通過(guò)MCU上位機(jī)對(duì)ESP8266wifi模塊的控制和設(shè)置,實(shí)現(xiàn)手機(jī)端控制LED燈的亮滅。注意:該型號(hào)單片機(jī)是普通89C51單片執(zhí)行速度的12倍,內(nèi)含RAM1280字節(jié),ROM為60K,PCA計(jì)數(shù)器,PWM發(fā)生模塊,ADC轉(zhuǎn)換模塊等,晶振一定是11.0592MHz。*/#include<reg52.h>/包含頭文件#defineuintunsignedint#defineucharunsignedcha

3、r#defineRELOAD_COUNT0xFA/宏定義波特率發(fā)生器的載入值/defineRELOAD_COUNT(256-(11520000/16)/12)/9600)也可以或波特率9600/256-晶振頻率/波特率x16=BRT/*LED燈對(duì)應(yīng)P0口的1個(gè)端口*/sbitLED0=P3A2;/*波特率發(fā)生器相關(guān)功能寄存器的定義*/sfrAUXR=0x8E;sfrBRT=0x9C;sfrAUXR1=0xA2;/*相關(guān)變量*/ucharReceive;uintn;ucharRecive_table15;用于接收wifi模塊反饋到MCU上的數(shù)據(jù)/*名稱:延時(shí)函數(shù)作用:毫秒級(jí)延時(shí),微妙級(jí)延時(shí)函數(shù),

4、為數(shù)據(jù)收發(fā)完成作等待*/voidms_delay(uintt)(一uinti,j;for(i=t;i>0;i-)for(j=110;j>0;j-);)voidus_delay(uchart)(一while(t-);)*名稱:波特率發(fā)生器函數(shù)作用:波特率發(fā)生器可以是T1定時(shí)器實(shí)現(xiàn),也可以是MCU內(nèi)部獨(dú)立的波特率發(fā)生器,各自不同的載入值計(jì)算式,具體根據(jù)寄存器相關(guān)設(shè)置來(lái)參考計(jì)算,以實(shí)現(xiàn)異步串行通訊。(經(jīng)測(cè)試,兩種設(shè)置方式均可用,可任選一種。)*/voidUart_Init()/使用定時(shí)器1作為波特率發(fā)生器(STC89C52、STC89C51、AT89C51或者STC12C560S2等均可

5、)SCON=0x50;/設(shè)置為串行口以方式1工作,8位異步通訊,允許接收中斷。一幀信息為10位,1位起始位,8位數(shù)據(jù)位(低位在先),1位停止位。PCON=0x80;/SMOD波特率選擇位為1,SMOD=1.TMOD=0x21;/設(shè)置定時(shí)器1為波特率發(fā)生器,工作在模式2,8位自動(dòng)裝載TH1=RELOAD_COUNT;/波特率9600,TH1=256-FOSC/16/12/波特率TL1=TH1;EA=1;/總中斷打開(kāi)ES=0;關(guān)閉串口中斷TR1=1;啟動(dòng)定時(shí)器1/*voidUart_Init()/使用獨(dú)立的波特率發(fā)生器(STC12C560S2或帶有獨(dú)立波特率發(fā)生器/、的單片機(jī)均可)SCON=0x5

6、0;/設(shè)置為串行口以方式1工作,8位異步通訊,允許接收中斷。PCON=0x80;/SMOD波特率選擇位為1,SMOD=1.BRT=RELOAD_COUNT;/波特率9600256-晶振頻率/波特率x16=BRTAUXR=0xD5;/T0、T1不12分頻,速度是89C51的12倍,啟動(dòng)獨(dú)立波特率發(fā)生器,每個(gè)時(shí)鐘計(jì)數(shù)一次設(shè)置串口1的波特率發(fā)生器為獨(dú)立波特率發(fā)生器,AUXR1=0x80;/切換到P1口ES=1;/開(kāi)啟串口中斷EA=1;/開(kāi)啟總中斷*/*名稱:串口發(fā)送函數(shù)WIFI模塊ESP8266)功能:MCU向其他與其連接的設(shè)備發(fā)送數(shù)據(jù)(此處是無(wú)線*/voidSend_Uart(ucharvalue

7、)(一ES=0;/關(guān)閉串口中斷TI=0;/清發(fā)送完畢中斷請(qǐng)求標(biāo)志位SBUF=value;/發(fā)送while(TI=0);/等待發(fā)送完畢TI=0;/清發(fā)送完畢中斷請(qǐng)求標(biāo)志位ES=1;/允許串口中斷/*名稱:WIFI模塊設(shè)置函數(shù)作用:?jiǎn)?dòng)模塊,以便可以實(shí)現(xiàn)無(wú)線接入和控制*/voidESP8266_Set(uchar*puf)/數(shù)組指針*puf指向字符串?dāng)?shù)組(while(*puf!='0')/遇到空格跳出循環(huán)(Send_Uart(*puf);/向WIFI模塊發(fā)送控制指令。us_delay(5);puf+;us_delay(5);Send_Uart('r');/回車us_

8、delay(5);Send_Uart('n');/換行ms_delay(1000);/*名稱:ESP8266發(fā)送數(shù)據(jù)函數(shù)功能:用于與wifi模塊相連的終端發(fā)送數(shù)據(jù)*/voidESP8266_Sent(uchar*puf)/數(shù)組指針*puf指向字符串?dāng)?shù)組(ESP8266_Set("AT+CIPSEND=0,4");while(*puf!='0')/遇到空格跳出循環(huán)(Send_Uart(*puf);/向WIFI模塊發(fā)送控制指令。us_delay(5);puf+;)us_delay(5);Send_Uart('n');/換行ms_d

9、elay(10);)一/*名稱:主函數(shù)作用:程序的執(zhí)行入口*/voidmain()LED0=0;/關(guān)閉LED燈Uart_Init();/使用獨(dú)立的波特率發(fā)生器ESP8266_Set("AT+CWMODE=2");設(shè)置路由器模式1station模式2AP/點(diǎn)路由器模式3station+AP混合模式ESP8266_Set("AT+RST");/重新啟動(dòng)wifi模塊ESP8266_Set("AT+CWSAP="WIFI","1234567890",11,4");設(shè)置模塊SSID:WIFI,PWD:密碼

10、及安全類型加密模式(WPA2-PSK)ESP8266_Set("AT+CIPMUX=1");/開(kāi)啟多連接模式,允許多個(gè)各客戶端接入ESP8266_Set("AT+CIPSERVER=1,5000");/啟動(dòng)TCP/IP端口為8080實(shí)現(xiàn)基于網(wǎng)絡(luò)/控制ES=1;允許串口中斷while(1)if(Recive_table0='+')&&(Recive_table1='I')&&(Recive_table2='P')/MCU接收到的數(shù)據(jù)為+IPD時(shí)進(jìn)入判斷控制01來(lái)使小燈亮與滅if(Recive_table3='D')&&(Recive_table6=',')if(Recive_table9='0')LED0=0;/0燈滅ESP8266_Sent("燈滅)/wifi模塊向pc端或手機(jī)端發(fā)送"燈滅)elseif(Recive_table9='1')LED0=1;/1燈亮ESP8266_Sent("燈亮)/wifi模塊向pc端或手機(jī)端發(fā)送"燈亮”*名稱:串行通訊中斷作用:發(fā)送或接收結(jié)束后進(jìn)入該函數(shù),對(duì)相應(yīng)的標(biāo)志位軟件清0,實(shí)現(xiàn)模塊對(duì)數(shù)據(jù)正常

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論