1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include<avr/io.h>
#include<util/delay.h>
int main(){
 char i;
// 1)
 unsigned char LED_Data=0x00;
// 2) 
 DDRE = 0xFF;
 
// 3)  
 while(1){
  
  PORTE = LED_Data;
  
  LED_Data++;
  
  for(i=0;i<100;i++)
   _delay_ms(10); //ms단위의 딜레이함수
 }
 return 0;
 }
cs

1) LED값을 저장하는 변수

2) E포트 모두를 출력으로 설정 (E포트와 LED를 연결해놓아야함)

3) 무한반복을 통해 PORTE에 LED_Data값을 넣고 LED_Data를 하나 증가시킨뒤 _delay_ms를 통해 딜레이를 준다.

    _delay_ms의 매개변수는 35까지밖에 지원하지 않아 for문을 통해 딜레이를 늘리는 방법을 써야한다.

+ Recent posts