User Tools

Site Tools


nano_ardule_midi_controller:midi_in_signal_handling_circuit_troubleshooting_guide

MIDI IN 신호 처리 회로 점검 가이드

하드웨어 제작을 마치고 단계별로 코딩을 해 나가는 과정에서 MIDI 신호 수신이 전혀 되지 않는 것을 발견하였다(2025년 8월 27일). PC900을 사용한 동일한 회로로 MIDI 신호를 SAM9703 도터보드로 보내는 것에는 이미 성공하였기에 Nano Ardule에서 이런 결과가 나오는 것은 매우 의외였다. 단순 배선 실수가 아니고선 벌어지기 어려운 일이다. 왜냐하면 겨우 저항과 다이오드 하나로 이루어진 매우 단순한 신호 경로이기 때문이다. ChatGPT와 상의하면서 문제를 해결해 보기로 하겠다.

PC900에는 아무런 문제가 없었다. 기판 배선을 하면서 남은 Burnley soldering paste에 의한 전류 누설이 원인이었던 것 같다. 알콜 세척을 하니 잘 작동한다! 따라서 아래의 테스트는 할 필요가 없어졌다. 단지 기록을 위해 남겨 둔다.


아두이노 나노에 MIDI IN 회로를 연결했는데 수신이 되지 않을 경우, 아래 단계별 절차를 따라 점검하면 문제를 좁힐 수 있습니다.

1. DIN5 커넥터 배선 확인

  • 표준 배선
    • 핀 4 → 직렬 저항(220Ω) → 옵토커플러 LED 애노드(+)
    • 핀 5 → 옵토커플러 LED 캐소드(–)
    • 핀 2(GND)는 연결하지 않음 (MIDI IN은 절연 구조)
  • 주의: DIN 커넥터는 보는 방향에 따라 핀 번호 착시가 매우 흔하므로 반드시 도면과 대조

2. 옵토커플러 입력 LED 측 점검

  • 멀티미터 다이오드 모드 → 정방향 1.1~1.3 V 강하 확인
  • MIDI 신호가 들어올 때 LED에 약 1~5 mA 전류가 흐르는지 확인
  • 전류가 없으면 DIN 배선 또는 직렬 저항 문제

3. 옵토커플러 출력 측 점검

  • PC900 콜렉터에 로드(풀업) 저항 필요
    • 표준값: RD ≈ 280Ω (rise/fall 빠르게, MIDI 1.0 권장)【ca33.pdf】
    • 대체: 1kΩ~4.7kΩ도 동작 가능하나 파형이 느려짐
  • 정상 동작
    • 건반 누름: 콜렉터 전압 ≈ 0.2 V (Low)
    • 건반 뗌: 콜렉터 전압 ≈ 5 V (High)

4. 신호 정형 (Buffer 단계)

  • PC900 출력은 완벽한 TTL 파형이 아닐 수 있음
  • 74HC14(슈미트 트리거 인버터) 1게이트를 사이에 넣으면 안정적

5. 아두이노 RX 입력 확인

  • PC900 출력(또는 74HC14 출력) → 나노 RX0(D0) 연결
  • 스케치: Serial.begin(31250) 로 열고 수신 바이트 출력
  • TX→RX 점퍼 루프백 OK인데 MIDI 신호만 안 잡히면 → 회로 쪽 문제

6. 파형 확인 (오실로스코프 사용 시)

  • Idle 상태 = 5 V
  • 데이터 전송 시 = 0~5 V 펄스, rise/fall < 2 µs 권장【ca33.pdf】
  • High가 5 V로 충분히 올라가지 않거나 에지가 둔하면 → 로드 저항 조정 필요

✅ 최종 요약

  • DIN 배선 확인 (가장 흔한 오류)
  • PC900 LED 정방향 전류 확인
  • 출력 로드 저항 값 검증 (280Ω ~ 1kΩ)
  • 74HC14 버퍼 추가 권장
  • RX 연결 및 수신 스케치 확인
  • 가능하면 오실로스코프로 펄스 품질 점검
nano_ardule_midi_controller/midi_in_signal_handling_circuit_troubleshooting_guide.txt · Last modified: by hyjeong