[RPI-PICO] 라즈베리파이 피코 1 (RP2040) 부트롬 재컴파일해서 심기

Posted on

가끔 라즈베리파이 피코가 오작동하는 것이 느껴질 때가 있습니다. 오작동이 아니더라도 튜닝을 의도한다든가 하는 위자드리급 고수시라면 한번쯤 해볼만한 작업입니다. 우선 RP2040용으로 나온 부트롬은 아래 명령어로 받아올 수 있습니다. 해당 사이트에 가보면 해설이 나오는데, 컴파일하는 컴파일러의 버전이 딱 맞아야 합니다. 이후 버전으로 하면 pico-bootrom-rp2040/bootrom/bootrom.ld 의 ROM이 16K로 되어 있는 량을 늘려야 해서, RP2040의 표준에 안맞게 됩니다. 16K를 …

로직 아날라이저 개념 정리

Posted on

전자기기가 작동할때 전류가 흐르고 전압이 인가되어 있는 상태와 해제되어 있는 상태, 전압이 강하게 가해진 상태와 약하게 가해진 상태들이 공존합니다. 라즈베리파이 피코로 개발을 할때도 이런 전류와 전압 신호가 가해지면 작동 상태가 어떠어떠할 것이라는 분석이 되는 원리가 있습니다. 우선 전류는 아날로그 신호입니다. 아날로그 신호는 자연상태의 날 것 그대로의 신호로, 연속적으로 변화하는 양입니다. 그런데 이를 기기로 제어하려면 일정 …

[RPI-PICO] 오디오 쥬크박스 만들기 5

Posted on

라즈베리파이 피코와 오디오 모듈을 조합해서 wav 파일을 재생하는 기능을 구현하는게 가능합니다. 우선 하드웨어 설비는요. 라즈베리파이 피코1 1대오디오 모듈 1대모듈을 간편하게 다는 확장 보드 1대 (보조전원 있는 것으로)스피커 한쌍UART TO USB 1대USB 메모리 1개USB micro male, USB-A female 케이블 1개USB-A male, USB micro male 케이블 1개 중요한 작동은 (1) 외부 저장장치에서 wav 파일을 읽어오는 작동 (2) …

[RPI-PICO] 오디오 쥬크박스 만들기 4

Posted on

전에 쓴 3편을 조금 더 자세하게 보충해봅니다. 오류가 심각하게 안나도 되는게 일어나면 의지가 약화되네요. 오류없이 진행되면 하루에 다섯시간 이상 임하면서 진행을 해두는데, 이상한 오류가 겹치면 해결하느라 시간이 갑니다. 오류가 제작당시에 익히 있을법한 오류라면 그냥 임하면 되는데, 이게 그냥 일어나는 오류가 아니네요. 그래도 임해서 파악한 것들이 있어서 코드를 이리저리 검토해가면서 바꿔도 보고 추가도 해보고 있습니다. 지금까지 …

[RPI-PICO] 오디오 쥬크박스 만들기 3

Posted on

우선 WAV 파일을 라즈베리파이 피코에서 재생하려면 외부 모듈을 써서 디코딩이 가능한 하드웨어 구성을 해야 합니다. 보통 I2S 연결로 해서 I2S 방식으로 오디오 데이터를 재생합니다. 모듈마다 성능이 다른데, 제가 쓰는 Waveshare Pico-Audio 모듈은 오리지날 리비전으로 된 모듈이구요. 텍사스 인스트루먼트사의 PCM5101A를 DAC로 합니다. 즉 라즈베리파이 피코 보드 1대, 오디오 모듈 1대, 점퍼케이블만 있으면 일단 설비를 실험해볼 수 …

[RPI-PICO] picotool 재컴파일

Posted on

라즈베리파이 피코에서 picotool이 컴파일할때 필요합니다. CMake Warning (dev) at filename (message):[cmake] Calling FetchContent_Populate(picotool) is deprecated 이 메시지가 뜨고 프로젝트에 따라서는 어떤 일인지 CMake 작업도중 인터넷에서 받아와서 컴파일을 하는 것이 관찰되었네요. 안티바이러스로 인한 것처럼 보이게 딜레이가 있는 것도 겹치지만 일단 picotool을 재컴파일 하는게 필요합니다. 우선 윈도우에서 하려면요. MSYS2를 활용해서 유닉스 같은 컴파일 환경을 조성합니다. https://www.msys2.org 에 …

[RPI-PICO] UART 신호를 USB로 보내서 시리얼 모니터로 출력 메시지 확인하기

Posted on

라즈베리파이 피코를 쓰다보면 UART 신호를 USB로 보내서 시리얼 모니터로 출력 메시지를 확인해야 하는 경우가 있습니다. 이를 간편하게 하려면 UART to USB (아마존에서는 보통 USB to TTL로 검색이 되네요) 모듈을 구해서 써야 합니다. 라즈베리파이 피코에서 제공하는 uart0의 GP0과 GP1에 연결해서 쓰거나 uart1의 GP16, GP17에 연결해서 설정을 잘 해두면 외부 터미널 프로그램을 PC에서 실행해서 출력 메시지 확인이 …

[RPI-PICO] 라즈베리파이 피코를 호스트로 해서 USB MSC 모드 작동을 시켜볼때 필요한 이해 정리

Posted on

우선 하드웨어 구성을 단순화해보면요. 이런 구성이구요. 성공의 관건은 라즈베리파이 피코에 붙어 있는 USB 단자에 USB 메모리를 연결하면 작동하느냐입니다. 전원 공급을 받는 단자이기도 하고, PC와 통신하는 단자이기도 한데요. PC와 통신은 BOOTSEL 모드로 작동시키듯이 내장 플래시에 데이터를 주고받는게 되니, 이를 활용해서 USB 메모리를 달아보려고 하는데요. USB MSC (USB Mass Storage Class) 모드로 설정해서 해보려고 하네요. 하드웨어적인 지원이 …

1 2