오디오 쿠키는 작고 재미있는 오디오 툴들을 제작합니다

    EW4SM 목차
  1. LED Level Meter
  2. 기초 회로 실습
  3. Arduino
    1. 프로그래밍 기초
    2. 연산자와 IF문
    3. PAN Knob 구현
    4. FOR Loop, 레벨 표시
    5. Serial로 값 표시
    6. DO-WHILE 문법
    7. FUNCTION 사용
  4. Mini Powered Speaker
  5. Fader Box
    1. Passive Volume
    2. Transformer
    3. Digital UP/DOWN
    4. Digital Volume I
    5. Digital Volume II
    6. Fader ADC
    7. Balanced Output
    8. D.Volume & Balanced
    9. Flying Fader
  6. USB AudioBox (DAC)
    1. AudioBox
  7. MIDI Controller 만들기
    1. Hardware Setup
    2. MIDI Spec.
    3. MIDI Software Programming

Digital Volume 2.2 : Numeric Version Programming

디지털 컨트롤 볼륨 만들기, 프로그래밍입니다. 지난번에 만든 PT2258 버전의 프로그래밍에 관한 내용입니다.

:: PT2258 데이터시트 다운로드

프로그래밍에 관한 내용은 전부 데이터시트를 참조해야 합니다. 필요한 모든 것이 데이터시트에 나와 있습니다.
내게 필요한 내용을 데이터시트에서 못 찾아서 못 쓰는 경우는 있어도 없어서 못 쓰는 경우는 없다고 할만큼 데이터시트 보기는 중요합니다.

PT2258은 외부에서 볼륨값을 지정해 줍니다. 그러면 입력으로 들어온 신호가 출력으로 볼륨이 조절된 상태로 출력됩니다.
'외부에서 지정한다'라는 말은 PT5528 자체가 볼륨값을 설정할 수는 없다는 말이기도 합니다.

데이터시트의 첫페이지 DESCRIPTION 항목을 살펴보면 다음과 같은 문구가 나옵니다.

PT2258 provides an I2C Control Interface, an attenuation range of 0 to -79dB at 1dB/step, low noise, and high channel separation.

  • PT2258을 컨트롤 하기 위해 I2C라는 인터페이스를 사용한다.
  • 볼륨값은 0dB에서 -79dB까지, 1dB 단위로 바꿀 수 있다.
그리고 볼륨이 바뀔 때 노이즈가 적고 빠르다는 이야기가 있네요.

PT5528에서 필요한 정보 확인하기

데이터시트 5 페이지에 INTERFACE PROTOCOL 항목을 보겠습니다.

[[ 그림 ]] ==== PT5528 I2C PROTOCOL ====

그림이 좀 복잡해 보이긴 합니다만 내용은 I2C 프로토콜이 어떻게 구성되어 있는가 하는 것입니다.
그리고 그 신호는 [주소]-[데이터]로 구성된다라는 내용입니다.
주소와 데이터를 구성해서 그것을 I2C 프로토콜로 넘긴다라는거죠.

주소는 어떻게 지정하고, 데이터는 어떻게 만드는지 알아보겠습니다.

주소 지정하기

데이터시트 6 페이지에 주소를 지정하는 방법이 표시되어 있습니다.

PT5528의 주소는 CODE1, CODE2 핀의 상태에 따라 결정됩니다.

다시한번 회로도를 볼까요.

pt2258circuit

데이터시트의 샘플 회로에서도 Address = 88H 라고 표시되어 있습니다. 회로도 대로 만들었으면 PT5528의 주소는 88H가 됩니다.

이 내용을 제대로 하기 위해선 CODE1, CODE2 부분을 확인합니다.
CODE1에서 HIGH(VCC쪽), CODE2에서 LOW(GND쪽)에 연결되어 있습니다.
이 내용을 6페이지의 주소지정 방법에서 찾아 보면 88H로 나옵니다.

다음 표를 참조해 주세요.

[== 표 ==] 주소지정

주소값을 구성하는 방법이 정리된 표 입니다. [비트값 읽거나 작성하는 방법 참조]

볼륨값 지정하기

데이터 구성하기

Arduino에서 I2C 사용하기

WIRE Lib. 사용하기

WIRE Lib. 필수함수

WIRE Lib.에서 PT5528 I2C 주소 지정

PT5528 I2C 데이터 샘플

샘플 1 : 전체 채널을 -10dB로 세팅하기

샘플 2 : 채널 1에는 -12dB, 채널 2에는 -8dB 세팅하기

최종수정 2014.02.18 16:35:26
top ⬆