목록전체 글 (625)
마음 속 하늘은 항상 맑음~!
Waveshare의 1.54인치 디스플레이를 사용하여 업데이트 하는 전자잉크는 화면이 업데이트 될 때 마다 번쩍번쩍 하는 효과가 나타난다. 이를 없앨려면 부분 리프레시(Partial Refresh)라는 디스플레이 모드2를 사용하는데 이게 제대로된 설명을 찾을 수 없었다. 1. 디스플레이 프레임 버퍼는 2개였다. 디스플레이를 테스트 하는 중에 부분 리프레시를 위해 화면을 업데이트하는 명령을 보내면 2번마다 반복되는 화면을 얻었다. display_part_frame()을 사용하면 부분 리프레시를 수행하는데 2개의 디스플레이 프레임 반복하면서 2개의 프레임 메모리를 화면에 보여주었다. 2. 부분 리프레시 초기화에서는 전체 리프레시를 하고 부분 리프레시로 초기화를 해야한다. 부분 리프레시를 하기 위해 초기화를 ..
저렴한 알리발 waveshare 1.54인치 전자잉크 모듈을 구입했는데 처음부터 난관에 봉착했다. 문제의 원인은 최신 모듈은 2020년 즈음에 업데이트 되었는데 인터넷에 돌아다니는 모듈 드라이버들이 그 이전의 V1의 사양으로 만들어진 것 때문이었다. V2의 아두이노 소스를 위키에서 찾아서 클로드에 변환을 요청하고 약간 수정해서 적용시키니 문제없이 작동했다. 하지만 생각 외의 다른 문제가 있었는데, 200x200의 해상도 때문에 더 많은 버퍼메모리를 프레임 메모리로 사용해야 한다. 이는 메모리가 적은 아두이노 보드에서는 힘든 문제가 될 수 있다. 게다가 BW가 아닌 BW-RED의 패널도 있는데 이는 RED는 따로 버퍼메모리를 가져야 한다. 작은 아두이노에서 OLED가 저렴하고 간단하고 수명도 긴 디스플..
인터넷 서핑 중에 https://gp2040-ce.info/ 라는 조이패드를 만드는 RP2040 기반의 프로젝트를 발견했다. 그래서 만들기로 하고 알리에서 RP2040-ZERO라는 미니 보드와 그냥 아무런 싼 조이스틱을 구입해서 바로 제작. 설명에 보면 반응 속도와 기능이 좋고 매크로도 지원한다. 구입한 조이스틱은 예측한 것처럼 당연하게도 그대로의 기능에는 XInput가 지원이 안된다. 그냥 USB 조이스틱의 기능만을 가졌다. 이를 XInput가 지원되는 조이스틱으로 만들려고 하는 작업이다. 그리고 RP2040-ZERO를 선택한 이유는 너무 보드가 크면 조이스틱 안에 구겨넣을 수 없다. 그래서 큰 크기를 가진 원래 RP2040을 사용하기 어렵다. GP2040-CE는 많은 RP2040 호환 보드를 지원하는..