Cái nào được nhúng hay python tốt nhất?

Viết mã chạy trong thiết bị đầu cuối hoặc trong trình duyệt web của bạn thật thú vị. Tuy nhiên, việc viết mã ảnh hưởng đến thế giới thực có thể thỏa mãn ở một cấp độ hoàn toàn khác. Viết loại mã này được gọi là phát triển nhúng và Python đang làm cho nó dễ tiếp cận hơn bao giờ hết

Trong hướng dẫn này, bạn sẽ học

  • Phát triển nhúng là gì và tại sao bạn sẽ sử dụng Python để làm điều đó
  • Tùy chọn phần cứng và phần mềm của bạn là gì để chạy Python trên hệ thống nhúng
  • Khi Python phù hợp với một hệ thống nhúng và khi nào thì không
  • Cách viết game cơ bản trên BBC micro. bit với MicroPython

Hướng dẫn này chứa các đoạn mã cho phép bạn xây dựng một trò chơi đơn giản trên máy vi tính BBC. chút. Để truy cập toàn bộ mã và xem trước những gì bạn sẽ xây dựng, hãy nhấp vào liên kết bên dưới

Nhận mã mẫu. Nhấp vào đây để lấy mã mẫu mà bạn sẽ sử dụng để tìm hiểu về phát triển nhúng với Python trong hướng dẫn này

Phát triển nhúng là gì?

Phát triển nhúng là viết mã cho bất kỳ thiết bị nào không phải là máy tính đa năng. Định nghĩa này hơi mơ hồ, vì vậy một số ví dụ có thể hữu ích

  • Máy tính đa năng bao gồm máy tính xách tay, máy tính để bàn, điện thoại thông minh, v.v.
  • Hệ thống nhúng bao gồm máy giặt, máy kỹ thuật số, robot, v.v.

Theo nguyên tắc chung, nếu bạn không gọi thứ gì đó là máy tính, nhưng nó vẫn có mã chạy trên đó, thì đó có thể là một hệ thống nhúng. Cái tên này xuất phát từ ý tưởng nhúng máy tính vào một hệ thống vật lý để thực hiện một số nhiệm vụ.

Các hệ thống nhúng có xu hướng được thiết kế để thực hiện một nhiệm vụ duy nhất, đó là lý do tại sao chúng tôi gọi các máy tính thông thường là “mục đích chung”. chúng được thiết kế để làm nhiều hơn một nhiệm vụ

Giống như bạn cần một máy tính để chạy mã thông thường, để chạy mã nhúng, bạn cần một số loại phần cứng. Những phần cứng này thường được gọi là bảng phát triển và hướng dẫn này sẽ giới thiệu cho bạn một số được thiết kế để chạy Python

Loại bỏ các quảng cáo

Python để phát triển nhúng

Một trong những điều tuyệt vời nhất khi học Python là nó có thể áp dụng ở rất nhiều nơi. Bạn có thể viết mã chạy ở mọi nơi, ngay cả trên các hệ thống nhúng. Trong phần này, bạn sẽ tìm hiểu về những đánh đổi khi sử dụng Python cho dự án nhúng của mình và một số điều cần lưu ý khi bắt đầu

Lợi ích của việc sử dụng Python

Lợi ích cốt lõi mà Python mang lại khi xây dựng hệ thống nhúng là tốc độ phát triển. Python có sẵn các thư viện cho hầu hết các tác vụ và điều này hầu như vẫn đúng với các triển khai nhúng của nó. Bạn có thể tập trung vào việc xây dựng hệ thống của mình vì nhiều vấn đề bạn gặp phải đã được giải quyết

Vì Python ở cấp độ cao hơn các ngôn ngữ nhúng phổ biến khác nên mã bạn viết sẽ ngắn gọn hơn. Điều này giúp tăng tốc độ phát triển, nghĩa là bạn sẽ viết mã nhanh hơn, nhưng nó cũng giúp mã của bạn dễ hiểu

Python được quản lý bộ nhớ. C++, một lựa chọn phổ biến cho phát triển nhúng, không phải là. Trong C++, bạn chịu trách nhiệm giải phóng bộ nhớ khi làm xong, điều này rất dễ quên, dẫn đến chương trình của bạn hết bộ nhớ. Python làm điều này cho bạn

Nhược điểm của việc sử dụng Python

Mặc dù quản lý bộ nhớ của Python là một trợ giúp lớn, nhưng nó phát sinh một chút tốc độ và chi phí bộ nhớ. Các tài liệu MicroPython có một cuộc thảo luận tốt về các vấn đề bộ nhớ

Một điều khác cần xem xét là bản thân trình thông dịch Python chiếm dung lượng. Với ngôn ngữ được biên dịch, kích thước chương trình của bạn chỉ phụ thuộc vào chương trình của bạn, nhưng chương trình Python cần trình thông dịch chạy chúng. Trình thông dịch Python cũng chiếm RAM. trên vi mô. một chút, bạn không thể viết mã Bluetooth bằng Python vì không có đủ chỗ cho Python và Bluetooth cùng một lúc

Vì Python được thông dịch nên nó không bao giờ có thể nhanh bằng ngôn ngữ được biên dịch. Một ngôn ngữ được giải thích cần giải mã từng lệnh trước khi chạy nó, nhưng một ngôn ngữ được biên dịch chỉ có thể chạy. Tuy nhiên, trên thực tế, điều này hiếm khi thành vấn đề vì các chương trình Python vẫn chạy đủ nhanh cho hầu hết các trường hợp sử dụng

Những điều cần chú ý khi mới phát triển nhúng

Máy tính hiện đại có rất nhiều bộ nhớ để làm việc với. Khi bạn lập trình chúng, bạn không phải lo lắng quá nhiều về kích thước của danh sách bạn tạo hoặc tải toàn bộ tệp cùng một lúc. Tuy nhiên, các hệ thống nhúng có bộ nhớ hạn chế. Bạn phải cẩn thận khi viết chương trình của mình để không có quá nhiều thứ trong bộ nhớ cùng một lúc

Tương tự, tốc độ bộ xử lý trên hệ thống nhúng chậm hơn nhiều so với trên máy tính để bàn. Tốc độ bộ xử lý xác định mã của bạn được thực thi nhanh như thế nào, do đó, chạy chương trình trên máy tính nhúng sẽ mất nhiều thời gian hơn chạy chương trình trên máy tính để bàn. Điều quan trọng hơn là nghĩ về hiệu quả của mã nhúng—bạn không muốn nó chạy mãi mãi

Có lẽ thay đổi lớn nhất khi lập trình hệ thống nhúng là yêu cầu về nguồn điện. Máy tính xách tay, điện thoại và máy tính để bàn cắm vào tường hoặc có pin lớn. Các hệ thống nhúng thường có pin nhỏ và phải tồn tại trong một thời gian rất dài, đôi khi thậm chí hàng năm. Mỗi dòng mã mà bạn chạy đều tiêu tốn một chút thời lượng pin và tất cả sẽ tăng lên

