ENGLISH 简体中文 日本語 한국어  

    로그인 | 회원가입 


   
 
키워드나 부품번호를 입력해주세요    




애플리케이션 노트 3210

퀵 스타트: MAX6954를 이용한 7세그먼트 디스플레이 구동

개요: 이 애플리케이션 노트는 MAX6954를 이용해 7세그먼트 모노컬러 LED를 구동하려는 엔지니어를 위한 퀵 스타트 가이드이다.

MAX6954는 직렬 인터페이스를 통해 이산, 7세그먼트, 14세그먼트 및 16세그먼트 LED 디스플레이를 제어할 수 있는 범용 디스플레이 드라이버이다. 이 애플리케이션 노트에서는 8개 모노컬러, 7세그먼트 LED를 구동하기 위한 애플리케이션과 구성에 대해 설명한다.

MAX6954의 특징에 관한 자세한 정보를 위해서는 MAX6954 데이터 시트를 참조한다.

"퀵 스타트: MAX6954를 이용한 16세그먼트 디스플레이 구동""퀵 스타트: MAX6954를 이용한 14세그먼트 디스플레이 구동"은 유사한 애플리케이션 노트로서 각 16세그먼트 및 14세그먼트 애플리케이션을 위한 MAX6954 구성에 대해 설명한다.

그림 1. MAX6954 7세그먼트 애플리케이션 회로
더 큰 이미지 보기

그림 1. MAX6954 7세그먼트 애플리케이션 회로

MAX6954를 이용한 일반적인 애플리케이션은 최대 16개의 7세그먼트 모노컬러 LED를 구동하는 것이다. 이 애플리케이션 노트에서는 MAX6954를 7세그먼트 디스플레이에 연결하고 내장된 16진 폰트 맵을 이용해서 디스플레이를 제어하도록 내부 레지스터를 구성하는 방법에 대해 설명한다.

MAX6954는 포트를 교대로 음극 및 양극 드라이버로 이용해서 드라이버 핀 수를 줄인다. 이는 양극 및 음극에 별도의 드라이버 핀을 이용하는 표준적인 LED 다중 연결과 다르다. 이 기법에 대해서는 다음 애플케이션 노트를 참조하세요. "Charlieplexing - Reduced Pin-Count LED Display Multiplexing". 표 1은 MAX6954 다중화 체계 및 내장 16진 폰트 맵과 호환되는 7세그먼트 디스플레이의 연결 체계이다. 표 1의 글자가 그림 2의 세그먼트 라벨과 상응한다. 그림 1은 MAX6954의 8디지트 7세그먼트 애플리케이션 회로이다.

표 1. 16개 7세그먼트 디지트의 연결 체계
Digit O0 O1 O2 O3 O4 O5 O6 O7 O8 O9 O10 O11 O12 O13 O14 O15 O16 O17 O18
0,
0a
CC0 -- 1a -- 1b 1c 1d 1dp 1e 1f 1g 2a 2b 2c 2d 2e 2f 2g 2dp
1,
1a
-- CC1 1a -- 1b 1c 1d 1dp 1e 1f 1g 2a 2b 2c 2d 2e 2f 2g 2dp
2,
2a
1a -- CC2 -- 1b 1c 1d 1dp 1e 1f 1g 2a 2b 2c 2d 2e 2f 2g 2dp
3,
3a
1a -- -- CC3 1b 1c 1d 1dp 1e 1f 1g 2a 2b 2c 2d 2e 2f 2g 2dp
4,
4a
1a -- 1b 1c CC4 -- 1d 1dp 1e 1f 1g 2a 2b 2c 2d 2e 2f 2g 2dp
5,
5a
1a -- 1b 1c -- CC5 1d 1dp 1e 1f 1g 2a 2b 2c 2d 2e 2f 2g 2dp
6,
6a
1a -- 1b 1c 1d 1dp CC6 -- 1e 1f 1g 2a 2b 2c 2d 2e 2f 2g 2dp
7,
7a
1a -- 1b 1c 1d 1dp -- CC7 1e 1f 1g 2a 2b 2c 2d 2e 2f 2g 2dp

MAX6954를 7세그먼트 디스플레이에 연결한 다음 디스플레이 테스트 모드를 이용해서 연결을 확인할 수 있다. 디스플레이 테스트 모드는 모든 제어 및 디지트 레지스터를 무시하지만 변경하지는 않고 모든 세그먼트를 켠다. 디스플레이 테스트 모드를 이용하려면 레지스터 0x07을 0x01로 작성한다. 디스플레이 테스트 모드에서 어떤 세그먼트가 켜지지 않으면 연결에 문제가 있는 것이므로 검사해야 한다. 디스플레이 테스트 모드를 종료하려면 레지스터 0x07을 0x00으로 작성한다.

