九色国产,午夜在线视频,新黄色网址,九九色综合,天天做夜夜做久久做狠狠,天天躁夜夜躁狠狠躁2021a,久久不卡一区二区三区

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
Arduino 2560 esp8266控制LED(可不用USB轉(zhuǎn)TTL)

Arduino 2560+esp8266控制LED

真的不得不記錄下這一刻,搞了好幾天的esp8266終于能點(diǎn)亮LED了,我來給大家分享下。

通常,大家買來esp8266會先接USB轉(zhuǎn)TTL用sscom42單獨(dú)調(diào)試下,但是我手頭上沒有USB轉(zhuǎn)TTL,再加上我急于求成,就把這步省略了,好在成功了,哈哈哈哈哈哈哈(建議大家先調(diào)試下,至少修改一下esp8266的波特率)

不改也行 跟著我來????

思路:用手機(jī)連接esp8266設(shè)置的WiFi,用通過手機(jī)網(wǎng)絡(luò)調(diào)試助手發(fā)送信號,控制Arduino上的LED的亮/滅

硬件
Arduino 2560 一個(gè)
esp8266 一個(gè)
LED 一個(gè)
杜邦線若干

esp8266接線


按照上圖連接Arduino和esp8266

  • CH_PD——3.3V
  • VCC————3.3V(接5V可能會燒壞)
  • GND————GND
  • RX————TX
  • TX————RX

esp8266的其余引腳懸空

LED接線

LED的長腳接Arduino的數(shù)字4號腳(代碼中設(shè)置了),短腳接GND

代碼

看了很多關(guān)于Arduino+esp8266的文章,但是對于要啥沒啥得我來說,可是把我難倒了,沒有路由器,不知道手機(jī)IP。。。怎么辦,,廢話不多說,上代碼:

int apin=4;//LED腳 void(* resetFunc) (void) = 0; //制造重啟命令 char ch[2]; void setup() { Serial.begin(115200);//開啟串口并設(shè)置波特率 Serial2.begin(115200);//開啟串口2并設(shè)置波特率 pinMode(apin,OUTPUT); digitalWrite(apin, LOW); //esp8266設(shè)置 Serial2.println('AT+RST'); //重啟 delay(2000); Serial2.println('AT+CWMODE=3'); //設(shè)置為AP & station模式 delay(1000); Serial2.println('AT+CWSAP=\'esp8266-ces\',\'123456789\',1,4');//設(shè)置WIFI delay(1000); Serial2.println('AT+CIPMUX=1'); //打開多連接 delay(1000); Serial2.println('AT+CIPMODE=1'); //透傳模式 delay(1000); Serial2.println('AT+CIPSERVER=1,8080');//開啟服務(wù)器模式,8080為端口號 delay(1000); } void loop() { // while(Serial2.available())//檢查是否至少有一個(gè)可用字符 // { Serial.write(Serial2.read()); for(int i=0;i<1;i++) //此時(shí)i只能取1位,第2位是結(jié)束符\0 { ch[i]= char(Serial2.read()); delay(10); } Serial.println(ch); if(strncmp(ch,'a',1)==0) { digitalWrite(apin, HIGH); } if(strncmp(ch,'b',1)==0) { digitalWrite(apin, LOW); } //} }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45

是不是很簡單,Serial2.println()加AT指令可以直接在Arduino程序中設(shè)置WIFI

注意

  1. esp8266和Arduino的串口波特率要相同(學(xué)長跟我說波特率最好設(shè)置成19200,所以買來8266的第一件事就是,接USB轉(zhuǎn)TTL進(jìn)行調(diào)試修改8266的波特率,我沒有調(diào)試,所以用的8266的出廠波特率,一般是115200)
  2. 代碼中Serial后的“2”表示8266連接的Arduino的串口(Arduino 2560有0、1、2、3 四組,如果是Arduino uno 可設(shè)置軟串口,我還沒有弄過,大家有興趣可以試一試)
  3. Serial2.begin()里的波特率要正確否則代碼中的esp8266設(shè)置會有問題
  4. 修改過8266波特率的同學(xué)注意,可能要加上代碼中注釋掉的那句(別忘了{(lán)})

點(diǎn)亮LED

連接好電路,將上面的代碼燒錄進(jìn)Arduino 2560中,打開手機(jī)的WLAN,找到設(shè)置的WIFI——esp8266-ces,輸入密碼進(jìn)行連接,打開網(wǎng)絡(luò)調(diào)試助手,用調(diào)試助手的tcp client功能,點(diǎn)擊增加,彈出窗口,輸入8266的IP(一般為192.168.4.1)和端口號(代碼中有設(shè)置,為8080),點(diǎn)擊增加,最后在下方對話框中輸入“a”或“b”,點(diǎn)擊發(fā)送,即可控制LED的亮/滅。

結(jié)語

以上就是我用Arduino 2560+esp8266控制LED的所有內(nèi)容,回頭看一遍,又感覺挺容易的,但是這個(gè)過程真的是太難受了,心累。。。(8266怕是我現(xiàn)在遇到的最難搞定的模塊了,特別多問號?????)

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
HC05藍(lán)牙模塊的使用
Arduino的串口通訊函數(shù)
Arduino從入門到創(chuàng)客帶師(-1)—Hello World!
SerialChart串口數(shù)據(jù)實(shí)時(shí)生成圖形 串口波形描繪
ESP 12系列arduino環(huán)境開發(fā)基礎(chǔ)
Dji TT擴(kuò)展件與TT使用USB端串口通訊.下
更多類似文章 >>
生活服務(wù)
熱點(diǎn)新聞
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服