Dưới đây là một số điều khác mà bạn nên biết khi bắt đầu

  • Nếu bạn có kết nối mạng trên thiết bị của mình thì có thể kết nối đó chậm hoặc không đáng tin cậy
  • Bạn có nhiều lựa chọn thư viện nhỏ hơn để lựa chọn
  • Các hệ thống nhúng thường không có dung lượng lưu trữ liên tục lớn

Phát triển nhúng là một lĩnh vực rộng lớn, có rất nhiều thứ cho người mới học. Tuy nhiên, hiện tại, chỉ cần nhớ rằng điều quan trọng hơn là viết mã tinh gọn trên các hệ thống nhúng. Điều này làm cho các hệ thống nhúng tuyệt vời cho hiệu quả học tập trong mã của bạn

Tùy chọn phần cứng để chạy Python nhúng

Trước khi viết bất kỳ mã nhúng nào, bạn phải chọn mã của bạn sẽ chạy trên phần cứng nào. Có rất nhiều bảng phát triển có sẵn, ngay cả trong những bảng chạy Python. Sự lựa chọn của bạn sẽ thuộc về dự án mà bạn sử dụng chúng cho. Trong phần này, bạn sẽ xem qua một số tùy chọn có sẵn

BBC vi. chút

BBC vi mô. bit là một hệ thống nhúng được thiết kế cho mục đích giáo dục. Trên tàu một micro. một chút, có rất nhiều thành phần, bao gồm các nút, màn hình LED 5x5, loa và micrô, máy đo gia tốc và mô-đun Bluetooth. Thật không may, mô-đun Bluetooth không sử dụng được với Python, nhưng bạn vẫn có thể sử dụng radio trực tiếp. Nó có thể lập trình bằng Scratch, JavaScript và quan trọng nhất là Python

Đây là ảnh của một cái từ phía sau hiển thị một số thành phần thú vị có sẵn

Cái nào được nhúng hay python tốt nhất?
BBC vi mô. bit (Hình ảnh. Wikipedia/Aruld)

vi mô. bit có rất nhiều tài nguyên trực tuyến tuyệt vời để giúp bạn bắt đầu và đưa ra ý tưởng dự án

Loại bỏ các quảng cáo

quả mâm xôi

Hầu hết Raspberry Pi về mặt kỹ thuật là máy tính bảng đơn thay vì hệ thống nhúng, nhưng tất cả chúng vẫn cho phép truy cập vào phần cứng bên ngoài thông qua các chân GPIO của chúng. Một ngoại lệ đối với quy tắc là Raspberry Pi Pico, một bảng phát triển vi điều khiển. Các Raspberry Pi khác chạy Linux, nghĩa là bạn có thể sử dụng chúng như một máy tính hoàn chỉnh và tất cả các Pi đều hỗ trợ Python ngay lập tức

Có sẵn một số mẫu Raspberry Pi khác nhau, nhưng tất cả chúng đều có thể chạy Python và hoạt động với thiết bị điện tử. Bạn nên chọn mô hình nào tùy thuộc vào nhu cầu dự án của bạn. Đây là một trong những mẫu mới nhất

Cái nào được nhúng hay python tốt nhất?
Raspberry Pi 4 Model B (Hình ảnh. Michael Henzler/Wikimedia Commons)

Bạn có thể tìm hiểu thêm về các mẫu Raspberry Pi khác nhau trên trang web chính thức. Để biết ví dụ về một dự án bạn có thể thực hiện với Raspberry Pi và Python, hãy xem Xây dựng các dự án vật lý với Python trên Raspberry Pi

ván ép

Pyboard là một bảng phát triển điện tử được thiết kế để chạy MicroPython. Nó mạnh hơn rất nhiều so với micro. một chút nhưng không có bất kỳ tính năng bổ sung nào như màn hình tích hợp và cảm biến của micro. chút. Đây là pyboard 1. 0

Cái nào được nhúng hay python tốt nhất?
ván ép 1. 0 (Hình ảnh. GitHub micropython/pyboard)

Bạn có thể nhận thấy rất nhiều vòng tròn vàng trên bảng. Chúng được gọi là chân và được sử dụng để kết nối pyboard với các thành phần điện tử khác. Ví dụ: nếu bạn đang chế tạo ô tô điều khiển từ xa, bạn có thể kết nối một số động cơ với chúng

Người khác

Có rất nhiều bảng và bộ công cụ tương thích với Python, quá nhiều để liệt kê ở đây. Tuy nhiên, có một vài cái thú vị rất hay để gọi ra

  • LoPy từ Pycom kết nối với các mạng Internet vạn vật chuyên dụng như LoRa và Sigfox
  • Tất cả các bo mạch dựa trên ESP8266 đều chạy MicroPython. ESP8266 là một bộ vi điều khiển hỗ trợ Wi-Fi giá rẻ. Những người kế nhiệm của nó, dòng chip ESP32, cũng chạy MicroPython
  • Python cũng chạy trên Nintendo DS. Việc thiết lập có vẻ hơi phức tạp đối với người mới bắt đầu, nhưng dự án này quá thú vị để không đề cập đến

Có nhiều bảng tương thích với MicroPython hơn hướng dẫn này có không gian cho. Bạn nên thực hiện một số nghiên cứu để tìm ra cái phù hợp cho các dự án của mình. Một nơi tốt để bắt đầu có thể là cửa hàng MicroPython của Adaf nhung

Tùy chọn phần mềm để viết Python nhúng

Khi bạn cài đặt Python trên máy tính của mình, bạn thường cài đặt một triển khai cụ thể của Python có tên là CPython. Việc triển khai Python là chương trình chạy mã Python của bạn

Bạn có thể gọi CPython là triển khai Python mặc định vì nó được viết bởi những người xác định chính ngôn ngữ đó. Tuy nhiên, CPython không phải là triển khai duy nhất của Python. Trong phần này, bạn sẽ tìm hiểu về một số triển khai dành riêng cho việc viết mã nhúng

MicroPython

MicroPython là triển khai Python nhúng tiêu chuẩn thực tế. Nó là một con trăn 3. triển khai x được thiết kế để chạy trên vi điều khiển. Nó không tương thích 100% với CPython, nhưng nó rất gần. Điều này có nghĩa là nếu bạn đã viết mã để chạy trên các phiên bản lên tới Python 3. 4, thì rất có thể bạn có thể chạy nó trong MicroPython

MạchPython