그림 2. 7세그먼트 디스플레이의 세그먼트 라벨링
그림 2. 7세그먼트 디스플레이의 세그먼트 라벨링

MAX6954와 7세그먼트 디스플레이의 연결을 확인한 다음에는 디바이스가 7세그먼트 디스플레이와 동작하도록 구성해야 한다. 표 2는 주요 MAX6954 레지스터의 초기 파워 업 상태이다. MAX6954에 처음으로 전원을 연결하면 디바이스가 셧다운 모드이고 모든 디지트가 블랭크 되고 7세그먼트 폰트 맵이 선택되며 디바이스가 최대 8개 디지트를 스캔하도록 설정된다. 디폴트 디코드 모드(0x01) 및 디지트 유형 (0x0C) 레지스터 설정이 7세그먼트 애플리케이션에 적절하다.

표 2. MAX6954 초기 파워 업 레지스터 상태
REGISTER POWER-UP CONDITION ADDRESS
(HEX)
REGISTER DATA
D7 D6 D5 D4 D3 D2 D1 D0
Decode Mode 7-segment font enabled 0x01 1 1 1 1 1 1 1 1
Global Intensity 1/16 (minimum intensity) 0x02 X X X X 0 0 0 0
Scan Limit Display sixteen 7-segment digits: 0, 1, 2, 3, 4, 5, 6, 7, 0a, 1a, 2a, 3a, 4a, 5a, 6a, 7a 0x03 X X X X X 1 1 1
Control Register Shutdown enabled, blink disabled, blink speed is slow 0x04 0 0 X X 0 0 0 0
Display Test Normal operation (display test disabled) 0x07 X X X X X X X 0
Digit Type Digits 0 through 7 are 7 segment digits 0x0C 0 0 0 0 0 0 0 0
Intensity10 1/16 (min on), digits 1 and 0 0x10 0 0 0 0 0 0 0 0
Intensity32 1/16 (min on), digits 3 and 2 0x11 0 0 0 0 0 0 0 0
Intensity54 1/16 (min on), digits 5 and 4 0x12 0 0 0 0 0 0 0 0
Intensity76 1/16 (min on), digits 7 and 6 0x13 0 0 0 0 0 0 0 0
Intensity10a 1/16 (min on), digits 1a and 0a 0x14 0 0 0 0 0 0 0 0
Intensity32a 1/16 (min on), digits 3a and 2a 0x15 0 0 0 0 0 0 0 0
Intensity54a 1/16 (min on), digits 5a and 4a 0x16 0 0 0 0 0 0 0 0
Intensity76a 1/16 (min on), digits 7a and 6a 0x17 0 0 0 0 0 0 0 0
Digit 0 Blank digit, both planes 0x60 0 0 1 0 0 0 0 0
Digit 1 Blank digit, both planes 0x61 0 0 1 0 0 0 0 0
Digit 2 Blank digit, both planes 0x62 0 0 1 0 0 0 0 0
Digit 3 Blank digit, both planes 0x63 0 0 1 0 0 0 0 0
Digit 4 Blank digit, both planes 0x64 0 0 1 0 0 0 0 0
Digit 5 Blank digit, both planes 0x65 0 0 1 0 0 0 0 0
Digit 6 Blank digit, both planes 0x66 0 0 1 0 0 0 0 0
Digit 7 Blank digit, both planes 0x67 0 0 1 0 0 0 0 0
Digit 0a Blank digit, both planes 0x68 0 0 1 0 0 0 0 0
Digit 1a Blank digit, both planes 0x69 0 0 1 0 0 0 0 0
Digit 2a Blank digit, both planes 0x6A 0 0 1 0 0 0 0 0
Digit 3a Blank digit, both planes 0x6B 0 0 1 0 0 0 0 0
Digit 4a Blank digit, both planes 0x6C 0 0 1 0 0 0 0 0
Digit 5a Blank digit, both planes 0x6D 0 0 1 0 0 0 0 0
Digit 6a Blank digit, both planes 0x6E 0 0 1 0 0 0 0 0
Digit 7a Blank digit, both planes 0x6F 0 0 1 0 0 0 0 0

