CircuitPython wurde von Adafruit auf der Basis von MicroPython entwickelt, einer Python-Umgebung für Mikrocomputer. Im Vergleich zu Arduinos C-Sprache kann es eine hohe Funktionalität mit weniger Beschreibung realisieren und es kann einfach geschrieben werden, ohne dass eine Kompilierung erforderlich ist.
Circuit Python-kompatibler Mikrocomputer https://circuitpython.org/downloads
Neben Adafruits eigenem Mikrocomputer unterstützt es auch Seeeduino XIAO.
Detaillierte Erklärung dieses Mikrocomputers https://qiita.com/nanase/items/0fed598975c49b1d707e
micro: bit kann auch in MicroPython programmiert werden https://microbit.org/
Seeeduino XIAO ist billiger und hat eine höhere Taktfrequenz als micro: bit.
microbit(MCU:ARM Cortex M0 + 32bit 16 MHz(Nordic nRF51822 )) https://www.switch-science.com/catalog/5263/
Seeduino XIAO(CPU:ARM Cortex-M0 + 32bit 48 MHz(SAMD21G18)) https://www.switch-science.com/catalog/6335/ Amazon verkauft ein 3er-Set https://www.amazon.co.jp/dp/B086KXY929
HP von Seeed enthält detaillierte Anweisungen zur Installation von Circuit Python. https://wiki.seeedstudio.com/Seeeduino-XIAO/ https://wiki.seeedstudio.com/Seeeduino-XIAO-CircuitPython/
Laden Sie CircuitPython für Seeeduino XIAO herunter. https://circuitpython.org/board/seeeduino_xiao/
Wenn Sie den RST-Anschluss von XIAO zweimal kurzschließen, leuchtet die orangefarbene LED auf und das Arduino-Laufwerk erscheint im PC. Von Seeed HP ausgeliehenes und eingefügtes Video zurücksetzen
Legen Sie dann die heruntergeladene Datei auf diesem Laufwerk ab und erstellen Sie eine Kopie.
Nach dem Kopieren ändert sich der Laufwerksname in CIRCUITPY.
Wenn Sie ein Python-Programm im Mu-Editor schreiben und es als main.py auf diesem Laufwerk speichern, wird das Programm automatisch ausgeführt.
L Chika-Programm
main.py
import time
import board
from digitalio import DigitalInOut, Direction
led = DigitalInOut(board.D13)
led.direction = Direction.OUTPUT
while True:
led.value = True
time.sleep(0.5)
led.value = False
time.sleep(0.5)
Ich habe versucht, das Video mit GIF einzubetten
Qiita, auf die ich mich beziehen durfte https://qiita.com/bohebohechan/items/f8bf6d4bbe0f14497a7b
Der Mu-Editor wird im Folgenden ausführlich erläutert. https://qiita.com/inachi/items/8f61586cd2482987b8d0
Drücken Sie auf das Symbol "Modus", um in den Modus "Adafruit Circuit Python" zu wechseln
Ich erhalte eine Fehlermeldung, wenn ich auf das Symbol "seriell" drücke
In Defalt scheint die Mikrocomputerplatine von Adafruit eine Verbindung herzustellen, wenn Sie auf das serielle Symbol drücken, aber Seeeduino XIAO kann keine serielle Verbindung herstellen!
Sieheeduino XIAO USB VID: 0x2886 und PID: 0x002f zum Verbinden C:/Users/%username%/AppData/Local/Mu/pkgs/mu/modes/adafruit.py Sie müssen es in der Datei registrieren. https://www.seeedstudio.com/blog/2020/03/30/update-for-seeeduino-xiao-from-the-community/
Überprüfen Sie im Fall von Windows die Anzeige versteckter Dateien im Dateimanager. Windows friert ein, wenn Sie versuchen, adafruit.py mit einem Editor zu öffnen. Ändern Sie daher die Dateierweiterung von py in txt, öffnen Sie sie mit einem Editor und bearbeiten Sie sie. Ändern Sie die Erweiterung wieder in py.
Als ich es wie die 67. Zeile schrieb und das "serielle" Symbol im Mu-Editor drückte, stellte es eine sichere Verbindung zu Seeeduino XIAO her, und der "Plattenteller" funktionierte auch.
Code wird im Plotter angezeigt
main.py
# CircuitPython AnalogIn Demo
import time
import board
from analogio import AnalogIn
analog_in = AnalogIn(board.A1)
def get_voltage(pin):
return (pin.value * 3.3) / 65536
while True:
print((get_voltage(analog_in),))
time.sleep(0.1)
Der Artikel, den ich bei Arduino gemacht habe, ist hier Qiita https://qiita.com/hiRina/items/b8756988210f7d2455e8
Der folgende Code hat dies mit Ciurcuit Python geschafft
main.py
#-------------------------------------
# Import
#-------------------------------------
import board
import busio
import digitalio
from digitalio import DigitalInOut, Direction, Pull
import time
#-------------------------------------
# VAL
#-------------------------------------
t=0.01
#-------------------------------------
# PIN
#-------------------------------------
led = DigitalInOut(board.D13)
led.direction = Direction.OUTPUT
#-------------------------------------
ADC = DigitalInOut(board.D0)
ADC.direction = Direction.OUTPUT
#-------------------------------------
cs=digitalio.DigitalInOut(board.D7)
cs.direction=digitalio.Direction.OUTPUT
cs.value=True
#-------------------------------------
# SPI
#-------------------------------------
spi = busio.SPI(board.SCK, MOSI=board.MOSI)
while not spi.try_lock():
pass
spi.configure(baudrate=10000000, phase=0, polarity=0)
#-------------------------------------
# loop
#-------------------------------------
while True:
#--------------------------
led.value = False
ADC.value = True
cs.value = False
spi.write(bytes([0x3F,0xFF]))
cs.value = True
ADC.value = False
time.sleep(t)
#--------------------------
ADC.value = True
cs.value = False
spi.write(bytes([0x30,0x00]))
cs.value = True
ADC.value = False
time.sleep(t)
#--------------------------
led.value = True
ADC.value = True
cs.value = False
spi.write(bytes([0xBF,0xFF]))
cs.value = True
ADC.value = False
time.sleep(t)
#--------------------------
ADC.value = True
cs.value = False
spi.write(bytes([0xB0,0x00]))
cs.value = True
ADC.value = False
time.sleep(t)
HP, die adafruit über Circuit Python beschreibt https://learn.adafruit.com/welcome-to-circuitpython
Erklärung von Circuit Python https://learn.adafruit.com/circuitpython-essentials
Circuit Python Beispiel https://github.com/adafruit/Adafruit_Learning_System_Guides/tree/master/CircuitPython_Essentials
Recommended Posts