CircuitPython là một nhánh của MicroPython hỗ trợ danh sách bảng hơi khác và có một số thay đổi để làm cho nó thân thiện hơn với người mới bắt đầu. Phần lớn, trải nghiệm của bạn sẽ rất giống khi sử dụng CircuitPython giống như khi sử dụng MicroPython. Bạn có thể chọn sử dụng CircuitPython nếu bo mạch của bạn chỉ hỗ trợ nó chứ không hỗ trợ các triển khai khác

Loại bỏ các quảng cáo

Dự định. Trò chơi A Simon Says trên BBC micro. chút

Không có gì có thể so sánh với trải nghiệm thực tế, vì vậy trong phần này, bạn sẽ xây dựng một trò chơi Simon Says trên BBC micro. chút. Đừng lo lắng nếu bạn không có. Có sẵn các trình mô phỏng trực tuyến để giúp bạn bắt đầu

Simon Says là một trò chơi dành cho trẻ em trong đó một người hướng dẫn cho một nhóm. Nếu họ đặt trước hướng dẫn của mình bằng “Simon nói,” thì nhóm phải thực hiện. Nếu họ đưa ra hướng dẫn mà không nói “Simon nói” trước, thì cả nhóm phải bỏ qua hướng dẫn. Để làm cho trò chơi của chúng tôi đơn giản hơn, chúng tôi sẽ chỉ tập trung vào phần hướng dẫn

Trò chơi sẽ hoạt động như sau

  • vi mô. bit sẽ nghĩ ra một hướng và nói với người chơi
  • Người chơi sẽ cố gắng nghiêng micro. chút về hướng đó
  • Nếu người chơi xoay sở để nghiêng micro một cách chính xác. một chút trong thời gian, sau đó họ nhận được một điểm
  • Nếu người chơi không thực hiện độ nghiêng chính xác kịp thời, thì micro. bit hiển thị điểm số của họ và trò chơi bắt đầu lại

Trước khi bắt đầu viết mã, bạn sẽ cần thiết lập môi trường của mình

Thiết lập môi trường của bạn

Cho dù bạn có một micro vật lý hay không. bit, con đường nhanh nhất để bắt đầu viết mã là sử dụng các trình chỉnh sửa trực tuyến có sẵn. Đối với hướng dẫn này, bạn sẽ sử dụng công cụ tạo. biên tập code. Khi bạn mở trình chỉnh sửa, bạn sẽ thấy màn hình sau

Cái nào được nhúng hay python tốt nhất?

Hầu hết màn hình được sử dụng với bộ đệm văn bản nơi bạn có thể nhập mã của mình. Ở dưới cùng bên phải, bạn sẽ thấy một nút phát. Điều này sẽ cho phép bạn chạy mã của mình sau khi bạn viết nó

Hiển thị hướng dẫn trên màn hình

Điều đầu tiên mà trò chơi của bạn cần làm là đưa ra một hướng đi và nói điều đó với người chơi. Với mục đích của trò chơi này, bạn có thể sử dụng ba hướng.

# Previous code...

while True:
    # Previous code...

    # Get the X-axis (left-right) tilt
    acc_x = accelerometer.get_x()
    # Determine direction
    if acc_x < -200:
        player_in = "L"
    elif abs(acc_x) < 200:
        player_in = "O"
    elif acc_x > 200:
        player_in = "R"

    # Check win condition
    if player_in == direction:
        # Player input correctly
        display.show(Image.HAPPY)
    else:
        display.show(Image.SAD)
    sleep(1000)
7,
# Previous code...

while True:
    # Previous code...

    # Get the X-axis (left-right) tilt
    acc_x = accelerometer.get_x()
    # Determine direction
    if acc_x < -200:
        player_in = "L"
    elif abs(acc_x) < 200:
        player_in = "O"
    elif acc_x > 200:
        player_in = "R"

    # Check win condition
    if player_in == direction:
        # Player input correctly
        display.show(Image.HAPPY)
    else:
        display.show(Image.SAD)
    sleep(1000)
8 và
# Previous code...

while True:
    # Previous code...

    # Get the X-axis (left-right) tilt
    acc_x = accelerometer.get_x()
    # Determine direction
    if acc_x < -200:
        player_in = "L"
    elif abs(acc_x) < 200:
        player_in = "O"
    elif acc_x > 200:
        player_in = "R"

    # Check win condition
    if player_in == direction:
        # Player input correctly
        display.show(Image.HAPPY)
    else:
        display.show(Image.SAD)
    sleep(1000)
9. Mã của bạn sẽ cần chọn một trong các hướng này và hiển thị cho người chơi. Điều này sẽ được bao bọc trong một vòng lặp
# Previous code...

while True:
    # Previous code...

    # Get the X-axis (left-right) tilt
    acc_x = accelerometer.get_x()
    # Determine direction
    if acc_x < -200:
        player_in = "L"
    elif abs(acc_x) < 200:
        player_in = "O"
    elif acc_x > 200:
        player_in = "R"

    # Check win condition
    if player_in == direction:
        # Player input correctly
        display.show(Image.HAPPY)
    else:
        display.show(Image.SAD)
    sleep(1000)
0 vô hạn để nó có thể chạy nhiều lần

Ghi chú. Vòng lặp

# Previous code...

while True:
    # Previous code...

    # Get the X-axis (left-right) tilt
    acc_x = accelerometer.get_x()
    # Determine direction
    if acc_x < -200:
        player_in = "L"
    elif abs(acc_x) < 200:
        player_in = "O"
    elif acc_x > 200:
        player_in = "R"

    # Check win condition
    if player_in == direction:
        # Player input correctly
        display.show(Image.HAPPY)
    else:
        display.show(Image.SAD)
    sleep(1000)
0 vô hạn phổ biến hơn trong lập trình nhúng so với các loại lập trình khác. Điều này là do các hệ thống nhúng có xu hướng chỉ thực hiện một công việc, do đó không có nguy cơ treo hệ thống và ngăn các chương trình khác chạy

Đây là mã của bạn có thể trông như thế nào

from microbit import *
from random import randrange

# Define left, stay still, and right
directions = ["L", "O", "R"]

# While the micro:bit is on
while True:
    # Pick a random direction
    direction = directions[randrange(3)]
    display.show(direction)
    # Sleep for a second (1000ms)
    sleep(1000)

