Mục lục:

Chương trình MicroPython: Hiển thị kích thước của vòng tròn: 9 bước
Chương trình MicroPython: Hiển thị kích thước của vòng tròn: 9 bước

Video: Chương trình MicroPython: Hiển thị kích thước của vòng tròn: 9 bước

Video: Chương trình MicroPython: Hiển thị kích thước của vòng tròn: 9 bước
Video: ESP32 - Micropython - Bài 17: Điều khiển LED RGB WS2821B 2024, Tháng mười một
Anonim

Thử nghiệm này sử dụng mô-đun MakePython ESP8266, cho phép chúng tôi học lập trình MicroPython trên ESP8266. Thí nghiệm kiểm soát kích thước của vòng tròn trên màn hình bằng cách xoay chiết áp. Trong quá trình này, chúng ta sẽ tìm hiểu về việc sử dụng màn hình OLED ADC, SSD1306 và uPyCraft IDE.

Bước 1: Giới thiệu về ADC và I2C

Giới thiệu về ADC và I2C
Giới thiệu về ADC và I2C

ADC: ADC là một Bộ chuyển đổi Analog / Digital giúp chuyển đổi tín hiệu Analog thành Digital. Trong đèn LED điều khiển phía trước bật, PWM bên trong, chúng tôi biết sự khác biệt giữa tín hiệu kỹ thuật số và tín hiệu tương tự. Các tín hiệu chúng ta sử dụng trong cuộc sống hàng ngày, chẳng hạn như cường độ ánh sáng, sóng âm thanh và điện áp pin, đều là giá trị tương tự. Nếu chúng ta muốn đo tín hiệu tương tự (điện áp, cường độ ánh sáng, sóng âm thanh) thông qua máy tính vi chip đơn và thể hiện nó bằng tín hiệu kỹ thuật số, thì chúng ta cần bộ chuyển đổi tín hiệu kỹ thuật số tương tự ADC

Giao tiếp I2C: I2C được sử dụng rộng rãi để giao tiếp bộ điều khiển với các thành phần trên bo mạch như cảm biến / màn hình. Việc truyền dữ liệu chỉ có thể được hoàn thành bởi hai đường tín hiệu, tương ứng là đường xung đồng hồ SCL và đường tín hiệu SDA. Chỉ có một thiết bị chính Master và một số thiết bị Slave trên đường I2C. Để đảm bảo rằng cả hai bus đều ở mức cao khi không tải, SDA và SCL phải được kết nối với điện trở kéo. Giá trị cổ điển của điện trở kéo là 10K.

Bước 2: Nguồn cung cấp

Quân nhu
Quân nhu

Phần cứng:

  • MakePython ESP8266
  • Chiết áp
  • Bảng bánh mì
  • Nhảy dây
  • cáp USB

MakePython ESP8266: Có một mô-đun OLED 1.3’tích hợp trên bảng MakePython, với 128x64 pixel… Một pixel của màn hình đơn sắc là một diode phát sáng. OLED là "tự phát sáng", bản thân điểm ảnh là nguồn sáng nên độ tương phản rất cao. Màn hình OLED có giao thức giao tiếp I2C và SPI, hoàn toàn không tương thích do các giao thức khác nhau. Trong bài học của chúng tôi, OLED được cấu hình để tương thích với giao thức I2C. Liên kết mua mô-đun:

Potentiometer : Potentiometer là một điện trở có thể điều chỉnh được với ba đầu dây dẫn và các giá trị điện trở có thể được điều chỉnh theo một quy luật biến thiên nhất định. Một chiết áp thường bao gồm một thân điện trở và một chổi quét di động. Khi bàn chải di chuyển dọc theo thân điện trở, giá trị điện trở hoặc điện áp liên quan đến dịch chuyển sẽ nhận được ở đầu ra.

Phần mềm:

uPyCraft IDE

Có nhiều mã và phương pháp lập trình với MicroPython. Đối với hướng dẫn này, chúng tôi sử dụng uPyCraft IDE, đây là cách đơn giản và dễ dàng nhất để bắt đầu chuyển sang MicroPython.

Bước 3: Đấu dây

Đấu dây
Đấu dây
Đấu dây
Đấu dây
Đấu dây
Đấu dây

Đây là một mạch rất đơn giản, cần rất ít dây, chỉ có ba. Chỉ cần kết nối chân VCC của chiết áp với 3.3v của MakePython ESP8266 và chân OUT (giữa) với A0, và kết nối GND với nhau. Màn hình OLED sử dụng giao tiếp I2C và bo mạch có dây nên bạn không phải lo lắng về điều đó.

Bước 4: Cài đặt UPyCraft IDE Windows PC

Cài đặt UPyCraft IDE Windows PC
Cài đặt UPyCraft IDE Windows PC
Cài đặt UPyCraft IDE Windows PC
Cài đặt UPyCraft IDE Windows PC

Nhấp vào liên kết này để tải xuống uPyCraft IDE cho Windows:

