Mục lục:
- Bước 1: Trạm thời tiết
- Bước 2: Vật liệu
- Bước 3: Phần mềm
- Bước 4: Sơ đồ màn hình LCD
- Bước 5: WS đang hoạt động
- Bước 6: Một số mẹo quan trọng
- Bước 7: Xong
- Bước 8: Một bản cập nhật nhỏ
Video: Trạm thời tiết ESP8266 / ESP32 Với (các) TFT LCD: 8 bước
2024 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2024-01-30 13:31
Xin chào!
Trong hướng dẫn ngắn gọn này, tôi muốn trình bày dự án Esp8266 WS thứ hai của mình. Kể từ khi tôi đăng dự án ESP đầu tiên của mình, tôi muốn biến mình thành dự án thứ hai. Vì vậy, tôi đã có một số thời gian rảnh để làm lại một mã nguồn cũ cho phù hợp với nhu cầu của mình.
Vì vậy, nếu bạn không phiền tôi sẽ trình bày nó.
Bước 1: Trạm thời tiết
WS vẫn sử dụng khóa API openweathermap để tải dữ liệu thời tiết và hiển thị trên màn hình.
Một chút mã hóa là cần thiết vì ở dạng đó, nó không thể hiển thị các biểu tượng thời tiết mà tôi muốn.
Bước 2: Vật liệu
Các bộ phận cần thiết cho WS:
- Nodemcu V3 ESP8266
- Màn hình LCD TFT 1,8 inch với IC điều khiển ST7735
- Dây F-F
- Mã nguồn
- Arduino IDE
- Hỗ trợ SPIFFS
- Khóa API Openweathermap
Bước 3: Phần mềm
Đối với dự án này, tôi đang cung cấp mã nguồn và các hình ảnh bitmap cần thiết, hãy tải xuống từ trang github của tôi:
Thư viện tôi đã sử dụng là TFT_eSPI được tạo bởi Bodmer.
Tất cả những gì bạn phải làm: Tải xuống các thư viện chính xác, biên dịch nó và tải nó lên bảng, tải ảnh bitmap với SPIFFS lên ESP và kết nối với màn hình LCD.
Tôi đã sử dụng hình ảnh bitmap 24 bit 100 X100, nhưng bạn có thể sử dụng bất kỳ biểu tượng nào khác. Những người tôi đã sử dụng đã tải xuống từ
Bước 4: Sơ đồ màn hình LCD
Sơ đồ chân như sau:
// Hiển thị SDO / MISO đến chân NodeMCU D6 (hoặc ngắt kết nối nếu không đọc TFT)
// Hiển thị LED đến NodeMCU chân VIN (hoặc 5V, xem bên dưới)
// Hiển thị SCK đến chân NodeMCU D5
// Hiển thị SDI / MOSI đến chân NodeMCU D7
// Hiển thị DC (RS / AO) tới chân NodeMCU D3
// Hiển thị RESET đến chân NodeMCU D4 (hoặc RST, xem bên dưới)
// Hiển thị CS đến chân NodeMCU D8 (hoặc GND, xem bên dưới)
// Hiển thị GND đến chân NodeMCU GND (0V)
// Hiển thị VCC sang NodeMCU 5V hoặc 3.3V
Để giảm nhiễu nền, bạn có thể sử dụng chiết áp 10K hoặc sử dụng chân GPIO khác. Đối với bản thân tôi, tôi thường kết nối pin đèn nền với pin TX. Tôi biết đó không phải là một ý kiến hay cho ESP, nhưng nó đang hoạt động theo cách đó.
Bước 5: WS đang hoạt động
Sau khi bạn đã thực hiện mọi thứ một cách chính xác, bạn có thể thấy rằng trạm thời tiết đang kết nối với internet và tải xuống dữ liệu thời tiết.
Các tham số khác nhau được phân tách trong các vòng lặp khác nhau.
Những gì bạn thấy là mô tả thời tiết thực tế, nhiệt độ, độ ẩm, tốc độ gió, độ hiển thị tính bằng mét, áp suất không khí, góc gió, độ che phủ của mây tính theo phần trăm (%).
Đối với phần thưởng trong khoảng thời gian từ 9 giờ tối đến 7 giờ sáng, màn hình sẽ đảo ngược với thời gian ban đêm mô phỏng.
Bước 6: Một số mẹo quan trọng
Như các bạn đã biết trên mạng có một vài biến thể của màn hình TFT 1.8 . Với màn hình LCD Adafruit chính hãng thường không có vấn đề gì. Nhưng khi sử dụng màn hình giả (thường là từ Aliexpress), bạn phải thực hiện một số điều chỉnh.
Thư viện Bodmers TFT_eSPI rất thú vị và phong phú. Và phần tốt nhất là anh ấy đã tạo ra nó để xử lý hiệu số pixel tùy thuộc vào loại TFT 1,8 mà bạn đang sử dụng.
Để khắc phục vấn đề này, tôi đề xuất những điều sau:
Chuyển đến thư mục thư viện và chỉnh sửa tệp User_Setup.h. Bỏ ghi chú #define ST7735_DRIVER và nhận xét những người khác.
Sau đó bỏ ghi chú chiều cao tft bằng chiều rộng. Và sau đó trong trường hợp của tôi (REDTAB), ví dụ: #define ST7735_REDTAB. Sau đó, lưu nó trong giây lát và biên dịch bản phác thảo và tải lên hội đồng quản trị. Để chắc chắn rằng tôi đã xác định các thông số trong bản phác thảo. Đây là một thủ tục hơi dài, vì bạn phải biên dịch và tải bản phác thảo lên mỗi lần để lên bảng cho đến khi độ lệch mất đi, nhưng nó đáng để thử nghiệm. Để chỉnh sửa h. tôi thực sự đề xuất Wordpad. Hình ảnh bao gồm.
Bước 7: Xong
Sau khi làm mọi thứ một cách chính xác, bạn có thể tận hưởng tiện ích nhỏ này. Tôi đã thử ghép nối các hình ảnh bitmap với mã thời tiết tốt nhất có thể, nhưng tôi vẫn đang thử nghiệm nó vào lúc này.
Về cơ bản, tôi chỉ làm nó cho chính mình, nhưng sau một ngày, tôi nghĩ rằng tôi sẽ chia sẻ nó. Có lẽ ai đó sẽ thích nó hơn tôi.
Cảm ơn bạn đã đọc hướng dẫn của tôi, hy vọng bạn sẽ thấy nó hữu ích và sử dụng nó như bạn muốn.
Chúc một ngày tốt lành!
Bước 8: Một bản cập nhật nhỏ
Sau một vài ngày, tôi nghĩ rằng tôi sẽ làm lại WS này ở một hình thức mới.
Thay đổi: ESP32 Uno R3
ILI9340 / 41 TFT LCD song song
Biểu tượng mới
1 tùy chọn bổ sung
Vui lòng chỉnh sửa tệp User_setup.h trong thư viện TFT_eSPI cho phù hợp trong bản phác thảo. Xin vui lòng bỏ ghi chú họ và bình luận ra tùy chọn khác hoặc nếu không nó sẽ không hoạt động.
Bạn phải kết nối GPIO 35 đến 15, GPIO 33 đến 34, GPIO 32 đến 36 vì chúng chỉ là chân đầu vào và khi đó màn hình của chúng ta sẽ không hoạt động (xem hình).
Mã nguồn có sẵn trên github.
Đề xuất:
Trạm thời tiết NaTaLia: Trạm thời tiết sử dụng năng lượng mặt trời Arduino Đã thực hiện đúng cách: 8 bước (có hình ảnh)
Trạm thời tiết NaTaLia: Trạm thời tiết sử dụng năng lượng mặt trời Arduino Đã hoàn thành đúng cách: Sau 1 năm hoạt động thành công trên 2 địa điểm khác nhau, tôi đang chia sẻ kế hoạch dự án trạm thời tiết sử dụng năng lượng mặt trời của mình và giải thích cách nó phát triển thành một hệ thống thực sự có thể tồn tại trong thời gian dài thời kỳ từ năng lượng mặt trời. Nếu bạn theo dõi
Trạm thời tiết DIY & Trạm cảm biến WiFi: 7 bước (có hình ảnh)
DIY Weather Station & WiFi Sensor Station: Trong dự án này, tôi sẽ hướng dẫn bạn cách tạo một trạm thời tiết cùng với một trạm cảm biến WiFi. Trạm cảm biến đo dữ liệu nhiệt độ và độ ẩm cục bộ và gửi dữ liệu đó qua WiFi đến trạm thời tiết. Sau đó, trạm thời tiết hiển thị t
Trạm thời tiết 2.4 TFT Arduino với nhiều cảm biến: 7 bước
2.4 Trạm thời tiết Arduino TFT với nhiều cảm biến: Trạm thời tiết Arduino di động với màn hình TFT LCD và một vài cảm biến
Nến thời tiết - Xem nhanh thời tiết và nhiệt độ: 8 bước
Nến thời tiết - Xem nhanh thời tiết và nhiệt độ: Sử dụng ngọn nến kỳ diệu này, bạn có thể cho biết nhiệt độ hiện tại và điều kiện bên ngoài ngay lập tức
Acurite 5 trong 1 Trạm thời tiết sử dụng Raspberry Pi và Weewx (các trạm thời tiết khác tương thích): 5 bước (có Hình ảnh)
Trạm thời tiết Acurite 5 trong 1 Sử dụng Raspberry Pi và Weewx (các Trạm thời tiết khác Tương thích): Khi tôi mua trạm thời tiết Acurite 5 trong 1, tôi muốn có thể kiểm tra thời tiết tại nhà của mình khi tôi đi vắng. Khi tôi về nhà và thiết lập nó, tôi nhận ra rằng tôi phải có màn hình kết nối với máy tính hoặc mua trung tâm thông minh của họ,