Mã này sẽ hiển thị một hướng ngẫu nhiên khác nhau mỗi giây. Hai dòng đầu tiên nhập các chức năng cần thiết

  1. Mô-đun
    # Previous code...
    
    while True:
        # Previous code...
    
        # Get the X-axis (left-right) tilt
        acc_x = accelerometer.get_x()
        # Determine direction
        if acc_x < -200:
            player_in = "L"
        elif abs(acc_x) < 200:
            player_in = "O"
        elif acc_x > 200:
            player_in = "R"
    
        # Check win condition
        if player_in == direction:
            # Player input correctly
            display.show(Image.HAPPY)
        else:
            display.show(Image.SAD)
        sleep(1000)
    
    2 chứa tất cả mã cần thiết để giao tiếp với vi. chút. Ví dụ: các mô-đun
    # Previous code...
    
    while True:
        # Previous code...
    
        # Get the X-axis (left-right) tilt
        acc_x = accelerometer.get_x()
        # Determine direction
        if acc_x < -200:
            player_in = "L"
        elif abs(acc_x) < 200:
            player_in = "O"
        elif acc_x > 200:
            player_in = "R"
    
        # Check win condition
        if player_in == direction:
            # Player input correctly
            display.show(Image.HAPPY)
        else:
            display.show(Image.SAD)
        sleep(1000)
    
    0 và
    # Previous code...
    
    while True:
        # Previous code...
    
        # Get the X-axis (left-right) tilt
        acc_x = accelerometer.get_x()
        # Determine direction
        if acc_x < -200:
            player_in = "L"
        elif abs(acc_x) < 200:
            player_in = "O"
        elif acc_x > 200:
            player_in = "R"
    
        # Check win condition
        if player_in == direction:
            # Player input correctly
            display.show(Image.HAPPY)
        else:
            display.show(Image.SAD)
        sleep(1000)
    
    1 ở đây. Mô-đun
    # Previous code...
    
    while True:
        # Previous code...
    
        # Get the X-axis (left-right) tilt
        acc_x = accelerometer.get_x()
        # Determine direction
        if acc_x < -200:
            player_in = "L"
        elif abs(acc_x) < 200:
            player_in = "O"
        elif acc_x > 200:
            player_in = "R"
    
        # Check win condition
        if player_in == direction:
            # Player input correctly
            display.show(Image.HAPPY)
        else:
            display.show(Image.SAD)
        sleep(1000)
    
    2 được cài đặt sẵn MicroPython trên vi. bit, vì vậy bạn có thể gặp lỗi nếu cố gắng nhập nó khi chạy mã trên máy tính của mình
  2. Mô-đun
    # Previous code...
    
    while True:
        # Previous code...
    
        # Get the X-axis (left-right) tilt
        acc_x = accelerometer.get_x()
        # Determine direction
        if acc_x < -200:
            player_in = "L"
        elif abs(acc_x) < 200:
            player_in = "O"
        elif acc_x > 200:
            player_in = "R"
    
        # Check win condition
        if player_in == direction:
            # Player input correctly
            display.show(Image.HAPPY)
        else:
            display.show(Image.SAD)
        sleep(1000)
    
    3 cho phép bạn chọn một số ngẫu nhiên

Sau khi nhập, mã xác định danh sách

# Previous code...

while True:
    # Previous code...

    # Get the X-axis (left-right) tilt
    acc_x = accelerometer.get_x()
    # Determine direction
    if acc_x < -200:
        player_in = "L"
    elif abs(acc_x) < 200:
        player_in = "O"
    elif acc_x > 200:
        player_in = "R"

    # Check win condition
    if player_in == direction:
        # Player input correctly
        display.show(Image.HAPPY)
    else:
        display.show(Image.SAD)
    sleep(1000)
4. Điều này chứa ba ký tự đại diện cho các hướng có sẵn. Ưu điểm của việc xác định danh sách này bằng các ký tự là chúng có thể được hiển thị trực tiếp vì vi. màn hình bit chỉ có không gian cho một ký tự tại một thời điểm

Vòng lặp

# Previous code...

while True:
    # Previous code...

    # Get the X-axis (left-right) tilt
    acc_x = accelerometer.get_x()
    # Determine direction
    if acc_x < -200:
        player_in = "L"
    elif abs(acc_x) < 200:
        player_in = "O"
    elif acc_x > 200:
        player_in = "R"

    # Check win condition
    if player_in == direction:
        # Player input correctly
        display.show(Image.HAPPY)
    else:
        display.show(Image.SAD)
    sleep(1000)
5 cho vi mô biết. bit để chạy mã bên trong nó mãi mãi. Trong thực tế, điều này có nghĩa là nó sẽ chạy trong khi micro. bit được cấp nguồn. Bên trong, mã đầu tiên chọn một hướng ngẫu nhiên với
# Previous code...

while True:
    # Previous code...

    # Get the X-axis (left-right) tilt
    acc_x = accelerometer.get_x()
    # Determine direction
    if acc_x < -200:
        player_in = "L"
    elif abs(acc_x) < 200:
        player_in = "O"
    elif acc_x > 200:
        player_in = "R"

    # Check win condition
    if player_in == direction:
        # Player input correctly
        display.show(Image.HAPPY)
    else:
        display.show(Image.SAD)
    sleep(1000)
6 và hiển thị nó. Sau đó, nó ngủ trong một giây. Điều này buộc vi mô. bit để không làm gì trong một giây, điều này đảm bảo rằng người chơi có thời gian để xem hướng dẫn

Chạy mã của bạn

Bây giờ bạn có một số mã, bạn có thể chạy nó. Rất may, bạn không cần micro. bit để chạy mã của bạn vì trình chỉnh sửa của bạn đi kèm với trình giả lập tích hợp sẵn. Bạn có thể truy cập và chạy mã của mình bằng cách nhấp vào nút phát ở góc dưới cùng bên phải

Khi bạn nhấp vào nút phát, bạn sẽ thấy cửa sổ bật lên lớp phủ sau trong trình chỉnh sửa của mình

Trong đó, bạn sẽ thấy một micro. bit và màn hình sẽ hiển thị các ký tự ngẫu nhiên từ danh sách chỉ đường. Nếu không, hãy thử sao chép mã từ trên vào trình chỉnh sửa và nhấp lại vào nút phát

Ghi chú. việc tạo ra. trình mô phỏng withcode là một tài nguyên tuyệt vời, nhưng đôi khi nó có thể có một chút lỗi. Những điều sau đây có thể giúp ích nếu bạn gặp sự cố

  • Đôi khi, khi bạn dán mã vào trình chỉnh sửa, có vẻ như một nửa màn hình của trình chỉnh sửa đã biến mất. Nhấp vào bất kỳ đâu trong trình chỉnh sửa để quay lại
  • Nếu bạn không dừng mã của mình bằng cách nhấn vào nút màu đỏ trước khi chạy lại, đôi khi mã có thể chạy cả hai phiên bản mã cùng một lúc, gây ra kết quả lạ. Nhấn nút dừng màu đỏ trước khi chạy lại mã của bạn sẽ khắc phục sự cố này

Nếu bạn là một lập trình viên cao cấp hơn, bạn có thể thiết lập Visual Studio Code dưới dạng vi. môi trường phát triển bit bằng tiện ích mở rộng Device Simulator Express và mô-đun pseudo-microbit để tự động hoàn thành mã

