*키트는 Atmega128A를 사용하였습니다*
#include <avr/io.h> //avr 사용
#include <util/delay.h> //util 안에있는 delay 헤더파일 사용
#include <stdlib.h> //srand와 rand 함수 사용을 위해 stdlib 선언
#include <time.h> //time 함수 > 시간값을 받기 위해서 time 헤더파일 선언
void del(int sec){ //del 함수(딜레이)
volatile int j,k,l;
for(j = 0; j< sec ; j++){
for(k = 0; k< 1000 ; k++){
for (l = 0; l<500;l++){
}
}
}
}
int main(void) //main 함수
{
DDRA = 0xff; //포트 A를 8개 전부 사용
srand(time(NULL)); //인자값으로 NULL을 넘기면 현재까지 흐른 초 수를 리턴 -> rand의 값이 계속 초기화됨
while (1) //무한반복
{
PORTA = rand()%256; //PORTA에 0~255까지의 수를 랜덤으로 넣음
del(rand()%3); //del 함수를 이용한 딜레이(sec값에 0~3까지의 수를 랜덤으로 넣음)
}
return 0; //종료시 0 리턴
}
'AVR 기초 > LED 제어하기' 카테고리의 다른 글
[AVR 기초] LED로 1~255 표현하기 (0) | 2020.07.12 |
---|---|
[AVR 기초] LED로 X-MAS 트리 만들기2 (0) | 2020.07.12 |
[AVR 기초]LED를 다양하게 켜보기 (0) | 2020.07.12 |
[AVR 기초]delay 헤더파일 간단히 만들어보기 (0) | 2020.07.12 |
LED 켜고 끄기 (0) | 2020.07.12 |