Winbond W25Q 플래시 칩과 상호 작용하는 Micropython 라이브러리
최신 문서는 Micropython Winbond Readthedocs에서 제공됩니다
Python3은 시스템에 설치해야합니다. 다음 명령으로 현재 Python 버전을 확인하십시오
python --version
python3 --version 어떤 명령 Python 3.xy (일부 숫자로 xy)가 반환되는 경우 해당 명령을 사용하여 진행하십시오.
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt장치의 파일 시스템과의 상호 작용을 위해 원격 마이크로 파이썬 쉘을 사용할 수 있습니다.
사람/도움말 정보 설명을 보여줌으로써 도구를 테스트하십시오.
rshell --helpMicropython 장치를 네트워크에 연결하십시오 (가능한 경우)
import network
station = network . WLAN ( network . STA_IF )
station . active ( True )
station . connect ( 'SSID' , 'PASSWORD' )
station . isconnected ()Micropython 장치 에이 LIB의 최신 패키지 버전을 설치하십시오.
import mip
mip . install ( "github:brainelectronics/micropython-winbond" ) 1.19.1 미만의 Micropython 버전의 경우 mip 대신 upip 패키지를 사용하십시오.
import upip
upip . install ( 'micropython-winbond' )Micropython 장치 에이 LIB의 특정 고정 패키지 버전을 설치하십시오.
import mip
# install a verions of a specific branch
mip . install ( "github:brainelectronics/micropython-winbond" , version = "feature/add-docs-and-detailed-examples" )
# install a tag version
mip . install ( "github:brainelectronics/micropython-winbond" , version = "0.4.0" ) 1.19.1 미만의 Micropython 버전의 경우 mip 대신 upip 패키지를 사용하십시오. upip 사용하면 항상 사용 가능한 최신 버전이 설치됩니다.
import upip
upip . install ( 'micropython-winbond' )Micropython 장치의 모든 PR에서 Python 패키지 인덱스를 테스트하기 위해 업로드 된 특정 릴리스 후보 버전을 설치하십시오. 특정 버전이 설정되지 않으면 최신 안정 버전이 사용됩니다.
import mip
mip . install ( "github:brainelectronics/micropython-winbond" , version = "0.4.0-rc2.dev4" ) 1.19.1 미만의 Micropython 버전의 경우 mip 대신 upip 패키지를 사용하십시오. upip 사용하면 항상 사용 가능한 최신 버전이 설치됩니다.
import upip
# overwrite index_urls to only take artifacts from test.pypi.org
upip . index_urls = [ 'https://test.pypi.org/pypi' ]
upip . install ( 'micropython-winbond' )Docker에서 실행되는 테스트 PYPI 서버에 대한 Docker의 BrainElectronics Test PYPI 서버를 참조하십시오.
모듈을 Micropython 보드에 복사하여 원격 Micropython Shell을 사용하여 아래 그림과 같이 가져옵니다.
다음 명령으로 원격 쉘을 엽니 다. CP210X를 사용하지 않고 CH34X가 사용되지 않는 경우 -b 115200 사용하십시오.
rshell -p /dev/tty.SLAB_USBtoUART --editor nano rshell 내부에서 다음 명령을 수행하여 모든 파일과 폴더를 장치에 복사하십시오.
mkdir /pyboard/lib
mkdir /pyboard/lib/winbond
cp winbond/ * /pyboard/lib/winbond
cp main.py /pyboard/lib/winbond
cp boot.py /pyboard/lib/winbond from machine import SPI , Pin
import os
from winbond import W25QFlash
# the used SPI and CS pin is setup specific, change accordingly
# check the boot.py file of this repo for further boards
flash = W25QFlash ( spi = SPI ( 2 ), cs = Pin ( 5 ), baud = 2000000 , software_reset = True )
flash_mount_point = '/external'
try :
os . mount ( flash , flash_mount_point )
except Exception as e :
if e . errno == 19 :
# [Errno 19] ENODEV aka "No such device"
# create the filesystem, this takes some seconds (approx. 10 sec)
print ( 'Creating filesystem for external flash ...' )
print ( 'This might take up to 10 seconds' )
os . VfsFat . mkfs ( flash )
else :
# takes some seconds/minutes (approx. 40 sec for 128MBit/16MB)
print ( 'Formatting external flash ...' )
print ( 'This might take up to 60 seconds' )
# !!! only required on the very first start (will remove everything)
flash . format ()
# create the filesystem, this takes some seconds (approx. 10 sec)
print ( 'Creating filesystem for external flash ...' )
print ( 'This might take up to 10 seconds' )
# !!! only required on first setup and after formatting
os . VfsFat . mkfs ( flash )
print ( 'Filesystem for external flash created' )
# finally mount the external flash
os . mount ( flash , flash_mount_point )kudos와 big in micropython 포럼의 Crizeo와 그의 게시물에 감사합니다.