Đây là quy trình phát triển chung mà bạn sẽ theo dõi trong phần còn lại của hướng dẫn

Loại bỏ các quảng cáo

Không bắt buộc. Chạy mã của bạn trên vi vật lý. chút

Nếu bạn có một micro vật lý. bit, sau đó có một số bước bổ sung để chạy mã của bạn. Bạn sẽ cần tải xuống tệp

# Previous code...

while True:
    # Previous code...

    # Get the X-axis (left-right) tilt
    acc_x = accelerometer.get_x()
    # Determine direction
    if acc_x < -200:
        player_in = "L"
    elif abs(acc_x) < 200:
        player_in = "O"
    elif acc_x > 200:
        player_in = "R"

    # Check win condition
    if player_in == direction:
        # Player input correctly
        display.show(Image.HAPPY)
    else:
        display.show(Image.SAD)
    sleep(1000)
7 và sau đó sao chép tệp đó vào micro của bạn. chút

Để tải xuống tệp

# Previous code...

while True:
    # Previous code...

    # Get the X-axis (left-right) tilt
    acc_x = accelerometer.get_x()
    # Determine direction
    if acc_x < -200:
        player_in = "L"
    elif abs(acc_x) < 200:
        player_in = "O"
    elif acc_x > 200:
        player_in = "R"

    # Check win condition
    if player_in == direction:
        # Player input correctly
        display.show(Image.HAPPY)
    else:
        display.show(Image.SAD)
    sleep(1000)
7, hãy tìm nút sau trong trình chỉnh sửa của bạn

Cái nào được nhúng hay python tốt nhất?

Điều này sẽ yêu cầu bạn lưu tệp vào máy tính của bạn. Lưu nó và sau đó lấy micro của bạn. chút. Kết nối micro của bạn. bit vào máy tính của bạn bằng cáp USB. Bạn sẽ thấy nó xuất hiện giống như ổ USB

Để lập trình micro. bit, hãy kéo tệp

# Previous code...

while True:
    # Previous code...

    # Get the X-axis (left-right) tilt
    acc_x = accelerometer.get_x()
    # Determine direction
    if acc_x < -200:
        player_in = "L"
    elif abs(acc_x) < 200:
        player_in = "O"
    elif acc_x > 200:
        player_in = "R"

    # Check win condition
    if player_in == direction:
        # Player input correctly
        display.show(Image.HAPPY)
    else:
        display.show(Image.SAD)
    sleep(1000)
7 đã tải xuống vào micro của bạn. chút. Đèn LED màu đỏ ở mặt sau của micro. bit nên nhấp nháy. Khi nó dừng lại, chương trình của bạn sẽ được tải vào thiết bị và sẽ bắt đầu thực thi ngay lập tức

Lời khuyên. Dưới đây là một số mẹo có thể giúp ích nếu bạn gặp khó khăn

  • Nếu bạn cần khởi động lại chương trình từ đầu, có một nút đặt lại ở mặt sau của micro. bit, bên cạnh đầu nối USB
  • Lỗi trong mã của bạn sẽ cuộn trên màn hình. Nếu bạn kiên nhẫn và xem chúng, chúng có thể cung cấp cho bạn manh mối hữu ích về cách sửa lỗi kịch bản của bạn

Bạn sẽ phải rất cố gắng để phá vỡ vi mô của mình. chút. Nếu xảy ra sự cố, hãy kiểm tra mã của bạn cẩn thận và đừng ngại thử mọi thứ, ngay cả khi bạn không chắc nó sẽ hoạt động

Bây giờ bạn đã có micro của mình. bit được thiết lập để phát triển, bạn đã sẵn sàng chuyển sang viết mã

Nhận đầu vào của người chơi

Bây giờ vi mô. bit có thể cho người chơi biết phải làm gì, đã đến lúc nhận thông tin đầu vào của người chơi. Để làm điều này, bạn sẽ sử dụng gia tốc kế. Gia tốc kế là một thiết bị đo chuyển động. Nó có thể cho biết nếu micro. bit đang di chuyển theo một hướng cụ thể và quan trọng là đối với trò chơi, cho dù vi mô. bit đang nghiêng theo một hướng cụ thể. Hãy nhìn vào sơ đồ sau

Cái nào được nhúng hay python tốt nhất?
Hình ảnh. Gareth Halfacree, CC-BY-SA (đã sửa đổi)

Trong sơ đồ, bạn sẽ thấy ba trục. X, Y và Z. Đây giống như các trục mà bạn có thể đã thấy trong đồ thị ở trường. Trục X biểu thị chuyển động từ bên này sang bên kia, trục Y biểu thị chuyển động lên xuống và trục Z biểu thị chuyển động về phía bạn hoặc ra xa bạn

Gia tốc kế trên micro. bit trả về các giá trị từ ba trục này. Vì trò chơi của bạn chỉ quan tâm đến việc nghiêng sang trái và phải, nên tất cả những gì bạn cần bây giờ là trục X.

# Previous code...

while True:
    # Previous code...

    # Get the X-axis (left-right) tilt
    acc_x = accelerometer.get_x()
    # Determine direction
    if acc_x < -200:
        player_in = "L"
    elif abs(acc_x) < 200:
        player_in = "O"
    elif acc_x > 200:
        player_in = "R"

    # Check win condition
    if player_in == direction:
        # Player input correctly
        display.show(Image.HAPPY)
    else:
        display.show(Image.SAD)
    sleep(1000)
00 trả về các giá trị trong phạm vi
# Previous code...

while True:
    # Previous code...

    # Get the X-axis (left-right) tilt
    acc_x = accelerometer.get_x()
    # Determine direction
    if acc_x < -200:
        player_in = "L"
    elif abs(acc_x) < 200:
        player_in = "O"
    elif acc_x > 200:
        player_in = "R"

    # Check win condition
    if player_in == direction:
        # Player input correctly
        display.show(Image.HAPPY)
    else:
        display.show(Image.SAD)
    sleep(1000)
01, trong đó
# Previous code...

while True:
    # Previous code...

    # Get the X-axis (left-right) tilt
    acc_x = accelerometer.get_x()
    # Determine direction
    if acc_x < -200:
        player_in = "L"
    elif abs(acc_x) < 200:
        player_in = "O"
    elif acc_x > 200:
        player_in = "R"

    # Check win condition
    if player_in == direction:
        # Player input correctly
        display.show(Image.HAPPY)
    else:
        display.show(Image.SAD)
    sleep(1000)
02 nghiêng hết sang trái và
# Previous code...

