회원가입 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
번호 분류 제목 글쓴이 조회 수 날짜
4404 자유주제 HOT스마트그리드 관련 인터뷰2 일렉트로닉 18719 2011.11.25
4403 드론/로봇/라인트레이서 HOT라인트레이서 프로그램 질문 입니다. 마이크로0001 1007 2011.11.25
4402 마이크로프로세서 HOT오토캐드에서 작성한 회로도를... 땜쟁이야 1571 2011.11.22
4401 마이크로프로세서 HOTinterrupt 사용법에 대해서 궁금한 점 있습니다. 해오 887 2011.11.21
4400 마이크로프로세서 HOT1초마다 교대로 문자 출력하는 소스인데 안되서요 ㅠ1 허브명수 1171 2011.11.21
4399 Allegro & OrCAD HOTpart를 수정하여 사용할수있는 방법?1 정상까지 가보자! 885 2011.11.20
4398 마이크로프로세서 HOT안녕하세요. 픽 두번쨰로 접한 초보입니다. 여쭈고 싶은게 있어서요 거덜러미 1032 2011.11.20
4397 자유주제 HOT군것질...2 견우7 21609 2011.11.18
4396 전기전자 아무거나 HOT소리 관련 역학... 질문1 견우7 780 2011.11.18
4395 마이크로프로세서 HOT데이터 입력에 관한 질문입니다. 드미트리 889 2011.11.18
4394 전기전자 아무거나 HOTVHDL로 60초를 표현하는 방법 소스인데,, 어떻게 해야 할까요? 안녕하세요. 1103 2011.11.18
4393 자유주제 HOT"스마트그리드! 한국의 역할이 크다!"IEEE 회장 척아담스2 일렉트로닉 12718 2011.11.17
4392 드론/로봇/라인트레이서 HOT아크마님.. 라인트레이서 구동 질문입니다1 호롤로로로로 943 2011.11.16
4391 개발용역 HOT회로 설계 드립니다. 휴너시스 7743 2011.11.16
4390 펌웨어 & 코딩언어 HOT외부 SRAM 컨트롤하는 것좀 도와주세요.1 쩡무 1373 2011.11.15
4389 마이크로프로세서 HOTpid제어를 통해서 도립진자를 만드려는데 좀 힘드네요ㅜ 도와주세요ㅜ 매실한잔 1483 2011.11.14
마이크로프로세서 HOTled 제어하는데... 실마리온 1008 2011.11.14
4387 PADS HOTpads 9.3 과 4.1 의 호환에 대해서1 azza2222 1257 2011.11.14
4386 Analog & Mixed-Signal 설계 HOT전기전자 간단한 differential BJT 증폭기 도와주실분.. gfgg 1085 2011.11.12
4385 마이크로프로세서 HOT8051 사거리 신호등 LED패턴 바꾸기 소스코드좀 봐주세요... LED깜빡 1507 2011.11.12
Prev 1 ... 70 71 72 73 74 75 76 77 78 79 ... 295 Next
  • 일은 인류를 사로잡는 모든 질환과 비참을 치료해 주는 주요한 치료제이다.
    - 칼라일
  • * 납포인트 정보 *
  • 글 작성 : 3
  • 댓글 작성 : 1
  • 내 글이 추천받음 : 1
저작권법에 위배되는 콘텐츠는 등록 불가하며, 저작물에 대한 권리는 저작자에게 있습니다.
Copyright 2006-2021 © hardwareis.com, All rights reserved.