구성 레지스터(0x01)를 이용해서 셧다운을 설정하거나 종료하고, 깜빡임 기능을 제어하고, 디지트 데이터를 전체적으로 소거하고, 전체 또는 디지트별 휘도 제어를 선택할 수 있다. 구성 레지스터는 7비트를 포함한다 (표 3).
  • S비트는 셧다운 또는 정상 동작을 선택한다 (읽기/쓰기).
  • B비트는 깜빡임 속도를 선택한다 (읽기/쓰기).
  • E비트는 깜빡임 기능을 전체적으로 선택하거나 해제한다 (읽기/쓰기).
  • T비트는 깜빡임 타이밍을 리셋한다 (데이터가 저장되지 않는다 - 과도 비트).
  • R비트는 모든 디지트의 플레인 P0 및 P1 데이터를 전체적으로 소거한다 (데이터가 저장되지 않는다 - 과도 비트).
  • I비트는 전체 또는 디지트별 휘도 제어를 선택한다 (읽기/쓰기).
  • P비트는 현재 깜빡임 타이밍 단계를 보여준다 (읽기 전용 - 이 비트에 대한 쓰기는 무시된다).
표 3. 구성 레지스터 형식
CONFIGURATION
REGISTER
DATA BIT
DATA BIT LABEL STATE FUNCTION
D7 P 0 P1 Blink Phase
D6 I 0 Intensity for all digits is controlled by one setting in the Global Intensity Register
1 Intensity for digits is controlled by the individual settings in the Intensity10 through Intensity76a registers.
D5 R 0 Digit data for both planes P0 and P1 are unaffected
1 Digit data for both planes P0 and P1 are cleared on the rising edge of active-low CS
D4 T 0 Blink timing counters are unaffected.
1 Blink timing counters are reset on the rising edge of active-low CS.
D3 E 0 Blink function disabled
1 Blink function enabled
D2 B 0 Slow Blinking. Segments blink on for 1s, off for 1s with fOSC = 4MHz.
1 Fast Blinking. Segments blink on for 0.5s, off for 0.5s with fOSC = 4MHz.
D1 X X Don't care
D0 S 0 Shutdown
1 Normal Operation

0x04 레지스터를 0x01로 작성하면 디스플레이 드라이버가 전체 휘도 제어를 이용하고 깜빡임을 이용하지 않는다. MAX6954가 셧다운을 종료하면 내부 발진기가 작동되고 OSC_OUT에서 발진기 출력을 이용할 수 있다. 디지트 제어 레지스터 0x60~0x67의 파워 업 상태가 0x20이거나 세그먼트가 켜지지 않으므로 7세그먼트 디스플레이가 블랭크이다 (표 2와 그림 3 참조).

그림 3. 7세그먼트 디스플레이 폰트 맵
그림 3. 7세그먼트 디스플레이 폰트 맵

MAX6954는 7세그먼트 디스플레이를 위한 16진 폰트 맵을 포함한다. 7비트가 16진 폰트 맵을 표현하고 8번 비트는 소수점(DP)을 표시할지를 선택한다(표 4). 디지트 레지스터는 P0과 P1의 두 플레인으로 구현된다. 각 디지트는 플레인 P0의 1바이트와 플레인 P1의 1바이트인 2바이트 메모리로 표현된다(표 7참조). 디지트 레지스터는 플레인 P0(레지스터 0x20~0x27), 플레인 P1(레지스터 0x40~0x47), 또는 두 플레인(레지스터 0x60~0x67)이 동시에 데이터가 업데이트되도록 맵핑할 수 있다. 디지트 레지스터의 데이터는 7세그먼트 디스플레이의 디지트 세그먼트를 직접적으로 제어하지 않는다. 레지스터 데이터는 7세그먼트 폰트의 데이터를 저장한 문자 생성기의 주소를 지정하는 데 이용된다 (그림 3). 디지트 데이터의 하위 7비트(D6~D0)는 문자를 선택한다. 레지스터 데이터의 최상위 비트가 디지트의 소수점 세그먼트를 제어한다. 이 비트를 1로 설정하면 소수점이 켜지고 0으로 설정하면 켜지지 않는다.

표 4. 디지트 유형 데이터 레지스터 형식
MODE ADDRESS CODE (HEX) REGISTER DATA
D7 D6 D5 D4 D3 D2 D1 D0
7-segment mode, writing digit data to use font map data with decimal place unlit 0x20 to 0x2F
0x40 to 0x4F
0x60 to 0x6F
0 Bits D6 to D0 select font character
7-segment mode, writing digit data to use font map data with decimal place lit 0x20 to 0x2F
0x40 to 0x4F
0x60 to 0x6F
1 Bits D6 to D0 select font character