while True:
    # Previous code...

    # Get the X-axis (left-right) tilt
    acc_x = accelerometer.get_x()
    # Determine direction
    if acc_x < -200:
        player_in = "L"
    elif abs(acc_x) < 200:
        player_in = "O"
    elif acc_x > 200:
        player_in = "R"

    # Check win condition
    if player_in == direction:
        # Player input correctly
        display.show(Image.HAPPY)
    else:
        display.show(Image.SAD)
    sleep(1000)
03 nghiêng hết sang phải

Mã của bạn để nhận thông tin đầu vào của người chơi sẽ cần thực hiện ba bước

  1. Đọc giá trị X của gia tốc kế
  2. Quyết định xem giá trị X đó đại diện cho chuyển động trái, phải hay đứng yên
  3. Quyết định xem đó có phải là hướng chính xác để di chuyển không

Đây là mã để thực hiện các bước đó

# Previous code...

while True:
    # Previous code...

    # Get the X-axis (left-right) tilt
    acc_x = accelerometer.get_x()
    # Determine direction
    if acc_x < -200:
        player_in = "L"
    elif abs(acc_x) < 200:
        player_in = "O"
    elif acc_x > 200:
        player_in = "R"

    # Check win condition
    if player_in == direction:
        # Player input correctly
        display.show(Image.HAPPY)
    else:
        display.show(Image.SAD)
    sleep(1000)

Mã này dài hơn một chút vì bạn phải kiểm tra rất nhiều điều kiện khác nhau. Điều đầu tiên bạn làm là lấy giá trị trục X từ gia tốc kế với _______100. Hãy nhớ rằng, điều này sẽ nằm trong phạm vi

# Previous code...

while True:
    # Previous code...

    # Get the X-axis (left-right) tilt
    acc_x = accelerometer.get_x()
    # Determine direction
    if acc_x < -200:
        player_in = "L"
    elif abs(acc_x) < 200:
        player_in = "O"
    elif acc_x > 200:
        player_in = "R"

    # Check win condition
    if player_in == direction:
        # Player input correctly
        display.show(Image.HAPPY)
    else:
        display.show(Image.SAD)
    sleep(1000)
01

Sau khi nhận được giá trị X, bạn thực hiện một loạt kiểm tra để tìm ra chuyển động nào mà nó đại diện. Bất cứ thứ gì lớn hơn

# Previous code...

while True:
    # Previous code...

    # Get the X-axis (left-right) tilt
    acc_x = accelerometer.get_x()
    # Determine direction
    if acc_x < -200:
        player_in = "L"
    elif abs(acc_x) < 200:
        player_in = "O"
    elif acc_x > 200:
        player_in = "R"

    # Check win condition
    if player_in == direction:
        # Player input correctly
        display.show(Image.HAPPY)
    else:
        display.show(Image.SAD)
    sleep(1000)
06 theo một trong hai hướng được coi là nghiêng và bất cứ thứ gì nhỏ hơn
# Previous code...

while True:
    # Previous code...

    # Get the X-axis (left-right) tilt
    acc_x = accelerometer.get_x()
    # Determine direction
    if acc_x < -200:
        player_in = "L"
    elif abs(acc_x) < 200:
        player_in = "O"
    elif acc_x > 200:
        player_in = "R"

    # Check win condition
    if player_in == direction:
        # Player input correctly
        display.show(Image.HAPPY)
    else:
        display.show(Image.SAD)
    sleep(1000)
06 được coi là đứng yên

# Previous code...

while True:
    # Previous code...

    # Get the X-axis (left-right) tilt
    acc_x = accelerometer.get_x()
    # Determine direction
    if acc_x < -200:
        player_in = "L"
    elif abs(acc_x) < 200:
        player_in = "O"
    elif acc_x > 200:
        player_in = "R"

    # Check win condition
    if player_in == direction:
        # Player input correctly
        display.show(Image.HAPPY)
    else:
        display.show(Image.SAD)
    sleep(1000)
08 giúp rút ngắn mã bằng cách loại bỏ dấu âm khỏi giá trị gia tốc. Điều này có nghĩa là các số trong phạm vi
# Previous code...

while True:
    # Previous code...

    # Get the X-axis (left-right) tilt
    acc_x = accelerometer.get_x()
    # Determine direction
    if acc_x < -200:
        player_in = "L"
    elif abs(acc_x) < 200:
        player_in = "O"
    elif acc_x > 200:
        player_in = "R"

    # Check win condition
    if player_in == direction:
        # Player input correctly
        display.show(Image.HAPPY)
    else:
        display.show(Image.SAD)
    sleep(1000)
09 sẽ được coi là đứng yên. Bạn có thể muốn chơi với ngưỡng đó để làm cho trò chơi ít nhiều thử thách hơn

Sau khi nhận được hướng nhập từ đầu phát, bạn kiểm tra xem nó đã đúng hay chưa. Nếu đó là hướng chính xác, thì mã sẽ hiển thị một khuôn mặt vui vẻ. Nếu không, nó sẽ hiển thị một khuôn mặt buồn. Sau đó, mã sẽ ngủ trong một giây để cho phép người chơi xem kết quả mà không biến mất rất nhanh

Loại bỏ các quảng cáo

Kiểm tra mã gia tốc kế trong Trình mô phỏng

Vì gia tốc kế là một cảm biến phát hiện chuyển động vật lý, bạn có thể tự hỏi làm thế nào để tương tác với nó trong trình giả lập. Rất may, trình giả lập cung cấp một gia tốc kế ảo mà bạn có thể điều khiển bằng chuột

Chạy mã của bạn giống như cách bạn đã làm trước đây, bằng cách nhấp vào nút phát ở góc dưới cùng bên phải. Bạn sẽ thấy vi mô. lớp phủ bit xuất hiện. Lớp phủ có một số tab dọc theo đầu điều khiển các thành phần khác nhau của vi mô. chút. Nhấp vào tab có nhãn Gia tốc kế

Trong tab này, bạn sẽ thấy ba thanh trượt, một thanh trượt cho mỗi trục. Bạn sẽ sử dụng thanh trượt trục X để kiểm tra trò chơi của mình

Khi bạn di chuyển thanh trượt sang phải, giá trị X của gia tốc kế sẽ tăng lên. Tương tự, khi bạn di chuyển thanh trượt sang trái, giá trị X sẽ giảm xuống. Điều này tương đương với việc nghiêng micro. bit trái và phải và cho phép bạn chơi trò chơi của mình trong trình duyệt

Điểm và Mất

Bây giờ trò chơi cơ bản đã sẵn sàng, đã đến lúc nghĩ về việc thêm điểm và thua để hoàn thành trò chơi. Hãy nhớ hành vi được mô tả trong thông số kỹ thuật là khi người chơi thua, vi. bit sẽ hiển thị tổng số điểm mà người chơi đã đạt được cho đến thời điểm đó. Nếu người chơi làm đúng, micro. bit không nên hiển thị bất cứ điều gì

