Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- x99 itx/ac
- Linux #VirtualBox
- TensorFlow #Python #pip
- centos7 #yum update #/boot
- 매크로렌즈 #리버스링
- ITOP40
- XTU #Virtual Machine System
- Xeon #E5-2680
- Callaway #Mavrik #Epic Flash
- macro lens #EF #FD
- CM-EF-NEX
- razer #deathadder #viper #g102
- Arduino #Wall Plotter
- Arduino #PlatformIO #macOS
- k6 #피코프레소
- VNC #Firewall #CenOS7 #VMware
- ESP32 #Arduino
- VirtualBox #VMware
- fat32 #rufus
- Octave #homebrew #macOS
- VMware #Shared Folder
- 피코프레소 #ITOP40
- Oh My Zsh #macOS
- Tarantula #3D 프린터
- Laptop #CPUID
- egpu #aorus gaming box #gtx1070 #tb3
- 다이슨 #배터리
- Java #MacBook #macOS
- cycloidal #rv reducer
- Dell #Latitude #BIOS
Archives
- Today
- Total
얕고 넓게
[3DP] Marlin + ili9488 본문
2025.03.24
ChatGPT를 다시 활용
✅ 수정 포인트 요약
1. 색상 포맷 정의 (색상 변환 부분)
색상은 보통 drawPixel, setColor, drawBitmap 등의 함수에서 처리되며, 다음 위치들을 확인해야 합니다:
📁 Marlin/src/lcd/tft/ 디렉토리 내:
- tft_io/ → LCD I/O 정의 (SPI 전송 포함)
- tft_color.h 또는 tft_color.cpp → 색상 변환 함수
- tft_spi_ili9488.cpp → 드라이버별 구현 (특정 드라이버 대응)
2. 색상 전송 포맷 변환
ILI9488은 18bit(RGB666) 를 요구하므로, Marlin에서 사용하는 16bit RGB565 포맷을 18bit로 변환해주는 코드가 필요합니다.
예를 들어 16bit 색상을 다음처럼 분리하고 전송해야 합니다:
// RGB565 → RGB666 변환 예시
uint16_t color = 0xF800; // 예시 (빨강)
uint8_t r = (color >> 11) & 0x1F; // 5bit
uint8_t g = (color >> 5) & 0x3F; // 6bit
uint8_t b = color & 0x1F; // 5bit
// 5/6 bit → 6bit 확장
uint8_t r6 = (r * 255 / 31) >> 2; // 또는 (r << 3) & 0xFC
uint8_t g6 = (g * 255 / 63) >> 2;
uint8_t b6 = (b * 255 / 31) >> 2;
// 전송 (3바이트)
spi_send(r6);
spi_send(g6);
spi_send(b6);
👉 이 변환은 보통 writePixel 또는 writeColor류의 함수 안에 들어가게 됩니다.
3. tft_spi_ili9488.cpp 드라이버 파일 커스터마이징
ILI9488 전용 파일에서 직접 SPI 전송을 수정해야 할 수 있습니다.
예시 위치:
Marlin/src/lcd/tft/tft_drivers/st7789/tft_spi_ili9488.cpp
또는
Marlin/src/lcd/tft/tft_io/tft_io_spi.cpp
여기서 다음을 수정합니다:
- 기존에 2바이트만 전송하는 SPI 루틴을
- 3바이트 (R, G, B → 각 6bit) 전송으로 변경
'IT > 3D Printer, CNC' 카테고리의 다른 글
[3DP] KP3S 히트파이프 고장 수리 (0) | 2025.03.28 |
---|---|
[3DP] KP3S Marlin 2.1.2.5 (0) | 2025.03.26 |
[3DP] Ultimaker XY mechanism 비교 (0) | 2025.03.24 |
[3DP] Sunhokey i4 수리 (0) | 2025.02.01 |
[3DP] Prusa i4 자료 (0) | 2025.01.17 |