728x90
반응형
SMALL
FND (Flexible Numeric Device)
• LED 7개 (점 포함 8개)로 숫자를 표시하기 쉽도록 배열한 것 • 많이 사용하는 곳 : 엘리베이터 층 표시기, 임베디드 제품 상태 표시기 |
FND 종류 및 구조
다중 FND
• 여러 개의 FND가 함께 묶여진 형태로, FND를 한 개씩 빠르게 돌아가면서 디스플레이하는 방식을 사용하면 눈의 잔상효과 때문에 모든 FND가 동시에 디스플레이되는 것처럼 보이는 현상을 이용한 제품 (최소 1/30 초 (33ms) 주기로 디스플레이 필요) • 숫자를 표시하는 데이터 신호는 공통으로 사용하고, 각 FND를 선택하는 신호는 따로 할당하되, 선택 신호를 Common 노드에 할당 |
FND 16진수 표시
JKIT-128-1에서 FND 연결 설계
• FND의 데이터 (8비트)는 동일한 입출력포트 C(PB)에 할당 (dp-g-f-e-d-c-b-a 순으로 8 비트 할당) • FND의 선택신호 (4비트)는 동일한 입출력포트 G (PG)에 할당 (왼쪽부터 PG3-0의 순으로 4비트 할당) • COM 신호의 경우 8개의 segment를 동시에 드라이브하면 25mA x 8 = 200mA의 전류를 처리할 수 있어야 하는데, ATmega128 입출력포트의 최대 능력 100mA를 초과하게 되므로 트랜지스터를 사용하여 전류량을 조절하여야 함. 즉, COM 신호 4개 (PG3 ~ PG0)는 트랜지스터를 이용하여 구동 • 트랜지스터 (Transistor) 선택 : PMBT2222 선택 • 시리얼 저항값 계산 : R = (5V – 1.8V – 0.2V) / (12) mA = 250 Ω |
GPIO로 FND 1개 표시
#include <avr/io.h> // ATmega128 register 정의
void main()
{
DDRC = 0xff; // C 포트는 모두 출력
DDRG = 0x0f; // G 포트도 4개는 출력
PORTC = 0x3f; // ‘0’ 표현
PORTG = 0x01; // 가장 우측의 digit 선택
}
728x90
반응형
LIST
'Embedded System > AVR' 카테고리의 다른 글
[AVR] 스위치 (Switch) (0) | 2022.06.23 |
---|---|
[AVR] 부저 (Buzzer) (0) | 2022.06.14 |
[AVR] 타이머 오버플로우 인터럽트 (0) | 2022.06.10 |
[AVR] 인터럽트 (Interrupt) (3) (0) | 2022.06.09 |
[AVR] 인터럽트 (Interrupt) (2) (0) | 2022.06.09 |