# Previous code...

while True:
    # Previous code...

    # Get the X-axis (left-right) tilt
    acc_x = accelerometer.get_x()
    # Determine direction
    if acc_x < -200:
        player_in = "L"
    elif abs(acc_x) < 200:
        player_in = "O"
    elif acc_x > 200:
        player_in = "R"

    # Check win condition
    if player_in == direction:
        # Player input correctly
        display.show(Image.HAPPY)
    else:
        display.show(Image.SAD)
    sleep(1000)
0

Rất may, đây là một thay đổi nhỏ hơn so với bước trước. Bên ngoài vòng lặp

# Previous code...

while True:
    # Previous code...

    # Get the X-axis (left-right) tilt
    acc_x = accelerometer.get_x()
    # Determine direction
    if acc_x < -200:
        player_in = "L"
    elif abs(acc_x) < 200:
        player_in = "O"
    elif acc_x > 200:
        player_in = "R"

    # Check win condition
    if player_in == direction:
        # Player input correctly
        display.show(Image.HAPPY)
    else:
        display.show(Image.SAD)
    sleep(1000)
0, bạn xác định một biến
# Previous code...

while True:
    # Previous code...

    # Get the X-axis (left-right) tilt
    acc_x = accelerometer.get_x()
    # Determine direction
    if acc_x < -200:
        player_in = "L"
    elif abs(acc_x) < 200:
        player_in = "O"
    elif acc_x > 200:
        player_in = "R"

    # Check win condition
    if player_in == direction:
        # Player input correctly
        display.show(Image.HAPPY)
    else:
        display.show(Image.SAD)
    sleep(1000)
21 sẽ theo dõi điểm của người chơi

Xa hơn nữa, bạn đã thay đổi kiểm tra xem đầu vào của người chơi có đúng hướng hay không. Nếu người chơi di chuyển đúng hướng, bạn sẽ tăng tổng số điểm của họ lên

# Previous code...

while True:
    # Previous code...

    # Get the X-axis (left-right) tilt
    acc_x = accelerometer.get_x()
    # Determine direction
    if acc_x < -200:
        player_in = "L"
    elif abs(acc_x) < 200:
        player_in = "O"
    elif acc_x > 200:
        player_in = "R"

    # Check win condition
    if player_in == direction:
        # Player input correctly
        display.show(Image.HAPPY)
    else:
        display.show(Image.SAD)
    sleep(1000)
22. Nếu không, bạn làm cho tổng số điểm cuộn qua màn hình với
# Previous code...

while True:
    # Previous code...

    # Get the X-axis (left-right) tilt
    acc_x = accelerometer.get_x()
    # Determine direction
    if acc_x < -200:
        player_in = "L"
    elif abs(acc_x) < 200:
        player_in = "O"
    elif acc_x > 200:
        player_in = "R"

    # Check win condition
    if player_in == direction:
        # Player input correctly
        display.show(Image.HAPPY)
    else:
        display.show(Image.SAD)
    sleep(1000)
23, hiển thị khuôn mặt buồn và đặt lại tổng số điểm

Bạn cũng di chuyển

# Previous code...

while True:
    # Previous code...

    # Get the X-axis (left-right) tilt
    acc_x = accelerometer.get_x()
    # Determine direction
    if acc_x < -200:
        player_in = "L"
    elif abs(acc_x) < 200:
        player_in = "O"
    elif acc_x > 200:
        player_in = "R"

    # Check win condition
    if player_in == direction:
        # Player input correctly
        display.show(Image.HAPPY)
    else:
        display.show(Image.SAD)
    sleep(1000)
24 vào mã mất mát vì không có hình ảnh nào được hiển thị để hiểu đúng. Điều này làm cho trò chơi khó khăn hơn một chút

Để giúp bạn kiểm tra mã của mình và củng cố những gì bạn đã học được, đây là mã đầy đủ của trò chơi

# Previous code...

while True:
    # Previous code...

    # Get the X-axis (left-right) tilt
    acc_x = accelerometer.get_x()
    # Determine direction
    if acc_x < -200:
        player_in = "L"
    elif abs(acc_x) < 200:
        player_in = "O"
    elif acc_x > 200:
        player_in = "R"

    # Check win condition
    if player_in == direction:
        # Player input correctly
        display.show(Image.HAPPY)
    else:
        display.show(Image.SAD)
    sleep(1000)
2

Chúc mừng bạn đã xây dựng trò chơi của riêng mình. Bạn sẽ nhận thấy mã này chỉ chiếm hơn ba mươi dòng bao gồm cả nhận xét, ngắn hơn nhiều so với một chương trình tương đương trong ngôn ngữ nhúng truyền thống

Tiến thêm một bước nữa

Vậy là xong rồi—bạn đã xây dựng một trò chơi hoàn chỉnh trên một hệ thống nhúng. Nếu bạn muốn có thêm một số thử thách, đây là một số ý tưởng

  • Kết hợp các trục gia tốc kế khác và biến nó thành một vi mô. phiên bản bit của Bop It
  • Rút ngắn thời gian người chơi phải di chuyển micro. bit nếu họ nhận được một số nhất định đúng. Thời gian ngắn nhất bạn có thể làm là gì?
  • Bao gồm cử chỉ gia tốc. Ra khỏi hộp, micro. bit có thể phát hiện rung lắc, úp mặt hoặc ngửa và thậm chí rơi tự do
  • Thêm chức năng nhiều người chơi để bạn có thể chơi với bạn bè. vi mô. bit có một mô-đun radio cho phép giao tiếp giữa các vi. chút ít

Danh sách này không dứt khoát nhưng thay vào đó sẽ khiến bạn phải suy nghĩ. Nếu bạn nghĩ ra một cách hay để kéo dài trò chơi, hãy chia sẻ nó trong phần bình luận

Đọc thêm

Phát triển nhúng là một lĩnh vực rộng lớn, có rất nhiều điều để học hỏi. Nếu bạn đang muốn tìm hiểu thêm về phát triển nhúng với Python, thì rất may là có rất nhiều tài nguyên tuyệt vời ngoài kia. Dưới đây là một số liên kết để giúp bạn bắt đầu

Loại bỏ các quảng cáo

vi mô. tài nguyên bit

Một trong những điều tốt nhất về micro. bit là bộ sưu tập khổng lồ các tài nguyên giáo dục ngoài kia

  • vi mô. tổ chức. vi chính thức. trang web bit với các dự án, bài học và nhiều trình chỉnh sửa mã hơn
  • vi mô. chút tài liệu MicroPython. Tài liệu rất dễ đọc về Python trên vi mô. chút
  • Xây dựng trò chơi rắn trên BBC micro. chút. Hướng dẫn cho một trò chơi phức tạp hơn giúp bạn thực hiện quy trình một cách chậm rãi