randomnerdtutorials.com/uPyCraftWindows.

Sau một vài giây, bạn sẽ thấy một tệp tương tự (uPyCraft_VX.exe) trong thư mục Tải xuống của bạn

Bấm đúp vào tệp đó. Một cửa sổ mới sẽ mở ra với phần mềm uPyCraft IDE.

Bước 5: Thiết lập liên lạc với Hội đồng quản trị

Thiết lập liên lạc với hội đồng quản trị
Thiết lập liên lạc với hội đồng quản trị

Sau khi cài đặt phần mềm MicroPython (Phần mềm MicroPython đã được cài đặt khi bạn tải Makerfabs MakePython ESP8266), hãy kết nối nó với máy tính của bạn qua cáp USB, hãy làm theo các bước:

  • Đi tới Công cụ> Bảng và chọn bảng bạn đang sử dụng. Chọn esp8266
  • Đi tới Công cụ> Nối tiếp và chọn cổng com mà ESP của bạn được kết nối (tải xuống trình điều khiển USB tại:

www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers)

Nhấn nút Kết nối để thiết lập giao tiếp nối tiếp với bo mạch của bạn.

Bạn sẽ thấy “>>>“xuất hiện trong cửa sổ Shell sau khi kết nối thành công với bo mạch của bạn.

Bước 6: Tạo tệp Main.py tệp trên bảng của bạn

Tạo tệp Main.py trên bảng của bạn
Tạo tệp Main.py trên bảng của bạn
Tạo tệp Main.py trên bảng của bạn
Tạo tệp Main.py trên bảng của bạn
  • Nhấn nút “Tệp mới” để tạo tệp mới.
  • Nhấn nút “Lưu tệp” để lưu tệp trên máy tính của bạn.
  • Một cửa sổ mới mở ra, đặt tên cho tệp của bạn là main.py và lưu nó trên máy tính của bạn.
  • Sau đó, bạn sẽ thấy tệp boot.py trong thiết bị của mình và một tab mới có tệp main.py.
  • Nhấp vào nút “Tải xuống và chạy” để tải tệp lên bảng ESP của bạn.
  • Thư mục thiết bị bây giờ sẽ tải tệp main.py. ESP của bạn có tệp main.py được lưu trữ.

Bước 7: Thêm tệp trình điều khiển

Vì màn hình OLED sử dụng chip trình điều khiển SSD1306 nên chúng ta cần tải xuống trình điều khiển của SSD1306. Bạn có thể truy cập trang web GitHub để tìm kiếm và tải xuống thư viện của SSD1306 hoặc nhấp để tải xuống tệp trình điều khiển ssd1306.py của chúng tôi.

Sau khi tải xuống, hãy lưu ssd1306.py vào thư mục tệp workSpace. Sau đó, nhấp vào mở tệp ssd1306.py và nhấp vào chạy, và tệp thư viện có thể được tải vào thư mục thiết bị. Tại thời điểm này, tệp thư viện của ssd1306.py đã được tải thành công vào MakePython ESP8266, tệp này có thể được gọi bằng câu lệnh import ssd1306.

* lưu ý: Lần đầu tiên bạn mở uPyCraft IDE, đường dẫn workSpace không tồn tại. Khi bạn nhấp vào, hộp thoại WorkSpace sẽ bật lên. Bạn có thể tạo một thư mục workSpace để lưu trữ các tệp của người dùng bằng cách chọn thư mục bạn muốn lưu trữ.

Bước 8: Chức năng chính

Chức năng chính
Chức năng chính
Chức năng chính
Chức năng chính

Giải thích ngữ pháp:

  • i2c: cấu hình các chân SCL và SDA
  • oled: tạo đối tượng OLED
  • adc.read (): Đọc dữ liệu lấy mẫu ADC
  • circle (): Hàm vẽ hình tròn tùy chỉnh sử dụng hàm sqrt () để tính bán kính của hình tròn
  • math.sqrt (r): Trả về căn bậc hai của số
  • pixel (x, y, c): Vẽ điểm tại (x, y)
  • hline (x, y, w, c): Vẽ một đường nằm ngang, bắt đầu từ (x, y), chiều dài w
  • vline (x, y, w, c): Vẽ một đường thẳng đứng, bắt đầu từ (x, y), với chiều cao là w
  • oled.fill (n): Làm trống màn hình khi n = 0 và lấp đầy màn hình khi n> là 0
  • oled.show (): Bật chức năng hiển thị

Bạn có thể thêm trực tiếp tệp này hoặc sao chép nội dung của nó vào tệp chính mới được tạo.

Bước 9: Kết quả thử nghiệm

Kết quả thử nghiệm
Kết quả thử nghiệm

Xoay chiết áp từ từ, theo chiều kim đồng hồ và vòng tròn trên màn hình sẽ lớn hơn, nhỏ hơn ngược chiều kim đồng hồ.

Đề xuất: