본문 바로가기
Development/MicroPython

[Pyboard] - Wiznet5K를 이용하여 이더넷통신을 해보자.

by 루카오리 2021. 10. 20.

https://ddnemo.tistory.com/121

 

[MicroPython] 알아보고 시작해보자 - pyboard

MicroPython 사양 MicroPython 은 다양한 마이크로 컨트롤러에서 실행되요. 인터프리터방식이기때문에 충분한 RAM, Flash 및 처리 성능을 갖춘 추가적인 마이크로 컨트롤러에 MicroPython 을 이식 할수 있어

ddnemo.tistory.com

위의 포스팅을 먼저 확인하여, 완료가 되었다면 다음을 진행하면 됩니다.

 

1. Github에서 받은 micropython 코드를 사용합니다.

2. micropython/ports/stm32 폴더로 이동합니다.

3. build-PYBV11 폴더가 있다면 아래의 Command를 이용하여 삭제해주세요

rm -rf ./build-PYBV11

4. 컴파일합니다.

make BOARD=PYBV11 MICROPY_PY_WIZNET5K=5500

컴파일이 되었다면....

다운로드 해주세요....

정상적으로 동작했다면, 아래와 같이  build-BOARDname  의 폴더 밑에 .bin / .dfu / .hex 파일이 생성됩니다.

즉, 컴파일을 할때 BOARD=PYBV11를 사용했기 때문에 build-PYBV11 의 폴더가 만들어집니다.

 

7. 보드에 다운로드를 하기 위해서는 dfu-util 이 필요합니다. 아래의 커맨드로 설치해줍니다.

sudo apt-get install dfu-util

설치 한 후 Pyboard에 핀 DFU 과 3.3v를 연결해줍니다. 전원을 꽂아줍니다.

부트모드일경우 빨간색 /파랑색 LED 가 켜져있어요.

 

전 가상머신으로 돌리고 있기때문에  USB setting에 가면 STM32 BOOTLOADER 가 있어 체크해줍니다.

dfu-util --alt 0-D <path to .dfu> 의 command를 이용하여 Micropython 을 업로드합니다.

dfu-util --alt 0 -D ./build-PYBV11/firmware.dfu

 

위와 같이 완료가 되며

  • 전원케이블을 뽑아요
  • Pin DFU에 연결된 점퍼를 뺍니다.
  • 전원을 다시 꽂아요

USB setting을 누르면 MicroPython Pyboard Virutal Comm Port in FS Mode 로 표시되는데, 클릭해줍니다.

8. MicroPython 코드를 쉽게 짜고 넣을 수 있도록 Thonny를 설치해줍니다.

sudo apt-get install thonny

micropython 보드를 USB에 꼽고 상단 메뉴 > Run > Select Interpreter 를 선택합니다
사용하고자하는 micropython 코드를 선택하고 Pyboard의 Port를 선택합니다.

 

# wiznet5K 
import network
from usocket import socket
from machine import Pin
import pyb
def main():
    nic = network.WIZNET5K(pyb.SPI(2),pyb.Pin.board.Y5,pyb.Pin.board.X3)
    nic.ifconfig(('192.168.100.20','255.255.255.0','192.168.100.1','8.8.8.8'))
    
    print(nic.ifconfig())
    print("regs ",nic.regs())
    s = socket()
    s.connect(('192.168.100.10',5000))
    while True:
        data = s.recv(1500)
        print(data.decode('utf-8'))
        if data != 'NULL' :
            s.send(data)
            
        
main()

Pyboard의 코드 및 동작 shell
pc의 Hercules(TCP Server)

'Development > MicroPython' 카테고리의 다른 글

RP2040 Reference 자료  (0) 2021.10.21
[MicroPython] 알아보고 시작해보자 - pyboard  (0) 2021.10.20