구성 레지스터의 깜빡임 설정 비트 E(표 3)를 이용해서 깜빡임 기능을 해제하면 플레인 P0의 디지트 레지스터 데이터를 이용해서 디스플레이가 다중화된다. P1의 디지트 레지스터 데이터는 이용되지 않는다. 깜빡임 기능을 이용하면 플레인 P0과 플레인 P1의 디지트 레지스터 데이터가 교대로 이용되어서 디스플레이를 다중화한다. 데이터 플레인 P0과 플레인 P1를 이용해 LED 디스플레이를 다중화함으로써 깜빡임이 표현된다.

예를 들어, MAX6954를 이용해서 Maxim/Dallas Direct의 전화번호 1 800 629 4642를 표시한다. 구성 레지스터를 프로그램할 때 깜빡임 기능을 해제했으므로 0x20~0x2F 레지스터에 데이터를 작성해서 디지트 0~7a를 제어할 수 있다. 그림 3의 폰트 맵을 이용해서 각 문자의 해당 코드를 알 수 있다.

표 5. 전화번호 800.629.4642의 예
REGISTER ADDRESS (HEX) DIGIT CHARACTER FONT MAP EQUIVALENT CODE
DECIMAL HEX
0x20 0 C 0000 1100 0x0C
0x28 0a A 0000 1001 0x0A
0x21 1 1 0000 0001 0x01
0x29 1a 1 0000 0001 0x01
0x23 3 8 0000 1000 0x08
0x2B 3a 0 0000 0000 0x00
0x24 4 0 1000 0000 0x80
0x2C 4a 6 0000 0110 0x06
0x25 5 2 0000 0010 0x02
0x2D 5a 9 1000 1001 0x89
0x26 6 4 0000 0100 0x04
0x2E 6a 6 0000 0110 0x06
0x27 7 4 0000 0100 0x04
0x2F 7a 2 0000 0010 0x02

전체 휘도 제어 레지스터인 0x02 레지스터를 작성해서 디스플레이 휘도를 조절할 수 있다. 휘도는 0x00(최소 온, 1/16 전류)에서부터 0xFF(최대 온, 15/16 전류)까지 설정할 수 있다. 디스플레이 밝기의 디지털 제어 역시 각 디지트에 대해 개별적으로 관리할 수 있다. 휘도 제어 및 GPIO나 키 스캔 같은 기타 첨단 기능에 대해서는 MAX6954 데이터 시트를 참조한다.

표 6. 퀵 스타트 예제 명령 개요
REGISTER
(HEX)
COMMAND
(HEX)
FUNCTION
0x07 0x01 Enter display test mode
0x07 0x00 Exit display test mode
0x04 0x01 Exit shutdown mode, disable blinking and select global intensity control
0x20 0x0C Write "C" to digit 0
0x28 0x0A Write "A" to digit 0a
0x21 0x01 Write "1" to digit 1
0x29 0x01 Write "1" to digit 1a
0x23 0x08 Write "8" to digit 3
0x2B 0x00 Write "0" to digit 3a
0x24 0x80 Write "0." to digit 4
0x2C 0x06 Write "6" to digit 4a
0x25 0x02 Write "2" to digit 5
0x2D 0x89 Write "9." to digit 5a
0x26 0x04 Write "4" to digit 6
0x2E 0x06 Write "6" to digit 6a
0x27 0x04 Write "4" to digit 7
0x2F 0x02 Write "2" to digit 7a
0x02 0xFF Set global intensity to full-scale

