목차
실험1. I/O PORT test (LED shift)
실험2. I/O PORT test (FND display “0-9” 순차반복)
실험3. FND Decoder 사용해서 Display
실험4. Timer 사용해서 FND 구동
실험5. Interrupt 사용 FND구동
실험6. Serial 통신 (Echo 실험)
실험2. I/O PORT test (FND display “0-9” 순차반복)
실험3. FND Decoder 사용해서 Display
실험4. Timer 사용해서 FND 구동
실험5. Interrupt 사용 FND구동
실험6. Serial 통신 (Echo 실험)
본문내용
s=0x00;
PORTB=fnd_status;
};
}
void initial_avr()
{
PORTA=0x00;
DDRA=0x00;
PORTB=0xFF;
DDRB=0xFF;
PORTC=0x00;
DDRC=0x00;
PORTD=0x00;
DDRD=0x00;
PORTE=0x00;
DDRE=0x00;
TCCR0=0x00;
TCNT0=0x00;
OCR0=0x00;
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;
GICR|=0x00;
MCUCR=0x00;
EMCUCR=0x00;
TIMSK=0x00;
ACSR=0x80;
}
******************************************************************************************************
실험4. Timer 사용해서 FND 구동
******************************************************************************************************
#include
#include
unsigned char fnd_status=0x00;
interrupt [TIM0_OVF] void timer0_ovf_isr(void)
{
fnd_status++;
if(fnd_status==0x0a) fnd_status=0x00;
PORTD=fnd_status;
delay_ms(1000) ;
}
void initial_avr();
void main(void)
{
initial_avr();
#asm("sei")
while (1)
{
};
}
void initial_avr()
{
PORTA=0x00;
DDRA=0x00;
PORTB=0x00;
DDRB=0x00;
PORTC=0x00;
DDRC=0x00;
DDRD=0xFF;
PORTD=fnd_status;
PORTE=0x00;
DDRE=0x00;
TCCR0=0x05;
TCNT0=0x00;
OCR0=0x00;
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;
GICR|=0x00;
MCUCR=0x00;
EMCUCR=0x00;
TIMSK=0x02;
ACSR=0x80;
}
******************************************************************************************************
실험5. Interrupt 사용 FND구동
******************************************************************************************************
#include
unsigned char fnd_status=0x00;
interrupt [EXT_INT0] void ext_int0_isr(void)
{
fnd_status++;
if(fnd_status==0x0a) fnd_status=0x00;
PORTB=fnd_status;
}
void initial_avr();
void main(void)
{
initial_avr();
#asm("sei")
while (1)
{
};
}
void initial_avr()
{
PORTA=0x00;
DDRA=0x00;
PORTB=fnd_status;
DDRB=0xff;
PORTC=0x00;
DDRC=0x00;
PORTD=0x00;
DDRD=0x00;
PORTE=0x00;
DDRE=0x00;
TCCR0=0x00;
TCNT0=0x00;
OCR0=0x00;
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;
GICR|=0x40;
MCUCR=0x02;
EMCUCR=0x00;
GIFR=0x40;
TIMSK=0x00;
ACSR=0x80;
}
******************************************************************************************************
실험6. Serial 통신 (Echo 실험)
******************************************************************************************************
#include
#include
#include
char k;
void initial_avr();
void main(void)
{
initial_avr();
while (1)
{
int i;
if(USR.7){
k=getchar();
putchar(k);
}
};
}
void initial_avr()
{
PORTA=0x00;
DDRA=0x00;
PORTB=0x00;
DDRB=0x00;
PORTC=0x00;
DDRC=0x00;
PORTD=0x00;
DDRD=0x00;
PORTE=0x00;
DDRE=0x00;
TCCR0=0x00;
TCNT0=0x00;
OCR0=0x00;
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;
GICR|=0x00;
MCUCR=0x00;
EMCUCR=0x00;
TIMSK=0x00;
UCSRA=0x00;
UCSRB=0x18;
UCSRC=0x86;
UBRRH=0x00;
UBRRL=0x47;
ACSR=0x80;
}
******************************************************************************************************
PORTB=fnd_status;
};
}
void initial_avr()
{
PORTA=0x00;
DDRA=0x00;
PORTB=0xFF;
DDRB=0xFF;
PORTC=0x00;
DDRC=0x00;
PORTD=0x00;
DDRD=0x00;
PORTE=0x00;
DDRE=0x00;
TCCR0=0x00;
TCNT0=0x00;
OCR0=0x00;
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;
GICR|=0x00;
MCUCR=0x00;
EMCUCR=0x00;
TIMSK=0x00;
ACSR=0x80;
}
******************************************************************************************************
실험4. Timer 사용해서 FND 구동
******************************************************************************************************
#include
#include
unsigned char fnd_status=0x00;
interrupt [TIM0_OVF] void timer0_ovf_isr(void)
{
fnd_status++;
if(fnd_status==0x0a) fnd_status=0x00;
PORTD=fnd_status;
delay_ms(1000) ;
}
void initial_avr();
void main(void)
{
initial_avr();
#asm("sei")
while (1)
{
};
}
void initial_avr()
{
PORTA=0x00;
DDRA=0x00;
PORTB=0x00;
DDRB=0x00;
PORTC=0x00;
DDRC=0x00;
DDRD=0xFF;
PORTD=fnd_status;
PORTE=0x00;
DDRE=0x00;
TCCR0=0x05;
TCNT0=0x00;
OCR0=0x00;
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;
GICR|=0x00;
MCUCR=0x00;
EMCUCR=0x00;
TIMSK=0x02;
ACSR=0x80;
}
******************************************************************************************************
실험5. Interrupt 사용 FND구동
******************************************************************************************************
#include
unsigned char fnd_status=0x00;
interrupt [EXT_INT0] void ext_int0_isr(void)
{
fnd_status++;
if(fnd_status==0x0a) fnd_status=0x00;
PORTB=fnd_status;
}
void initial_avr();
void main(void)
{
initial_avr();
#asm("sei")
while (1)
{
};
}
void initial_avr()
{
PORTA=0x00;
DDRA=0x00;
PORTB=fnd_status;
DDRB=0xff;
PORTC=0x00;
DDRC=0x00;
PORTD=0x00;
DDRD=0x00;
PORTE=0x00;
DDRE=0x00;
TCCR0=0x00;
TCNT0=0x00;
OCR0=0x00;
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;
GICR|=0x40;
MCUCR=0x02;
EMCUCR=0x00;
GIFR=0x40;
TIMSK=0x00;
ACSR=0x80;
}
******************************************************************************************************
실험6. Serial 통신 (Echo 실험)
******************************************************************************************************
#include
#include
#include
char k;
void initial_avr();
void main(void)
{
initial_avr();
while (1)
{
int i;
if(USR.7){
k=getchar();
putchar(k);
}
};
}
void initial_avr()
{
PORTA=0x00;
DDRA=0x00;
PORTB=0x00;
DDRB=0x00;
PORTC=0x00;
DDRC=0x00;
PORTD=0x00;
DDRD=0x00;
PORTE=0x00;
DDRE=0x00;
TCCR0=0x00;
TCNT0=0x00;
OCR0=0x00;
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;
GICR|=0x00;
MCUCR=0x00;
EMCUCR=0x00;
TIMSK=0x00;
UCSRA=0x00;
UCSRB=0x18;
UCSRC=0x86;
UBRRH=0x00;
UBRRL=0x47;
ACSR=0x80;
}
******************************************************************************************************
추천자료
[화공실험] Reynolds Number(레이놀즈수)실험 결과보고서
일반물리학실험) 빛의 굴절 및 편광실험 결과보고서
현대물리실험, 리플탱크Ripple Tank실험 결과보고서
일반화학 실험 결과보고서_불타지 않는 휴지와 지문 검사 실험
결과보고서 실험 4. 멀티플렉서와 디멀티플렉서( Multiplexer & Demultiplexer)
결과보고서 실험 5. 래치와 플립플롭(Latch & Flip-Flop)
결과보고서 실험 2. CMOS 회로의 전기적 특성
결과보고서 실험 9. DA & AD Converter(DAC & ADC)
[일반 물리학 실험] 물리진자의 운동 - 결과보고서
[수질오염요소설계] 하수처리장 SVI30 계면침강 실험 및 F/M비 (결과보고서)
실험보고서 - 경도시험 실험결과 보고서
우주전자기초 및 실험 결과보고서 - Capaciors(정상상태의 직류 회로망에서 의 작용과 에 걸...
기계공학응용실험 - 열전달 실험 결과보고서
기계공학응용실험 - 절삭력측정 링압축에 의한 소성마찰 측정실험 결과보고서
소개글