회원가입 ID/PW 찾기
AA

led 제어 프로그램 인데염....ㅠㅠ

#include <mega128.h>
void Delay(unsigned int n)
{
unsigned int i;
while(n--)
{
i = 2270;
while(i--);

}

}
void main()
{
unsigned int cnt;
unsigned char prevSw1,prevSw2;
unsigned char sw1,sw2;
unsigned char dir;
float ff;
unsigned int tcnt;
unsigned int mode;

DDRA = 0xFF;
cnt = 0;
sw1 = sw2 = 0;
DDRE.4 = 0;
DDRE.5 = 0;
prevSw1 = prevSw2 = 0;
dir = 0;
ff = 1000.;
mode = 0;


while(1)
{
sw1 = PINE.4;
sw2 = PINE.5;
if(sw1 != prevSw1)
{
if(sw1==0)
{
tcnt = 0;
}
else
{
if(tcnt>1000)
{
dir = ~dir;
}
else
{
ff = ff*0.9;
}
}
}
}

if(sw2 != prevSw2)
{
if(sw2 == 0)
{
tcnt2 = 0;
}
else
{
if(tcnt<1000)
{
ff = ff*1.1;
}
else if(tcnt>1000)
{
mode = ~mode;
if(tcnt>5000)
{
for(;;)
PORTA = 0xFF;
PORTA = 0x00;
}
}

}

}


prevSw1 = sw1;
prevSw2 = sw2;

++cnt;
++tcnt;
if((cnt %((unsigned int)ff)) == 0)
{
if(dir == 0)
{
PORTA = PORTA<<1;
if(PORTA == 0)
PORTA = 0x01;

}
else
{
PORTA = PORTA >>1;
if(PORTA == 0)
PORTA = 0x80;
}
if(mode==0)
{
if(dir)
{
PORTA = 0x80 | 0x01;
if(PORTA == 0x80 | 0x01)
{
PORTA = 0x40 | 0x02;
if(PORTA = 0x40 | 0x02)
{
PORTA = 0x20 | 0x04;
if(PORTA = =0x20 | 0x04)
{
PORTA = 0x10 | 0x08;
}
}
}

}
}
else
{
if(dir)
{
PORTA = 0x10 | 0x08;
if(PORTA = =0x10 | 0x08)
{
PORTA = 0x20 | 0x04;
if(PORTA = =0x20 | 0x04)
{
PORTA = 0x40 | 0x02;
if(PORTA = =0x40 | 0x02)
{
PORTA = 0x80 | 0x01;
}
}
}

}
}


}
Delay(1);
if(cnt >= 50000)
cnt = 0;

}

sw1이 눌리면 속도발라지고 1초이상 누르면 방향이 달라지고 sw2가 눌리면 속도가 느려지는 프로그램인데염...

여기서 sw2가 1초이상 눌리면 led가 모아지고 또 1초이상 눌리면 반대로 led가 퍼지고 5초이상 길게 누를시 led전체가 깜박깜박

나오도록 한건데 잘 안되여...ㅠ 어떻게 하져???

댓글 0

하드웨어 설계 및 개발에 대하여 개발자들이 자유롭게 토론하는 공간입니다.
- Q&A, 자유주재 토론, 관련 정보 공유
- 분야 : 마이크로프로세서 응용, 전기/전자(아날로그/디지털) 회로 설계, C/C++ 프로그래밍, 펌웨어,
         PCB Artwork, 트러블슈팅 등 하드웨어 설계에 관한 전반인 내용
※ 게시글에 맞는 분류를 선택하여 글을 작성해 주시면 쾌적한 사이트 운영에 많은 도움이 됩니다.
※ 하드웨어 인사이트는 회원들간의 거래정보를 게재할 뿐이지, 그 어떤 책임과 의무도 가지지 않습니다.

search
번호 분류 제목 글쓴이 조회 수 날짜
972 마이크로프로세서 HOT오토캐드에서 작성한 회로도를... 땜쟁이야 1565 2011.11.22
971 마이크로프로세서 HOTinterrupt 사용법에 대해서 궁금한 점 있습니다. 해오 883 2011.11.21
970 마이크로프로세서 HOT1초마다 교대로 문자 출력하는 소스인데 안되서요 ㅠ1 허브명수 1166 2011.11.21
969 마이크로프로세서 HOT안녕하세요. 픽 두번쨰로 접한 초보입니다. 여쭈고 싶은게 있어서요 거덜러미 1028 2011.11.20
968 마이크로프로세서 HOT데이터 입력에 관한 질문입니다. 드미트리 877 2011.11.18
967 펌웨어 & 코딩언어 HOT외부 SRAM 컨트롤하는 것좀 도와주세요.1 쩡무 1366 2011.11.15
966 마이크로프로세서 HOTpid제어를 통해서 도립진자를 만드려는데 좀 힘드네요ㅜ 도와주세요ㅜ 매실한잔 1478 2011.11.14
마이크로프로세서 HOTled 제어하는데... 실마리온 1006 2011.11.14
964 마이크로프로세서 HOT8051 사거리 신호등 LED패턴 바꾸기 소스코드좀 봐주세요... LED깜빡 1504 2011.11.12
963 마이크로프로세서 HOT데이터 뽑는 소스 질문입니다 ㅠ.ㅠ; 드미트리 1079 2011.11.11
962 마이크로프로세서 HOTSTM32 Bitband 큰강아지 1698 2011.11.09
961 마이크로프로세서 HOT이제 막 배우기 시작했는데 램프하나 제대로 못켜겠어요 도와주세요1 안녕:) 1233 2011.11.06
960 마이크로프로세서 HOT8051 프로그램좀 짜주세요 ㅠ 재상 997 2011.11.04
959 마이크로프로세서 HOT이 헤더 파일 질문입니당~ ㅠ.ㅠ; 드미트리 860 2011.11.03
958 마이크로프로세서 HOT아트메가 초보가 질문 드립니다. winglyc 1055 2011.11.03
957 마이크로프로세서 HOT데이터 뽑는 거~질문이요~2 드미트리 1411 2011.11.02
956 마이크로프로세서 HOTAVR소스를 이용한 GPS parsing 질문1 드미트리 3044 2011.11.01
955 마이크로프로세서 HOTled 점등 소스코드 부탁좀1 jounghun325 1068 2011.11.01
954 마이크로프로세서 HOT적외선센서를 ADC로 변화하는 것에 대해 궁금합니다. 경마장 1292 2011.10.25
953 마이크로프로세서 HOTAVR용 연습도구7 견우7 1660 2011.10.19
Prev 1 ... 5 6 7 8 9 10 11 12 13 14 ... 58 Next
  • 시간의 걸음에는 세가지가 있다. 미래는 주저하며 다가오고 현재는 화살처럼 날아가고 과거는 영원히 정지하고 있다.
    - F.실러
  • * 납포인트 정보 *
  • 글 작성 : 3
  • 댓글 작성 : 1
  • 내 글이 추천받음 : 1
저작권법에 위배되는 콘텐츠는 등록 불가하며, 저작물에 대한 권리는 저작자에게 있습니다.
Copyright 2006-2021 © hardwareis.com, All rights reserved.