
W6300을 이용하면 네트웍 전송속도가 빠르기 때문에 기존에 제작 했던 네트웍을으로 실시간 HDMI출력 속도를 더 빠르게 할수 있을것으로 기대가 된다.
[W55RP20 SSM] HDMI 출력 테스트 - 실시간 화면캡쳐 후 이미지 전송
W55RP20 SSM HDMI 출력 예제를 이용하여 실시간으로 이미지를 전송 할 수 있도록 수정해 보았다. 320x240 BMP 이미지를 전송하기 때문에 320x240x16 = 153600 Byte가 전송되며 대략 1.2Mbit 정도 되는 데이터 이
nexp.tistory.com
먼저 [RP2350-W6300 SSM] 보드로 HSTX로 HMDI출력을 해보자.
RP2350 SSM 보드를 이용하면 기존에 제작 했던 HDMI출력 확장 테스트 보드를 활용하여 DVI출력을 할 수 있다. RP2350의 HSTX 출력 핀은 GP12 ~ GP19에 할당되어 있으므로 아래 핀맵으로 연결 할 수 있다.

RP2350 SM - HSTX를 이용한 DIV 테스트 코드를 이용하면 HDMI로 출력 할 수 있다.
다만 핀맵은 수정할 필요가 있다.
// HSTX outputs 0 through 7 appear on GPIO 12 through 19.
// Pinout on Pico DVI sock:
//
// GP13 CK+ GP12 CK-
// GP15 D0+ GP14 D0-
// GP17 D1+ GP16 D1-
// GP19 D2+ GP18 D2-
// Assign clock pair to two neighbouring pins:
hstx_ctrl_hw->bit[1] = HSTX_CTRL_BIT0_CLK_BITS;
hstx_ctrl_hw->bit[0] = HSTX_CTRL_BIT0_CLK_BITS | HSTX_CTRL_BIT0_INV_BITS;
for (uint lane = 0; lane < 3; ++lane) {
// For each TMDS lane, assign it to the correct GPIO pair based on the
// desired pinout:
static const int lane_to_output_bit[3] = {2, 4, 6};
int bit = lane_to_output_bit[lane];
// Output even bits during first half of each HSTX cycle, and odd bits
// during second half. The shifter advances by two bits each cycle.
uint32_t lane_data_sel_bits =
(lane * 10 ) << HSTX_CTRL_BIT0_SEL_P_LSB |
(lane * 10 + 1) << HSTX_CTRL_BIT0_SEL_N_LSB;
// The two halves of each pair get identical data, but one pin is inverted.
hstx_ctrl_hw->bit[bit + 1] = lane_data_sel_bits;
hstx_ctrl_hw->bit[bit] = lane_data_sel_bits | HSTX_CTRL_BIT0_INV_BITS;
}
for (int i = 12; i <= 19; ++i) {
gpio_set_function(i, 0); // HSTX
}
테스트 결과 정상으로 HDMI출력이 되는것을 확인할 수 있다.

앞으로 네트웍을 통한 이미지 전송테스트를 진행해 보자.
반응형