3 Giám sát thông số qua Thingspeak
2.28 Đọc dữ liệu trong thanh ghi dữ liệu
- Master đọc dữ liệu trong thanh ghi dữ liệu của Slave.
Tương tự như ở bước truyền chế độ, Master gửi đi tín hiệu ST, 7 bit địa chỉ kèm 1 bit đọc R=1. Master chờ ACK phản hồi của Slave sau đó tiến hành nhận dữ liệu gồm 2 byte từ slave, trong đó byte có trong số cao sẽ được truyền đi trước. Sau khi nhận byte đầu tiên, Master phát tín hiệu Ack để slave tiếp tục gửi dữ liệu. Master sẽ phát tín hiệu Non-ACK để thông báo đã nhận đủ số byte và phát SP để kết thúc quá trình nhận 2 byte dữ liệu.
Giá trị đo mới này sẽ được cập nhật vào bộ nhớ đệm của Master, quá trình này cần 120ms để hoàn tất.
Cách tính giá trị dữ liệu
Giả sử 2 byte mà Master nhận được là “10000011 10010000” thì giá trị độ rọi được tính như sau:
BH1750lux = 2
15 + 29 + 28 + 27 + 24
1.2 = 28067 lux
2.4.4 Giao tiếp với module ESP8266V1
Sử dụng firmware có sẵn được cung cấp bởi Espressif để ESP8266 hoạt động như một Wifi module độc lập. Sau đó lập trình MCU bên ngoài giao tiếp với ESP8266 để cấu hình cho kết nối Wifi và truyền/nhận dữ liệu từ mạng Wifi. Sử dụng ESP8266 như một ngoại vi của MCU.
Đây là mô hình lập trình đơn giản nhất và nhanh nhất. Chúng ta sẽ sử dụng ESP8266 như là 1 wifi module và chỉ việc cấu hình mạng Wifi, password, ra lệnh kết nối và truyền nhận dữ liệu trên giao tiếp UART.
Để giao tiếp, chúng ta sẽ truyền lệnh theo 1 định dạng được định nghĩa bởi Espressif và được gọi là các lệnh AT command. Hiện tại các lệnh AT command có thể được chia thành 3 nhóm:
• Các lệnh cấu hình hoạt động của chip: Cho phép các bạn có thể kiểm tra trạng thái hoạt động, thực hiện reset chip, đọc thông tin firmware version, hoặc cấu hình thông số UART, Sleep mode v.v. . . .
• Các lệnh xác lập thông tin mạng Wifi: Hỗ trợ các lệnh như chế độ hoạt động (Station, AP, AP+ station), đọc các danh sách các mạng Wifi xung quanh, cấu hình thông tin mạng Wifi sẽ kết nối, hoặc cấu hình DHCP, WPS, MDNS, smart config,. . . Đa phần các cấu hình liên quan đến Wifi đều được hỗ trợ đầy đủ cho các nhu cầu sử dụng thông thường cho đến nâng cao.
• Các tập lệnh cấu hình TCP/IP: cho phép cấu hình TCP, UDP, SSL, các lệnh Ping, cấu hình timeout cho truyền dữ liệu, DNS,. . .
Bảng 2.9: Các tập lệnh AT đã sử dụngCấu hình Module Wifi Cấu hình Module Wifi
AT Kiểm tra ESP đã hoạt động chưa
AT+RST Reset ESP
AT+CWMODE = <mode> Cài đặt chế độ
Các lệnh AT đối với Module Wifi cầu hình là Station / client AT+CWJAP=<ssid>, <password> Kết nối với 1 mạng wifi
AT+CIPMUX = <mode> Cài đặt số lương các kênh kết nối
AT+CIPSTART Yêu cầu ESP8266 kết nối vào 1 TCP/UDP/SSL AT+CIPSEND Dùng để gửi dữ liệu cần send xuống ESP8266