표 7. 부분적인 MAX6954/MAX6955 레지스터 주소 맵
REGISTER ADDRESS (COMMAND BYTE) ADDRESS
(HEX CODE)
D15 D14 D13 D12 D11 D10 D9 D8
Decode Mode R/active-low W 0 0 0 0 0 0 1 0x01
Global Intensity R/active-low W 0 0 0 0 0 1 0 0x02
Scan Limit R/active-low W 0 0 0 0 0 1 1 0x03
Configuration R/active-low W 0 0 0 0 1 0 0 0x04
Display Test R/active-low W 0 0 0 0 1 1 1 0x07
Digit Type R/active-low W 0 0 0 1 1 0 0 0x0C
Intensity 10 R/active-low W 0 0 1 0 0 0 0 0x10
Intensity 32 R/active-low W 0 0 1 0 0 0 1 0x11
Intensity 54 R/active-low W 0 0 1 0 0 1 0 0x12
Intensity 76 R/active-low W 0 0 1 0 0 1 1 0x13
Intensity 10a R/active-low W 0 0 1 0 1 0 0 0x14
Intensity 32a R/active-low W 0 0 1 0 1 0 1 0x15
Intensity 54a R/active-low W 0 0 1 0 1 1 0 0x16
Intensity 76a R/active-low W 0 0 1 0 1 1 1 0x17
Digit 0 Plane P0 R/active-low W 0 1 0 0 0 0 0 0x20
Digit 1 Plane P0 R/active-low W 0 1 0 0 0 0 1 0x21
Digit 2 Plane P0 R/active-low W 0 1 0 0 0 1 0 0x22
Digit 3 Plane P0 R/active-low W 0 1 0 0 0 1 1 0x23
Digit 4 Plane P0 R/active-low W 0 1 0 0 1 0 0 0x24
Digit 5 Plane P0 R/active-low W 0 1 0 0 1 0 1 0x25
Digit 6 Plane P0 R/active-low W 0 1 0 0 1 1 0 0x26
Digit 7 Plane P0 R/active-low W 0 1 0 0 1 1 1 0x27
Digit 0a Plane P0 R/active-low W 0 1 0 1 0 0 0 0x28
Digit 1a Plane P0 R/active-low W 0 1 0 1 0 0 1 0x29
Digit 2a Plane P0 R/active-low W 0 1 0 1 0 1 0 0x2A
Digit 3a Plane P0 R/active-low W 0 1 0 1 0 1 1 0x2B
Digit 4a Plane P0 R/active-low W 0 1 0 1 1 0 0 0x2C
Digit 5a Plane P0 R/active-low W 0 1 0 1 1 0 1 0x2D
Digit 6a Plane P0 R/active-low W 0 1 0 1 1 1 0 0x2E
Digit 7a Plane P0 R/active-low W 0 1 0 1 1 1 1 0x2F
Digit 0 Plane P1 R/active-low W 1 0 0 0 0 0 0 0x40
Digit 1 Plane P1 R/active-low W 1 0 0 0 0 0 1 0x41
Digit 2 Plane P1 R/active-low W 1 0 0 0 0 1 0 0x42
Digit 3 Plane P1 R/active-low W 1 0 0 0 0 1 1 0x43
Digit 4 Plane P1 R/active-low W 1 0 0 0 1 0 0 0x44
Digit 5 Plane P1 R/active-low W 1 0 0 0 1 0 1 0x45
Digit 6 Plane P1 R/active-low W 1 0 0 0 1 1 0 0x46
Digit 7 Plane P1 R/active-low W 1 0 0 0 1 1 1 0x47
Digit 0a Plane P1 R/active-low W 1 0 0 1 0 0 0 0x48
Digit 1a Plane P1 R/active-low W 1 0 0 1 0 0 1 0x49
Digit 2a Plane P1 R/active-low W 1 0 0 1 0 1 0 0x4A
Digit 3a Plane P1 R/active-low W 1 0 0 1 0 1 1 0x4B
Digit 4a Plane P1 R/active-low W 1 0 0 1 1 0 0 0x4C
Digit 5a Plane P1 R/active-low W 1 0 0 1 1 0 1 04D
Digit 6a Plane P1 R/active-low W 1 0 0 1 1 1 0 0x4E
Digit 7a Plane P1 R/active-low W 1 0 0 1 1 1 1 0x4F


관련 부품  APP 3210: May 03, 2005
MAX6954 I/O 익스팬더 및 키 스캔 기능이 내장된 4-Wire 인터페이스, 2.7V ~ 5.5V LED 디스플레이 드라이버 전체 데이터 시트
(PDF, 340kB)
무료 샘플
MAX6955 I/O 익스팬더 및 키 스캔 기능이 내장된 2-Wire 인터페이스, 2.7V ~ 5.5V LED 디스플레이 드라이버 전체 데이터 시트
(PDF, 608kB)
무료 샘플

자동 업데이트
관심 분야의 애플리케이션 노트가 나올 때 자동으로 업데이트를 원하십니까? 그렇다면 EE-Mail™을 신청하십시오.


We Want Your Feedback!



의견을 보내주세요!
위 내용이 도움이 되셨나요?
여러분의 의견을 기다립니다 — Maxim은 보내주신 정정이나 제안사항을 반영하고 있습니다. 이 페이지를 평가하고 의견을 보내주십시오.

 

다운로드, PDF 형식다운로드, PDF 형식 (236kB)
 AN3210, AN 3210, APP3210, Appnote3210, Appnote 3210

        •         •         •     개인정보보호 정책     •     법적 고지

    Copyright © 2009 by Maxim Integrated Products