밑에 소스 보시면 led가 좌 ==> 우 , 우 =>좌 로 이동해야 되는데
좌 ===> 우 로 밖에 되지 않네요..
이것때문에 벌써 몇 시간째 하고 있는데... 왕복으로 할려면 소스를 어떻게 짜야 될까요 ㅠ.ㅠ
#include<avr/io.h>
#include<avr/iom128.h>
#include<avr/interrupt.h>
#include<compat/deprecated.h> unsigned char data=0x01; int main(void)
{
DDRB=0xFF; // 포트 B 출력
PORTB=data;
DDRD = 0x00; // PD0 입력
EIMSK|=0x01; // INT0 개별 인터럽트 인에이블
EICRA|=0x03; // INT0 상승 에지
EIFR|=0x01; // INTF0 클리어
sei();
while(1);
}
ISR(INT0_vect)
{
data <<= 1; // led 변수의 좌 쉬프트
if(data == 0x00)
{
data ==0x01;
} PORTB = data; // 포트 B에 LED 값 출력함 } ----------------------------------------------------------------------------------------------- 요건 제가 생각해 본 소스인데.. 계속 안되네용 ㅠ.ㅠ #include<avr/io.h>
#include<avr/iom128.h>
#include<avr/interrupt.h>
#include<compat/deprecated.h>
#include<util/delay.h>
unsigned char led=0x00; int main(void)
{
DDRB=0xFF; // 포트 B 출력
PORTB=0x00;
DDRD = 0x00; // PD0 입력
EIMSK|=0x01; // INT0 개별 인터럽트 인에이블
EICRA|=0x03; // INT0 상승 에지
EIFR|=0x01;
sei();
return 0;
}
ISR(INT0_vect)
{
unsigned char led=0;
while(1)
{
for(led=0; led< 8; led++)
{
PORTB=~(1<<led);
_delay_ms(1500);
}
// PORTB = led;
for(led=7; led>=0; led--)
{
PORTB=~(1<<led);
_delay_ms(1500);
}
//PORTB = led;
}
}
#include<avr/iom128.h>
#include<avr/interrupt.h>
#include<compat/deprecated.h> unsigned char data=0x01; int main(void)
{
DDRB=0xFF; // 포트 B 출력
PORTB=data;
DDRD = 0x00; // PD0 입력
EIMSK|=0x01; // INT0 개별 인터럽트 인에이블
EICRA|=0x03; // INT0 상승 에지
EIFR|=0x01; // INTF0 클리어
sei();
while(1);
}
ISR(INT0_vect)
{
data <<= 1; // led 변수의 좌 쉬프트
if(data == 0x00)
{
data ==0x01;
} PORTB = data; // 포트 B에 LED 값 출력함 } ----------------------------------------------------------------------------------------------- 요건 제가 생각해 본 소스인데.. 계속 안되네용 ㅠ.ㅠ #include<avr/io.h>
#include<avr/iom128.h>
#include<avr/interrupt.h>
#include<compat/deprecated.h>
#include<util/delay.h>
unsigned char led=0x00; int main(void)
{
DDRB=0xFF; // 포트 B 출력
PORTB=0x00;
DDRD = 0x00; // PD0 입력
EIMSK|=0x01; // INT0 개별 인터럽트 인에이블
EICRA|=0x03; // INT0 상승 에지
EIFR|=0x01;
sei();
return 0;
}
ISR(INT0_vect)
{
unsigned char led=0;
while(1)
{
for(led=0; led< 8; led++)
{
PORTB=~(1<<led);
_delay_ms(1500);
}
// PORTB = led;
for(led=7; led>=0; led--)
{
PORTB=~(1<<led);
_delay_ms(1500);
}
//PORTB = led;
}
}