1
Tài liệu biên soạn bởi Phi Nguyen và một số tài liệu được tham khảo từ arduino.cc và cộng đồng arduino
Web: tdhshop.com.vn
Email:
hotline: 0395 304 802
2
Mục Lục
IOT ( Internet Of Things ) ................................................................................................... 6
I.
Khái niệm Internet Of Things ( IOT) là gì?. ................................................................. 6
1. Khái niệm IOT........................................................................................................... 6
2. Những ứng dụng thực tế trong cuộc sống ................................................................. 6
3. ESP8266 dòng chip được sử dụng phổ biến nhất hiện nay trong IOT. ..................... 7
4. Module và Board phát triển của ESP8266. ............................................................... 8
5. Giới thiệu về module ESP 12E( NodeMCU V1). .................................................... 9
6. Lập trình ESP 12E bằng Arduino IDE. ................................................................... 10
Giới thiệu về ESP826612E: ........................................................................................ 10
Chuẩn bị phần cứng: ................................................................................................... 10
Cài đặt phần mềm arduino IDE và thư viện cho esp8266. ......................................... 10
Hướng dẫn nạp chương trình cho ESP8266 12E: ....................................................... 13
Hình ảnh thực tế:......................................................................................................... 14
II. Bài học mẫu ứng dụng lập trình esp8266: .................................................................. 15
1. Lập trình điều khiển ESP8266 12E bằng Arduino IDE. ......................................... 15
Giới thiệu về ESP826612E: ........................................................................................ 15
Chuẩn bị phần cứng: ................................................................................................... 15
Cài đặt phần mềm arduino IDE và thư viện cho esp8266. ......................................... 15
Hướng dẫn nạp chương trình cho ESP8266 12E: ....................................................... 18
Hình ảnh thực tế:......................................................................................................... 19
2. Bật tắt led theo ý muốn bằng esp8266 12E. ............................................................ 19
Chuẩn bị phần cứng: ................................................................................................... 19
Lắp mạch: ................................................................................................................... 20
Lập trình:..................................................................................................................... 20
Hình ảnh thực tế:......................................................................................................... 20
3. Bật tắt led bằng nút nhấn ( không lưu trạng thái). ................................................... 21
Chuẩn bị phần cứng: ................................................................................................... 21
Lắp mạch: ................................................................................................................... 21
Tài liệu biên soạn bởi Phi Nguyen và một số tài liệu được tham khảo từ arduino.cc và cộng đồng arduino
Web: tdhshop.com.vn
Email:
hotline: 0395 304 802
3
Lập trình:..................................................................................................................... 22
Hình ảnh thực tế:......................................................................................................... 22
4. Bật tắt led bằng nút nhấn (lưu trạng thái). ............................................................... 23
Chuẩn bị phần cứng: ................................................................................................... 23
Lắp mạch: ................................................................................................................... 23
Lập trình:..................................................................................................................... 24
Hình ảnh thực tế:......................................................................................................... 25
5. Điều khiển relay bằng Esp8266 V_12E. ................................................................. 25
Chuẩn bị phần cứng: ................................................................................................... 25
Lắp mạch: ................................................................................................................... 25
Lập trình:..................................................................................................................... 26
Hình ảnh thực tế:......................................................................................................... 26
6. Hiển thị lên màn hình LCD bằng ESP8266 12E. .................................................... 26
Chuẩn bị phần cứng: ................................................................................................... 26
Lắp mạch: ................................................................................................................... 27
Lập trình:..................................................................................................................... 27
Hình ảnh thực tế:......................................................................................................... 27
7. Đọc giá trị cảm biến nhiệt độ LM35 và gửi lên thingspeak. ................................... 28
Chuẩn bị phần cứng: ................................................................................................... 29
Phần mềm : ................................................................................................................. 29
Cài đặt trên thingspeak: .............................................................................................. 29
Lắp mạch: ................................................................................................................... 31
Lập trình:..................................................................................................................... 31
Sau khi upload code ta mở cổng serial monitor và thingspeak: ................................. 32
8. Điều khiển thiết bị điện bằng webserver. ................................................................ 33
Chuẩn bị phần cứng: ................................................................................................... 33
Phần mềm : ................................................................................................................. 33
Lắp mạch: ................................................................................................................... 33
Lập trình:..................................................................................................................... 34
Tài liệu biên soạn bởi Phi Nguyen và một số tài liệu được tham khảo từ arduino.cc và cộng đồng arduino
Web: tdhshop.com.vn
Email:
hotline: 0395 304 802
4
Hình ảnh thực tế:......................................................................................................... 39
9. Điều khiển thiết bị điện bằng wifi và app MIT invertor. ........................................ 40
Phần mền cần chuẩn bị ............................................................................................... 40
Phần cứng cần chuẩn bị: ............................................................................................. 40
Lắp mạch: ................................................................................................................... 41
Code chương trình: ..................................................................................................... 41
Cài đặt app cho điện thoại ( Andriod): ....................................................................... 46
Hình ảnh thực tế:......................................................................................................... 46
10.
Điều khiển thiết bị điện bằng Nodemcu( esp8266 12E) và app Blynk. .............. 47
Phần mền cần chuẩn bị ............................................................................................... 47
Phần cứng cần chuẩn bị: ............................................................................................. 47
Lắp mạch: ................................................................................................................... 47
Code chương trình: ..................................................................................................... 48
Các bước thực hiện như sau:....................................................................................... 49
Hình ảnh thực tế:......................................................................................................... 52
11.
Hiển thị màn hình OLED với Nodemcu( esp8266 12E)...................................... 53
Phần mền cần chuẩn bị ............................................................................................... 53
Phần cứng cần chuẩn bị: ............................................................................................. 53
Lắp mạch: ................................................................................................................... 53
Code chương trình: ..................................................................................................... 53
12. Gửi thơng báo về điện thoại khi có trộm bằng cảm biến chuyển động sử dụng
board NodeMCU và app BLYNK. ................................................................................ 54
Mục tiêu: ..................................................................................................................... 54
Phần mền cần chuẩn bị ............................................................................................... 54
Phần cứng cần chuẩn bị: ............................................................................................. 54
Lắp mạch nguyên lý:................................................................................................... 54
Code chương trình: ..................................................................................................... 55
Cài app blynk cho điện thoại: ..................................................................................... 56
13.
Điều khiển LED ma trận Max7219 với module WIFI NodeMCU. .................... 60
Tài liệu biên soạn bởi Phi Nguyen và một số tài liệu được tham khảo từ arduino.cc và cộng đồng arduino
Web: tdhshop.com.vn
Email:
hotline: 0395 304 802
5
Mục tiêu: ..................................................................................................................... 60
Phần mền cần chuẩn bị ............................................................................................... 60
Phần cứng cần chuẩn bị: ............................................................................................. 60
Lắp mạch nguyên lý:................................................................................................... 61
Code chương trình: ..................................................................................................... 61
Hình ảnh thực tế:......................................................................................................... 64
14. Đọc giá trị nhiệt độ, độ ẩm hiển thị lên màn hình oled 0.96” và blynk sử dụng
board NodeMCU. ........................................................................................................... 65
Mục tiêu: ..................................................................................................................... 65
Phần mền cần chuẩn bị ............................................................................................... 65
Phần cứng cần chuẩn bị: ............................................................................................. 65
Lắp mạch nguyên lý:................................................................................................... 65
Code chương trình: ..................................................................................................... 66
Cài đặt app Blynk: ...................................................................................................... 68
Hình ảnh thực tế:......................................................................................................... 72
15.
Thiết kế xe robot 4 bánh điều khiển bằng sóng Wifi ( nodemcu ). ..................... 72
Mục tiêu: ..................................................................................................................... 72
Phần mền cần chuẩn bị ............................................................................................... 72
Phần cứng cần chuẩn bị: ............................................................................................. 72
Lắp mạch ngun lý:................................................................................................... 73
Lắp mơ hình: ............................................................................................................... 73
Tài liệu biên soạn bởi Phi Nguyen và một số tài liệu được tham khảo từ arduino.cc và cộng đồng arduino
Web: tdhshop.com.vn
Email:
hotline: 0395 304 802
6
IOT ( Internet Of Things )
I.
Khái niệm Internet Of Things ( IOT) là gì?.
1. Khái niệm IOT
Internet of Things (IoT) - Mạng lưới vạn vật kết nối Internet là một kịch bản
của thế giới, khi mà mỗi đồ vật, con người được cung cấp một định danh của riêng
mình, và tất cả có khả năng truyền tải, trao đổi thơng tin, dữ liệu qua một mạng
duy nhất mà không cần đến sự tương tác trực tiếp giữa người với người, hay người
với máy tính. IoT đã phát triển từ sự hội tụ của công nghệ không dây, công nghệ vi
cơ điện tử và Internet. Nói đơn giản là một tập hợp các thiết bị có khả năng kết nối
với nhau, với Internet và với thế giới bên ngoài để thực hiện một cơng việc nào
đó. ( Wikipedia).
Hiểu đơn giản, IoT có thể khiến mọi vật giờ đây có thể giao tiếp với nhau dễ dàng
hơn và ưu điểm lớn nhất của “Thơng minh” là khả năng phịng ngừa và cảnh báo tại
bất kì đâu.
2. Những ứng dụng thực tế trong cuộc sống
Những ứng dụng của IoT vào các lĩnh vực trong đời sống là vô cùng phong phú và
đa dạng. Chúng ta sẽ cùng điểm qua một số ứng dụng điển hình của IoT:
Smart Home - Theo thống kê, smart home là ứng dụng liên quan đến IoT được
tìm kiếm nhiều nhất trên Google. Smart Home là 1 ngôi nhà với rất nhiều tính
năng tự động như bật máy điều khơng khí khi bạn sắp về tới nhà, tắt đèn ngay khi
bạn rời khỏi nhà, mở khóa khi người thân trong gia đình đang ở cửa nhà, mở
garage khi bạn lái xe đi làm về … còn rất nhiều những tính năng giúp nâng cao
chất lượng cuộc sống khi sử dụng smart home.
Tài liệu biên soạn bởi Phi Nguyen và một số tài liệu được tham khảo từ arduino.cc và cộng đồng arduino
Web: tdhshop.com.vn
Email:
hotline: 0395 304 802
7
Vật dụng mang theo trên người - Có thể kể đến một số thiết bị như Dashbon
Mask, đây là 1 chiếc smart headphone giúp bạn vừa có thể nghe nhạc với âm
thanh có độ trung thực cao vừa có thể xem phim HD với máy chiếu ảo ,
hoặc AMPL SmartBag ba lơ có pin dự phịng có thể sạc điện cho các thiết bị di
động, kể cả máy tính.
3. ESP8266 dòng chip được sử dụng phổ biến nhất hiện nay trong IOT.
ESP8266 là dịng chip tích hợp Wi-Fi 2.4Ghz có thể lập trình được, rẻ tiền được
sản xuất bởi một công ty bán dẫn Trung Quốc: Espressif Systems. Được phát hành
đầu tiên vào tháng 8 năm 2014, đóng gói đưa ra thị trường dạng
Mô dun ESP-01, được sản xuất bởi bên thứ 3: AI-Thinker. Có khả năng kết nối
Internet qua mạng Wi-Fi một cách nhanh chóng và sử dụng rất ít linh kiện đi kèm.
Với giá cả có thể nói là rất rẻ so với tính năng và khả năng ESP8266 có thể làm
được. ESP8266 có một cộng đồng các nhà phát triển trên thế giới rất lớn, cung cấp
nhiều Module lập trình mã nguồn mở giúp nhiều người có thể tiếp cận và xây dựng
ứng dụng rất nhanh. Hiện nay tất cả các dòng chip ESP8266 trên thị trường đều
mang nhãn ESP8266EX, là phiên bản nâng cấp của ESP8266
Tài liệu biên soạn bởi Phi Nguyen và một số tài liệu được tham khảo từ arduino.cc và cộng đồng arduino
Web: tdhshop.com.vn
Email:
hotline: 0395 304 802
8
4. Module và Board phát triển của ESP8266.
ESP8266 cần một số linh kiện nữa mới có thể hoạt động, trong đó phần khó nhất
là Anten. Địi hỏi phải được sản xuất, kiểm tra với các thiết bị hiện đại. Do đó, trên
thị trường xuất hiện nhiều Module và Board mạch phát triển đảm đương hết để người
dùng đơn giản nhất trong việc phát triển ứng dụng. Một số Module và Board phát
triển phổ biến:
Hiện nay phiên bản sử dụng phổ biến nhất là ESP8266 12E.
Tài liệu biên soạn bởi Phi Nguyen và một số tài liệu được tham khảo từ arduino.cc và cộng đồng arduino
Web: tdhshop.com.vn
Email:
hotline: 0395 304 802
9
5. Giới thiệu về module ESP 12E( NodeMCU V1).
NodeMCU v1.0 Lua - ESP8266 ESP12E
Sơ đồ chân của ESP12E
NodeMCU V1.0 được phát triển dựa trên Chip WiFi ESP8266EX bên trong
Module ESP-12E dễ dàng kết nối WiFi với một vài thao tác. Board cịn tích hợp IC
CP2102, giúp dễ dàng giao tiếp với máy tính thơng qua Micro USB để thao tác với
board. Và có sẳn nút nhấn, led để tiện qua q trình học, nghiên cứu.
Với kích thước nhỏ gọn, linh hoạt board dễ dàng liên kết với các thiết bị ngoại vi
để tạo thành project, sản phẩm mẫu một cách nhanh chóng.
Thơng số kỹ thuật:
Chip: ESP8266EX
WiFi: 2.4 GHz hỗ trợ chuẩn 802.11 b/g/n
Điện áp hoạt động: 3.3V
Điện áp vào: 5V thông qua cổng USB
Số chân I/O: 11 (tất cả các chân I/O đều có Interrupt/PWM/I2C/One-wire,
trừ chân D0)
Số chân Analog Input: 1 (điện áp vào tối đa 3.3V)
Bộ nhớ Flash: 4MB
Giao tiếp: Cable Micro USB
Hỗ trợ bảo mật: WPA/WPA2
Tài liệu biên soạn bởi Phi Nguyen và một số tài liệu được tham khảo từ arduino.cc và cộng đồng arduino
Web: tdhshop.com.vn
Email:
hotline: 0395 304 802
10
Tích hợp giao thức TCP/IP
Lập trình trên các ngơn ngữ: C/C++, Micropython, NodeMCU - Lua
6. Lập trình ESP 12E bằng Arduino IDE.
Giới thiệu về ESP826612E:
Để bắt đầu với những dự án Wifi các bạn cần ESP8266 với giá thành rẻ, và dễ dàng sử
dụng. Đặc biệt ESP8266 12E có thể được lập trình bằng Arduino IDE. Trước khi bắt đầu
những chuỗi dự án với ESP8266, ở bài viết này, mình sẽ chia sẻ cách cài đặt Arduino
IDE để nạp code cho ESP8266.
Chuẩn bị phần cứng:
1 x ESP8266 V12 hoặc V12E đã tích hợp sẵn mạch nạp.
Cài đặt phần mềm arduino IDE và thư viện cho esp8266.
Sau khi tải phần mềm Arduino IDE, các bạn tiến hành cài đặt như bình thường và
mở chương trình lên. Và các bạn nhớ cài driver cho nó nhé.( file driver có sẵn
trong file cài).
Tài liệu biên soạn bởi Phi Nguyen và một số tài liệu được tham khảo từ arduino.cc và cộng đồng arduino
Web: tdhshop.com.vn
Email:
hotline: 0395 304 802
11
Để tiến hành cài đặt thư viện và chức năng nạp code cho IDE các bạn làm như sau:
Vào File→ Preferences, vào textbox Additional Board Manager URLs thêm đường
link sau vào
/>Click OK để chấp nhận.
Tài liệu biên soạn bởi Phi Nguyen và một số tài liệu được tham khảo từ arduino.cc và cộng đồng arduino
Web: tdhshop.com.vn
Email:
hotline: 0395 304 802
12
Tiếp theo vào Tool→Board→Boards Manager
Đợi một lát để chương trình tìm kiếm. Ta kéo xuống và click vào ESP8266 by
ESP8266 Community, click vào Install. Chờ phần mềm tự động download và cài
đặt.
Tài liệu biên soạn bởi Phi Nguyen và một số tài liệu được tham khảo từ arduino.cc và cộng đồng arduino
Web: tdhshop.com.vn
Email:
hotline: 0395 304 802
13
Hướng dẫn nạp chương trình cho ESP8266 12E:
Kết nối mudule ESP8266 -12E vào máy tính. Vào Tool→Board→NodeMCU 1.0, chọn
cổng COM tương ứng với module tương ứng.
Chọn chế độ nạp Arduino as ISP và chọn cổng COM cho đúng nhé.Vậy là ta đã có mơi
trường lập trình cho esp8266 rất thân thiện.
Sau khi kết nối ESP8266 với máy tính, các bạn có thể test code ESP8266 ở đây:
Tài liệu biên soạn bởi Phi Nguyen và một số tài liệu được tham khảo từ arduino.cc và cộng đồng arduino
Web: tdhshop.com.vn
Email:
hotline: 0395 304 802
14
Code ở dưới test led trên board esp8266 12E ở chân 13 (D7 ) sáng tắt trong vòng 1 giây.
void setup() {
pinMode(LED_BUILTIN, OUTPUT);
}
void loop() {
digitalWrite(LED_BUILTIN, HIGH); // bật led sáng 1 giây
delay(1000);
// wait for a second
digitalWrite(LED_BUILTIN, LOW); // tắt led 1 giây
delay(1000);
// wait for a second
}
Hình ảnh thực tế:
Từ ví dụ đơn giản ở trên ta có thể bắt tay vào học lập trình cho ESP để làm những
dự dán IOT có ứng dụng cao.
Tài liệu biên soạn bởi Phi Nguyen và một số tài liệu được tham khảo từ arduino.cc và cộng đồng arduino
Web: tdhshop.com.vn
Email:
hotline: 0395 304 802
15
II.
Bài học mẫu ứng dụng lập trình esp8266:
1. Lập trình điều khiển ESP8266 12E bằng Arduino IDE.
Giới thiệu về ESP826612E:
Để bắt đầu với những dự án Wifi các bạn cần ESP8266 với giá thành rẻ, và dễ dàng sử
dụng. Đặc biệt, ESP8266 ( ở phần này tôi sử dụng loại V12E) có thể được lập trình bằng
Arduino IDE. Trước khi bắt đầu những chuỗi dự án hay ho với ESP8266, ở bài viết này,
mình sẽ chia sẻ cách cài đặt Arduino IDE để nạp code cho ESP8266.
Chuẩn bị phần cứng:
1 x ESP8266 V12 hoặc V12E đã tích hợp sẵn mạch nạp ( Trong ví bài viết này tơi
sử dụng ESP8266-V12E).
Cài đặt phần mềm arduino IDE và thư viện cho esp8266.
Sau khi tải phần mềm Arduino IDE, các bạn tiến hành cài đặt như bình thường và mở
chương trình lên.
Tài liệu biên soạn bởi Phi Nguyen và một số tài liệu được tham khảo từ arduino.cc và cộng đồng arduino
Web: tdhshop.com.vn
Email:
hotline: 0395 304 802
16
Để tiến hành cài đặt thư viện và chức năng nạp code cho IDE các bạn làm như sau:
Vào File→ Preferences, vào textbox Additional Board Manager URLs thêm đường
link sau vào
/>Click OK để chấp nhận.
Tài liệu biên soạn bởi Phi Nguyen và một số tài liệu được tham khảo từ arduino.cc và cộng đồng arduino
Web: tdhshop.com.vn
Email:
hotline: 0395 304 802
17
Tiếp theo vào Tool→Board→Boards Manager
Đợi một lát để chương trình tìm kiếm. Ta kéo xuống và click vào ESP8266 by
ESP8266 Community, click vào Install. Chờ phần mềm tự động download và cài
đặt.
Tài liệu biên soạn bởi Phi Nguyen và một số tài liệu được tham khảo từ arduino.cc và cộng đồng arduino
Web: tdhshop.com.vn
Email:
hotline: 0395 304 802
18
Hướng dẫn nạp chương trình cho ESP8266 12E:
Kết nối mudule ESP8266 -12E vào máy tính. Vào Tool→Board→NodeMCU 1.0, chọn
cổng COM tương ứng với module tương ứng.
Chọn chế độ nạp Arduino as ISP và chọn cổng COM cho đúng nhé.Vậy là ta đã có mơi
trường lập trình cho esp8266 rất thân thiện.
Sau khi kết nối ESP8266 với máy tính, các bạn có thể test code ESP8266 ở đây:
Tài liệu biên soạn bởi Phi Nguyen và một số tài liệu được tham khảo từ arduino.cc và cộng đồng arduino
Web: tdhshop.com.vn
Email:
hotline: 0395 304 802
19
Code ở dưới test led trên board esp8266 12E ở chân 13 (D7 ) sáng tắt trong vòng 1 giây.
void setup() {
pinMode(LED_BUILTIN, OUTPUT);
}
void loop() {
digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level)
delay(1000);
// wait for a second
digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW
delay(1000);
// wait for a second
}
Hình ảnh thực tế:
2. Bật tắt led theo ý muốn bằng esp8266 12E.
Chuẩn bị phần cứng:
1 x ESP8266 V12 hoặc V12E đã tích hợp sẵn mạch nạp ( Trong ví bài viết
này tơi sử dụng ESP8266-V12E)
Tài liệu biên soạn bởi Phi Nguyen và một số tài liệu được tham khảo từ arduino.cc và cộng đồng arduino
Web: tdhshop.com.vn
Email:
hotline: 0395 304 802
20
1 breadboard.
1 led.
1 điện trở 220 Ohm.
Lắp mạch:
Chân ( + ) của led được nối chân D3 ( tương ứng với chân số GPIO0 )
Chân ( -- ) của led được nối chân GND của ESP.
Lập trình:
void setup() {
// initialize digital pin 0 ( D3 ) as an output.
pinMode(0, OUTPUT);
}
// the loop function runs over and over again forever
void loop() {
digitalWrite(0, HIGH); // turn the LED on (HIGH is the voltage level)
delay(1000);
// wait for a second
digitalWrite(0, LOW); // turn the LED off by making the voltage LOW
delay(1000);
// wait for a second
}
Hình ảnh thực tế:
Tài liệu biên soạn bởi Phi Nguyen và một số tài liệu được tham khảo từ arduino.cc và cộng đồng arduino
Web: tdhshop.com.vn
Email:
hotline: 0395 304 802
21
3. Bật tắt led bằng nút nhấn ( không lưu trạng thái).
Chuẩn bị phần cứng:
1 x ESP8266 V12 hoặc V12E đã tích hợp sẵn mạch nạp ( Trong ví bài viết
này tôi sử dụng ESP8266-V12E)
1 breadboard.
1 led.
1 điện trở 220 Ohm.
1 nút nhấn 4 chân.
Lắp mạch:
Chân ( + ) của led được nối chân D0 ( tương ứng với chân số GPIO16 )
Chân ( -- ) của led được nối chân GND của ESP.
Chân D3 ( chân GPIO0 ) được nối với nút nhấn như hình dưới.
Tài liệu biên soạn bởi Phi Nguyen và một số tài liệu được tham khảo từ arduino.cc và cộng đồng arduino
Web: tdhshop.com.vn
Email:
hotline: 0395 304 802
22
Lập trình:
int ledPin = 16;
int btnPin = 0;
//int ledState = LOW;
// LED connected to digital pin 16 ( D0)
// BUTTON connected to digital pin 0 ( D3)
void setup()
{
pinMode(ledPin, OUTPUT); // sets the digital pin as output
pinMode(btnPin, INPUT);
// sets the digital pin as input
digitalWrite(btnPin, HIGH);
Serial.begin(115200);
}
void loop()
{
if(digitalRead(btnPin)==LOW)
{
digitalWrite ( ledPin, HIGH);
}
else { digitalWrite ( ledPin, LOW);}
}
Hình ảnh thực tế:
Tài liệu biên soạn bởi Phi Nguyen và một số tài liệu được tham khảo từ arduino.cc và cộng đồng arduino
Web: tdhshop.com.vn
Email:
hotline: 0395 304 802
23
4. Bật tắt led bằng nút nhấn (lưu trạng thái).
Chuẩn bị phần cứng:
1 x ESP8266 V12 hoặc V12E đã tích hợp sẵn mạch nạp ( Trong ví bài viết
này tôi sử dụng ESP8266-V12E)
1 breadboard.
1 led.
1 điện trở 220 Ohm.
1 nút nhấn 4 chân.
Lắp mạch:
Chân ( + ) của led được nối chân D0 ( tương ứng với chân số GPIO16 )
Chân ( -- ) của led được nối chân GND của ESP.
Chân D3 ( chân GPIO0 ) được nối với nút nhấn như hình dưới.
Tài liệu biên soạn bởi Phi Nguyen và một số tài liệu được tham khảo từ arduino.cc và cộng đồng arduino
Web: tdhshop.com.vn
Email:
hotline: 0395 304 802
24
Lập trình:
//khai báo biến
int nutnhan = 0; // định nghĩa chân số GIPO0 là button ( D3 )
int led = 16,t=0; // khai báo led và biến, 16 ( GIPO16) (tuong ung D0)
int status1;// biến lưu các trạng thái nút nhấn
// viết hàm chống dội
boolean chong_doi()// int char float ngoại trừ void
{
int sta =!digitalRead(nutnhan); // đọc trạng thái nút nhấn
return sta;// khi co nhan nut la true
}
// khởi tạo
void setup()
{
Serial.begin(9600);
pinMode(nutnhan,INPUT);
digitalWrite(nutnhan, HIGH);
pinMode(led,OUTPUT);
}
void loop() // vong lap
{
int buttonState = digitalRead(nutnhan);
//Serial.println(buttonState);
status1 = chong_doi();
if(status1==true)
{
{
t=!t;// đảo trạng thái
}
while(status1==true){status1=chong_doi();}
}
if(t==1)
{
digitalWrite(led,HIGH);
}
else
{
digitalWrite(led,LOW);
}
Serial.println(t);
}
Tài liệu biên soạn bởi Phi Nguyen và một số tài liệu được tham khảo từ arduino.cc và cộng đồng arduino
Web: tdhshop.com.vn
Email:
hotline: 0395 304 802
25
Hình ảnh thực tế:
5. Điều khiển relay bằng Esp8266 V_12E.
Chuẩn bị phần cứng:
1 x ESP8266 V12 hoặc V12E đã tích hợp sẵn mạch nạp ( Trong ví bài viết
này tôi sử dụng ESP8266-V12E)
1 breadboard.
1 relay 5vd (1 hoặc 2) kênh mức cao.
Lắp mạch:
ESP8266_12E
Module Relay 5VDC
Vin
5Vdc ( + )
GND
GND (--)
GIPO16 ( D0)
1 (S) or ( IN1)
Tài liệu biên soạn bởi Phi Nguyen và một số tài liệu được tham khảo từ arduino.cc và cộng đồng arduino
Web: tdhshop.com.vn
Email:
hotline: 0395 304 802