Seeeduino XIAO에서 CircuitPython 실행
개시하다
마이크로컴퓨터를 위한 파이토존 환경을 기반으로 한 마이크로소프트 파이토존, 애드애프루트가 개발한 것은 Circuit 파이토존이다.아두노의 C 언어에 비해 적은 기술력으로 높은 기능을 구현할 수 있고, 컴파일하지 않아도 쉽게 쓸 수 있다.
CircuitPython을 지원하는 마이크로컴퓨터
https://circuitpython.org/downloads
Adafruit사의 자사 마이크로컴퓨터 이외에 Seeeduino XIAO도 지원한다.
이 마이크로컴퓨터의 상세한 해설
https://qiita.com/nanase/items/0fed598975c49b1d707e
마이크로:bit도 마이크로파이톤을 통해 프로그래밍 가능
https://microbit.org/
Seeeduino XIAO는 마이크로: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은 세 세트를 판매합니다.
https://www.amazon.co.jp/dp/B086KXY929
Seeeduino XIAO 설정
Seeed의 HP에는 CircuitPython의 설치 방법이 자세히 적혀 있습니다.
https://wiki.seeedstudio.com/Seeeduino-XIAO/
https://wiki.seeedstudio.com/Seeeduino-XIAO-CircuitPython/
Seeeduino XIAO용 CircuitPython을 다운로드합니다.
https://circuitpython.org/board/seeeduino_xiao/
XIAO의 RST 단자를 2차례 합선하면 주황색 LED가 켜지고 아두노 드라이브가 PC에 나온다.
Seeed HP에서 Reset Animation을 빌렸어요.
그리고 다운로드한 파일을 이 드라이브에 복사본을 만듭니다.
복사가 끝나면 드라이브 이름이 CIRCUITTY로 변경됩니다.
MU 편집기에 파이썬 프로그램을 쓰고 이 드라이브에main을 씁니다.py로 저장하면 프로그램이 자동으로 실행됩니다.
입식 절차
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)
gif로 영상 삽입
참고하라는 Qita 입니다.
https://qiita.com/bohebohechan/items/f8bf6d4bbe0f14497a7b
MU 정보
MU 편집기에 대해서는 아래에 자세히 설명되어 있습니다.
https://qiita.com/inachi/items/8f61586cd2482987b8d0
모드 아이콘을 눌러 Adafruit CircuitPython 모드로 전환
MU가 USB를 인식하도록 설정
시퀀스 아이콘을 누르면 오류 메시지가 나타납니다.
Defalt에서 Adafluit의 마이크로컴퓨터판은 시퀀스 아이콘으로 연결된 것 같지만 Seeeduino XIAO는 직렬로 연결할 수 없습니다!
Seeeduino XIAO에 연결하는 USB VID: 0x2886 및 PID: 0x002f
C:/Users/%username%/AppData/Local/Mu/pkgs/mu/modes/adafruit.py
반드시 서류에 등록해야 한다.
https://www.seeedstudio.com/blog/2020/03/30/update-for-seeeduino-xiao-from-the-community/
Windows의 경우, 파일 관리자에서 숨겨진 파일 표시를 검사합니다.adafruit.편집기에서py를 열려면 Windows가 응고되기 때문에 파일의 확장자를py에서 txt로 변경하고 편집기에서 편집을 열면 확장자를py로 복원합니다.
67번째 줄처럼 쓰면 MU 편집기의 직렬 아이콘을 누르면 Seeeduino XIAO와 무사히 연결되며 트위터도 동작합니다.
트위터에 표시된 코드
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)
MCP 4922를 사용하여 SPI 통신을 통한 전압 출력
아두노에 쓴 글이 바로 여기 큐타입니다.
https://qiita.com/hiRina/items/b8756988210f7d2455e8
다음 코드는 CiurcuitPython이 성공적으로 완성한 것입니다
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)
참고 자료
Circuit Pytohon adafruit에 대해 기술한 HP
https://learn.adafruit.com/welcome-to-circuitpython
CircuitPython의 해설
https://learn.adafruit.com/circuitpython-essentials
CircuitPython의 예제
https://github.com/adafruit/Adafruit_Learning_System_Guides/tree/master/CircuitPython_Essentials
Reference
이 문제에 관하여(Seeeduino XIAO에서 CircuitPython 실행), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/fujioka244kogacity/items/da5842a4c6b7b68ce29c
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Seeed의 HP에는 CircuitPython의 설치 방법이 자세히 적혀 있습니다.
https://wiki.seeedstudio.com/Seeeduino-XIAO/
https://wiki.seeedstudio.com/Seeeduino-XIAO-CircuitPython/
Seeeduino XIAO용 CircuitPython을 다운로드합니다.
https://circuitpython.org/board/seeeduino_xiao/
XIAO의 RST 단자를 2차례 합선하면 주황색 LED가 켜지고 아두노 드라이브가 PC에 나온다.
Seeed HP에서 Reset Animation을 빌렸어요.
그리고 다운로드한 파일을 이 드라이브에 복사본을 만듭니다.
복사가 끝나면 드라이브 이름이 CIRCUITTY로 변경됩니다.
MU 편집기에 파이썬 프로그램을 쓰고 이 드라이브에main을 씁니다.py로 저장하면 프로그램이 자동으로 실행됩니다.
입식 절차
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)
gif로 영상 삽입참고하라는 Qita 입니다.
https://qiita.com/bohebohechan/items/f8bf6d4bbe0f14497a7b
MU 정보
MU 편집기에 대해서는 아래에 자세히 설명되어 있습니다.
https://qiita.com/inachi/items/8f61586cd2482987b8d0
모드 아이콘을 눌러 Adafruit CircuitPython 모드로 전환
MU가 USB를 인식하도록 설정
시퀀스 아이콘을 누르면 오류 메시지가 나타납니다.
Defalt에서 Adafluit의 마이크로컴퓨터판은 시퀀스 아이콘으로 연결된 것 같지만 Seeeduino XIAO는 직렬로 연결할 수 없습니다!
Seeeduino XIAO에 연결하는 USB VID: 0x2886 및 PID: 0x002f
C:/Users/%username%/AppData/Local/Mu/pkgs/mu/modes/adafruit.py
반드시 서류에 등록해야 한다.
https://www.seeedstudio.com/blog/2020/03/30/update-for-seeeduino-xiao-from-the-community/
Windows의 경우, 파일 관리자에서 숨겨진 파일 표시를 검사합니다.adafruit.편집기에서py를 열려면 Windows가 응고되기 때문에 파일의 확장자를py에서 txt로 변경하고 편집기에서 편집을 열면 확장자를py로 복원합니다.
67번째 줄처럼 쓰면 MU 편집기의 직렬 아이콘을 누르면 Seeeduino XIAO와 무사히 연결되며 트위터도 동작합니다.
트위터에 표시된 코드
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)
MCP 4922를 사용하여 SPI 통신을 통한 전압 출력
아두노에 쓴 글이 바로 여기 큐타입니다.
https://qiita.com/hiRina/items/b8756988210f7d2455e8
다음 코드는 CiurcuitPython이 성공적으로 완성한 것입니다
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)
참고 자료
Circuit Pytohon adafruit에 대해 기술한 HP
https://learn.adafruit.com/welcome-to-circuitpython
CircuitPython의 해설
https://learn.adafruit.com/circuitpython-essentials
CircuitPython의 예제
https://github.com/adafruit/Adafruit_Learning_System_Guides/tree/master/CircuitPython_Essentials
Reference
이 문제에 관하여(Seeeduino XIAO에서 CircuitPython 실행), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/fujioka244kogacity/items/da5842a4c6b7b68ce29c
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
# 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)
아두노에 쓴 글이 바로 여기 큐타입니다.
https://qiita.com/hiRina/items/b8756988210f7d2455e8
다음 코드는 CiurcuitPython이 성공적으로 완성한 것입니다
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)
참고 자료
Circuit Pytohon adafruit에 대해 기술한 HP
https://learn.adafruit.com/welcome-to-circuitpython
CircuitPython의 해설
https://learn.adafruit.com/circuitpython-essentials
CircuitPython의 예제
https://github.com/adafruit/Adafruit_Learning_System_Guides/tree/master/CircuitPython_Essentials
Reference
이 문제에 관하여(Seeeduino XIAO에서 CircuitPython 실행), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/fujioka244kogacity/items/da5842a4c6b7b68ce29c
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(Seeeduino XIAO에서 CircuitPython 실행), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/fujioka244kogacity/items/da5842a4c6b7b68ce29c텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)