로터리(Rotary) 스위치 값을 FND(4401ASR)에 표시하는 예제입니다. 회로는 아래와 같이 구성합니다.
PORTA.0: 로터리 0에 연결 (입력)
PORTA.1: 로터리 0에 연결 (입력)
PORTA.2: 로터리 0에 연결 (입력)
PORTA.3: 로터리 0에 연결 (입력)
PORTA.4 : FND 1자리에 SEL 신호 (출력)
PORTA.5 : FND 2자리에 SEL 신호 (출력)
PORTA.6 : FND 3자리에 SEL 신호 (출력)
PORTA.7 : FND 4자리에 SEL 신호 (출력)
PORTB: FND 데이터 신호(출력)
WAT-AVR128, WAT-IO&ADC 보드에서의 실행
WAT-AVR128와 WAT-IO&ADC 보드에서의 실행 결과 입니다.
초기 상태 – 로터리 스위치가 0 이라 FND 에 0234을 표시합니다.
4 – 로터리 스위치가 4 라서 FND 에 4234을 표시합니다.
7 – 로터리 스위치가 7 이라서 FND 에 7234을 표시합니다.
메인 소스 AVR Studio 4.18 용
/**********************************************
로터리(Rotary) 스위치값을FND(4401ASR)에표시하는예제
PORTA.0 : 로터리0에연결(입력) PORTA.1 : 로터리0에연결(입력) PORTA.2 : 로터리0에연결(입력) PORTA.3 : 로터리0에연결(입력)
PORTA.4 : FND 1자리에SEL 신호(출력) PORTA.5 : FND 2자리에SEL 신호(출력) PORTA.6 : FND 3자리에SEL 신호(출력) PORTA.7 : FND 4자리에SEL 신호(출력)
PORTB : FND 데이터신호(출력)
Main Clock : 11.0592Mhz
Tools : AVR Studio 4.16 테스트보드: WAT-AVR128 보드+ WAT IO&ADC
http://avr128.com
*********************************************/
#include <avr/io.h> #include <avr/interrupt.h> #include <stdio.h>
#include "wat128.h"
int main() {
// FND4 초기화 InitFND4();
// 로터리초기화 InitRotary();
while (1) { // 로터리스위치값을int 형으로받기 g_FND[0] = GetRotaryInt();
// FND 4자리표시 DisplayFND4(g_FND[0],g_FND[1],g_FND[2],g_FND[3]);
}
}
|
원문은 http://avr128.com 에 있습니다.
주요 부품
ATMEGA128 - 1EA 로터리 스위치 – 1EA SSR-10 POWER 5V/1A |
프로젝트 파일(전체 소스) 다운로드
'AVR키트' 카테고리의 다른 글
WAT-AVR128 모듈 (0) | 2011.07.20 |
---|---|
WAT-AVR128로 키 패드(키 매트릭스) 제어 (2) | 2011.07.15 |
가변저항 변화에 따라 LED 상태 변화 (4) | 2011.07.07 |
스위치 누름 카운터 Character LCD에 출력 (0) | 2011.07.06 |
Switch 4개를 각각 누를 때마다 FND 카운터 증가 (0) | 2011.05.04 |