Networks Business Online Việt Nam & International VH2

Làm Ứng Dụng Nhấp Nháy Đèn Led Với Micropython

Đăng ngày 08 November, 2022 bởi admin

Hôm nay mình sẽ viết một bài khá mới mẻ về lập trình nhúng cụ thể mình sẽ giới thiệu về Micropython, nghe cái tên thì khá là quen thuộc nhưng thực sự nó rất mới và chưa phổ biến ở Việt Nam. Bài viết sẽ đề cập tới cách nó hoạt động như thế nào, khác biệt như thế nào so với lập trình nhúng bằng C,C++ hay sử dụng Arduino. 

Để không làm nhàm chán, cuối bài mình sẽ hướng dẫn nho nhỏ về cách thông số kỹ thuật, setup môi trường tự nhiên cũng như viết một chương trình tiên phong. Bắt đầu thôi nào .

Micropython là gì?

Micropython là một phiên bản Python được phong cách thiết kế để chạy trên những bộ vi điều khiển nhỏ, rẻ tiền, hiệu suất thấp .

Ví dụ về các bộ vi điều khiển mà Micropython có thể chạy trên bao gồm bo mạch, bảng WiPy và ESP8266. Thông thường, Python được chạy trên máy tính để bàn hoặc máy tính xách tay (cũng trên các máy chủ lớn tại các trang trại máy chủ). So với máy tính để bàn hoặc máy tính xách tay, vi điều khiển nhỏ hơn nhiều, rẻ hơn và kém mạnh mẽ hơn. Phiên bản “thông thường” của Python không thể chạy trên các bộ vi điều khiển nhỏ, giá rẻ vì Python quá nặng nề và phức tạp để chạy trên chúng. Python thông thường chiếm quá nhiều dung lượng đĩa cứng, quá tốn nhiều RAM để hoạt động và đòi hỏi bộ xử lý mạnh hơn so với vi điều khiển hiện có.

Một điều khá tuyệt vời là một phiên bản Python ( Micropython ) chạy trên những bộ vi điều khiển nhỏ, giá rẻ như ESP8266. Để có được Micropython chạy trọn vẹn trên những bảng nhỏ này, Micropython chỉ chứa một tập hợp con của tổng thể những mô-đun thư viện tiêu chuẩn được gắn với Python ” thường thì “. Một số thư viện đi kèm với Micropython không có bộ hàm và lớp vừa đủ đi kèm với phiên bản không thiếu của Python. Điều này được cho phép Micropython nhỏ gọn ( khoảng chừng 600 kB cho cổng ESP8266 ) và chỉ sử dụng một lượng RAM nhỏ ( giảm xuống 16 k theo trang chủ của Micropython đề cập ) .

Micropython dùng để làm gì ?

Micropython được setup trên những bộ vi điều khiển nhỏ, giá rẻ như ESP8266. Điều này có nghĩa bạn hoàn toàn có thể sử dụng vi điều khiển làm cảm ứng từ xa để đo những thứ như nhiệt độ, nhiệt độ và mức độ ánh sáng. Micropython cũng hoàn toàn có thể được sử dụng để nhấp nháy đèn LED, điều khiển mảng đèn LED hoặc chạy màn hình hiển thị nhỏ. Micropython hoàn toàn có thể điều khiển động cơ servo, động cơ bước. Kỹ sư kiến thiết xây dựng hoàn toàn có thể sử dụng Micropython để theo dõi mực nước. Kỹ sư hoàn toàn có thể sử dụng Micropython để diều khiển robot. Kỹ sư điện hoàn toàn có thể sử dụng micropython để đo mức điện áp trong những mạng lưới hệ thống nhúng .

Micropython hoạt động giải trí như thế nào ?

MicroPython gồm có một trình biên dịch mã byte MicroPython ( phần lan rộng ra tệp. mpy ). Mã Python hoàn toàn có thể được biên dịch thành mã byte hoặc trực tiếp trên vi điều khiển hoặc nó hoàn toàn có thể được biên dịch trước ở nơi khác .
Phần mềm MicroPython hoàn toàn có thể được thiết kế xây dựng mà không cần trình biên dịch, chỉ để lại máy ảo hoàn toàn có thể chạy những chương trình mpy được biên dịch sẵn .