vi mô. bit Tổ chức giáo dục gần đây đã phát hành phiên bản thứ hai của micro. bit hy vọng sẽ khuyến khích một làn sóng tài nguyên hoàn toàn mới

Các bảng khác chạy Python

vi mô. bit không phải là bảng duy nhất ngoài kia. Nó chắc chắn đáng để khám phá để tìm ra cái phù hợp cho dự án của bạn

  • Hướng dẫn bảng MicroPython. MicroPython có một số hướng dẫn chính thức cho một số bảng mà nó hỗ trợ. Ví dụ: đây là cái dành cho ESP8266
  • Các dự án Hackaday được gắn thẻ MicroPython. Trang web này có các bài viết về các dự án mà mọi người đã xây dựng và có thể truyền cảm hứng cho bạn
  • hướng dẫn pycom. Pycom tạo ra các bảng tương thích với MicroPython có khả năng kết nối với nhiều mạng khác nhau. Những hướng dẫn này là một cách hay để có ý tưởng về những gì có thể

Có nhiều thiết bị thú vị hơn chạy Python. Bạn chắc chắn sẽ tìm thấy một cái phù hợp với dự án của mình

Phần kết luận

Python có thể là một lựa chọn tuyệt vời để viết mã cho các hệ thống nhúng. Nó cho phép bạn phát triển mã của mình nhanh hơn và đi kèm với các đảm bảo an toàn mà bạn sẽ không tìm thấy ở các ngôn ngữ cấp thấp hơn. Bây giờ bạn đã có kiến ​​thức để bắt đầu hành trình phát triển nhúng của mình với Python và quen thuộc với một số tùy chọn có sẵn cho bạn

Trong hướng dẫn này, bạn đã học

  • Phát triển nhúng là gì và tại sao bạn sẽ sử dụng Python để làm điều đó
  • Sự khác biệt giữa lập trình hệ thống nhúng và máy tính đa năng là gì
  • Những tùy chọn nào có sẵn để viết mã Python cho các hệ thống nhúng
  • Cách viết game cơ bản trên BBC micro. bit với MicroPython

Phát triển nhúng là một lĩnh vực rộng lớn và thú vị, chứa đầy những điều thú vị để khám phá. Hãy tiếp tục học hỏi và nhớ chia sẻ những khám phá của bạn trong phần bình luận bên dưới

Nếu bạn muốn download code từ bài hướng dẫn này để tham khảo offline thì click vào link bên dưới

Nhận mã mẫu. Nhấp vào đây để lấy mã mẫu mà bạn sẽ sử dụng để tìm hiểu về phát triển nhúng với Python trong hướng dẫn này

Đánh dấu là đã hoàn thành

🐍 Thủ thuật Python 💌

Nhận một Thủ thuật Python ngắn và hấp dẫn được gửi đến hộp thư đến của bạn vài ngày một lần. Không có thư rác bao giờ. Hủy đăng ký bất cứ lúc nào. Được quản lý bởi nhóm Real Python

Cái nào được nhúng hay python tốt nhất?

Gửi cho tôi thủ thuật Python »

Giới thiệu về Cameron MacLeod

Cái nào được nhúng hay python tốt nhất?
Cái nào được nhúng hay python tốt nhất?

Cameron là một giám đốc sản phẩm có trụ sở tại London, người viết cả Python và tiếng Anh trong thời gian rảnh rỗi

» Thông tin thêm về Cameron


Mỗi hướng dẫn tại Real Python được tạo bởi một nhóm các nhà phát triển để nó đáp ứng các tiêu chuẩn chất lượng cao của chúng tôi. Các thành viên trong nhóm đã làm việc trong hướng dẫn này là

Cái nào được nhúng hay python tốt nhất?

Aldren

Cái nào được nhúng hay python tốt nhất?

Bartosz

Cái nào được nhúng hay python tốt nhất?

Geir Arne

Cái nào được nhúng hay python tốt nhất?

Joanna

Cái nào được nhúng hay python tốt nhất?

Gia-cốp

Bậc thầy Kỹ năng Python trong thế giới thực Với quyền truy cập không giới hạn vào Python thực

Cái nào được nhúng hay python tốt nhất?

Tham gia với chúng tôi và có quyền truy cập vào hàng nghìn hướng dẫn, khóa học video thực hành và cộng đồng các Pythonistas chuyên gia

Nâng cao kỹ năng Python của bạn »

Bậc thầy Kỹ năng Python trong thế giới thực
Với quyền truy cập không giới hạn vào Python thực

Tham gia với chúng tôi và có quyền truy cập vào hàng ngàn hướng dẫn, khóa học video thực hành và cộng đồng Pythonistas chuyên gia

Nâng cao kỹ năng Python của bạn »

Bạn nghĩ sao?

Đánh giá bài viết này

Tweet Chia sẻ Chia sẻ Email

Bài học số 1 hoặc điều yêu thích mà bạn đã học được là gì?

Mẹo bình luận. Những nhận xét hữu ích nhất là những nhận xét được viết với mục đích học hỏi hoặc giúp đỡ các sinh viên khác. Nhận các mẹo để đặt câu hỏi hay và nhận câu trả lời cho các câu hỏi phổ biến trong cổng thông tin hỗ trợ của chúng tôi

Python có tốt cho các hệ thống nhúng không?

Python có thể được sử dụng trong các thiết bị phần cứng nhúng, nhỏ hoặc tối thiểu, tùy thuộc vào mức độ hạn chế thực sự của thiết bị .

Python hay C++ tốt hơn cho các hệ thống nhúng?

Mặc dù 95% hệ thống nhúng chạy trên C/C++ nhưng blog này sẽ giúp bạn hiểu tại sao nên chọn Python cho hệ thống nhúng. Đối với bất kỳ nhà phát triển phần mềm nào, Python là lựa chọn khôn ngoan nhất để xây dựng các hệ thống nhúng . Python đã thống trị bảng xếp hạng IEEE Spectrum cho tất cả các ngôn ngữ lập trình.

Ngôn ngữ nào tốt hơn Python?

JavaScript (Nút. js) nhanh hơn nhiều so với Python, Ruby và PHP. Nó cũng nhanh gần bằng các ngôn ngữ hiệu năng cao như C++, Java và Go.

Ngôn ngữ lập trình nào là tốt nhất cho nhúng?

Top 10 ngôn ngữ lập trình nhúng tốt nhất nên học năm 2023 .
Lập trình C. Do tính hiệu quả của nó, C là ngôn ngữ lập trình máy tính nhúng được sử dụng nhiều nhất. .
nhúng C. .
C++.
con trăn. .
Java. .
Ađa. .
Hội đồng. .