Page 142 - 2
P. 142
8. 소프트웨어 작성하기
가 프로그램 흐름도.
나 코드비전에서 데이터 처리를 위한 프로그램 소스.
#include <mega88.h>
#include <delay.h>
unsigned int count = 0; //ADC 카운트용
void main()
{
DDRB = 0xff;
DDRD = 0xf0;
DDRC = 0x00;
// 인터럽트 설정
EIMSK = 0b00000001;
EICRA = 0b00000011;
//ADC 설정
ADCSRA = 0x8f; /* 10001111 AD 변환 허용(BIT 7). AD 변환 인터럽트 허용(BIT 4).
AD 변환시 클록은 시스템 클록을 128 분주하여 사용 */
SREG |= 0x80; // 설정 인터럽트 허용 (AD 변환 인터럽트를 사용하기 위해 허용함)
do {
ADMUX = 0x01; /* 00000001 AD 변환 결과를 저장 레지스터(16 비트 중 하위) 10 비트
만 저장 변환 결과가 10 비트이기 때문에 BIT9~
BIT0 까지에 저장 */
ADCSRA = 0xcf; // ADCSRA = 0x8f; 에 ADSC=1 추가 즉. , AD 변환 시작.
delay_ms(5);
} while(1);
- 142 -