T-PICOC3(MICROPYTHON)으로 온습도(SHT30) 테스트. (2)

 T-PICOC3(MICROPYTHON)으로 온습도(SHT30) 테스트. (2)


이전 포스트 에서 간단히 T-PicoC3를 간단히 켜보는 것 까지 하고 이것저것 micro python 을 프로그래밍 하기 위한 IDE , 예제소스 등을 다운 받았다. 일단 micro python 을 프로그래밍하기 위한 Thonny 를 켜보자.


thonny

일단 좌측에 파일 뷰에서 경로를 내 프로젝트 경로를 지정하고, 이전 포스트에서 git 에서 예제를 다운 받았는데 , example / micropython 에서 st7789_mpy 는 경로를 추가 한건지 다운이 안되서 따로 추가로 다운받았다. 

그렇게 다운 받은 st7789_mpy 라이브러리에 examples 에서 hello.py 를 실행해 보자.

일단 처음에 삽질을 좀 했다. 컴포트를 연결해서 진행하는것 같은데... 아무리 해도 안되는데? 혹시나 리셋키를 눌른 상태에 run 버튼을 눌렀다가 두 버튼을 떼면 uf2 다운로드 모드로 들어간다. 이녀석에 대한건 구글링을 해서 찾아 보기 바람. 

나도 잘 모르니, 검색을 좀 해봤다.

uf2 부트로더를 rp2040 에 올려서 리셋후 버튼 조건이 맞으면 다운로드 모드로 들어가는것 같다. 

부트로더로 진입하면 usb mass storage 형태로 인식하면서 새로운 드라이브로 pc 에 연결된다. 

그후 .uf2 확장자로 만들어진 프로그램 파일을 복사해 넣으면 다운로드 완료.

참 간편하다. 이건 예전에 stm사의 stm32f103 nucleo 개발 보드 정품을 샀을때 처음 경험해 봤었다.

여튼 내가 원하는건 이런 모드가 아니다. 통신으로 잡혀서 진행 thonny 에서 다운로드가 가능한 형태로 변경 되어야 하는데... 이런 저런 테스트를 해보다가..... 

갑자기 thonny 에서 micro python 설치팝업이 뜨네.. 

thonny

uf2 모드에서 thonny 의 stop 버튼

uf2 thonny

저녀석을 눌렀더니 팝업창이 나왔다.

그래서 설치를 진행 하고 닫기를 누른뒤 stop 버튼을 다시 눌르니 두둥 이제 연결이 된것 같다.

thonny

자 이제 저 hello.py 를 돌려봐야지 하고 상단의 누가봐도 실행버튼을 눌러봤는데 

ImportError: no module named 'st7789'

임포트 에러가 뜬다. 

웅 그치 파일이 없네 근데 저건 어디에 있는거지 또 한참을 해매다가 st7789 라이브러리에 firmware 부분에 uf2 다운로드 파일들이 있네..

경로는 st7789 라이브러리/firmware/t-display-rp2040/firmware.uf2 이다.

이녀석을 올려보자 하고 t-display-rp2040폴더의 firmware.uf2 으로 uf2 다운로드를 진행하고 그리고 hello.py 를 raspberry pi pico 로 옮기고 그외 다른 tft_config 파일, vga1_bold_16x32  파일을 라이브러리에서 찾아 같이 옮겨주었다.

아 참고로 라이브러리내의 파일들의 경로는

hello.py -> st7789 라이브러리/examples/hello.py 

tft_config.py ->  st7789 라이브러리/examples/configs/tdisplay_rp2040/tft_config.py

vga1_bold_16x32.py ->  st7789 라이브러리/fonts/bitmap/vga1_bold_16x32.py 


옮기는 방법은 


thonny

파일 클릭후 / 에 업로드를 하면 올라간다. 

근데 실행 시키니 st7789 가 임포트 안된다는 말은 안나오지만 다른 에러가 발생?

보아하니 tft=tft_config.config(0) 파일에 3개의 매개변수가 들어가야 하는데 1개만 들어가서 발생하는것 같다. 

그래서 함수 원형을 보니. config(rotation, buffer_size, options) 였네 3개가 필요 한것 같다. 일단 원래 소스가 에 매개변수가  0이였으니, 0,0,0 으로 매개변수를 넣고 돌려보자.



오호 디스플레이는 일단 성공.

위의 소스를 기반으로 디스플레이는 테스트 진행 하고 다른 micro python 기능들을 테스트 해봐야겠다.

2탄 끝 다음글

댓글

이 블로그의 인기 게시물

T-PICOC3(MICROPYTHON)으로 WIFI 를 연결해보자. (1)

Raspberry Pi pico W 로 시계 및 날씨 확인 제품을 만들어 보자. (1) 구상 단계

Raspberry Pi Pico W로 시계 및 날씨 확인 제품을 만들어 보자. (4) ws2812 test 및 WIFI 시간 테스트