Tại sao Mircopython mà không phải những nền tảng khác như C / C + + hay Arduino ?

Như những bạn đã biết, ngôn từ Python đã và đang dần chứng minh và khẳng định được chính mình. Không chỉ chỉ với cái tên can đảm và mạnh mẽ, Python dần được mọi người yêu quý và biết đến với cú pháp đơn thuần dễ học nhưng lại cực kỳ ngặt nghèo. Không chỉ ứng dụng trong web, khoa học và giám sát, game hay ứng dụng desktop. Python còn lấn sân sang cả mạng lưới hệ thống nhúng nữa nổi bật là MicroPython. Vì sử dụng ngôn từ bậc cao nên MicroPython không cần yên cầu bạn quá nâng cao kiến thức và kỹ năng về phần cứng nhưng bạn hoàn toàn có thể làm ra những sản phấm không hề thua kém so với những nền tảng khác. Là ngôn từ thông dịch nên không cần phải biên dịch chương trình và nạp vào vi điều khiển như Arduino, C, … Thật mới mẻ và lạ mắt phải không nào !

2. Làm đèn led nhấp nháy vớiMircopython

2.1. Yêu cầu phần cứng và ứng dụng gồm có :

Phần cứng :

  • Kit RF Thu Phát Wifi ESP8266 NodeMCU Lua
  • Cáp microUSB
  • 1 đèn Led
  • 1 trở 330 ôm
  • 1 board test

Phần mềm :

2.2. Làm một mạch đơn thuần :

2.3. Bắt đầu lập trình :

Đầu tiên tất cả chúng ta cần công cụ để thiết lập firmware

pip install esptool

Chúng ta cần xóa bộ nhớ Esp8266 với esptool.py bằng lệnh

esptool.py --port COM3 erase_flash

Note: Bạn cần vào Device Manager để xem máy tính đang kết nối với Esp8266 bằng cổng COM nào nhé

Cài đặt firmware

esptool.py --port COM3 --baud 115200 write_flash --flash_size=detect 0 esp8266-20191220-v1.12.bin

Noteesp8266-20191220-v1.12.bin là tên firmware bạn vừa mới tải về

Cài đặt ampy để có thể truy cập vào file hệ thống

pip install adafruit-ampy
pip install adafruit-ampy --upgrade

Lệnh log những file trong bộ nhớ

ampy -p COM3 -b 115200 ls

Nếu log được như vậy tất cả chúng ta đã triển khai xong việc thiết lập

 Tạo một file main.py

import time
from machine import Pin

led = Pin(14, Pin.OUT)
while(True):
    led.on()
    time.sleep(0.5)
    led.off()
    time.sleep(0.5)

Lệnh chạy file main.py vào Esp8266

ampy -p COM3 -b 115200 run main.py

Note: Lệnh này chạy nhưng khi resest thì chương trình sẽ bị mất

Lệnh ghi file main.py vào Esp8266

ampy -p COM3 -b 115200 put main.py

Và còn nhiều lệnh nữa 

ampy --help

Tạm Kết.

Trên đây là bài viết mở màn về MicroPython, và tất cả chúng ta thấy rằng phong cách thiết kế và lập trình ra một mạng lưới hệ thống nhúng với MicroPython không hề khó tí nào. Trong những bài tiếp theo, mình sẽ hướng dẫn 1 số ít những khái niệm cơ bản khác để có một nền tảng kiến thiết xây dựng như dự án Bất Động Sản lớn hơn. Xây dựng smarthome từ việc build server đến làm phần cứng, dùng Esp8266 liên kết với FptAi để làm một cô trợ lý nhắc nhở việc học hoặc những dự án Bất Động Sản IOT khác. Thật mê hoặc phải không nào những bạn, năng lực phát minh sáng tạo của tất cả chúng ta là vô hạn. Nếu thấy hay những bạn ủng hộ mình bằng cách share bài mình nhé. Hẹn gặp những bạn sớm .

Source: https://vh2.com.vn
Category : Tin Học