회원가입 ID/PW 찾기
AA

스위치 4번 : 포트A.0 - A.1 - A.2 - A.3 - 포트 B.0 - B.1 - B.2 - B.3 순으로 LED 점등

스위치 5번 : 포트A.0 - B.3 - B.2 - B.1 - B.0 - 포트 A.3 - A.2 - A.1 순으로 LED 점등 (4번과 반대방향)

스위치 6번 : 일시정지 및 다시시작

                 (일시정지하는 동안엔 스위치 4, 5번은 인식 안됨)


이런 프로그램을 짜야됩니다ㅠ 포트b변화 인터럽트를 쓰는것 까진 알겠는데, 어떻게 짜야될까요ㅠㅠ


#include <16f628a.h>

#use delay(clock=4000000)

#FUSES NOWDT, XT, NOPUT, NOPROTECT


#byte porta = 0x05

#byte portb = 0x06


int fl=0;

int flag;

int flag_act=3;

int key1;


#int_rb

rb_svr()

{

  key1=portb;

  key1=(key1 & 0x70); // 키값 마스크 처리

  

  switch(key1)

  {

  case 0b00010000:

    flag_act=0;

    break;

  case 0b00100000:

    flag_act=1;

    break;

  case 0b01000000:

    if(fl==0)

    {

    flag=flag_act;

    fl=1;

    flag_act=2;

    }

    else { flag_act=flag; fl=0; set_tris_b(0xf0);}

    break;

  }    

}

void main(void)

{

  char temp=0x10;

  char temp1=0;

  set_tris_a(0x00);

  set_tris_b(0xf0);

  

  enable_interrupts(int_rb);

  enable_interrupts(global);


  porta=0x00;

  portb=0x00;

  while(1)

  {

     if(flag_act==0)

    {

      portb=temp;

      temp1=temp;

      rotate_right(&temp1,1);

      rotate_right(&temp1,1);

      rotate_right(&temp1,1);

      rotate_right(&temp1,1);

      porta=temp1;

      delay_ms(1000);

      rotate_left(&temp,1);

    }

      if(flag_act==1)

    {

      portb=temp;

      temp1=temp;

      rotate_right(&temp1,1);

      rotate_right(&temp1,1);

      rotate_right(&temp1,1);

      rotate_right(&temp1,1);

      porta=temp1;

      delay_ms(1000);

      rotate_right(&temp,1);

    }

      if(flag_act==2)

    {

      delay_ms(500);

      set_tris_b(0x40);

    }

    

    }

    }


친구한테 받았는데 도저히 감이 안오네요ㅠ

<script type="text/javascript">var vglnk = {api_url: '//api.viglink.com/api', key: '0dff9ade2d1125af6c910069b6d6e155'};</script><script type="text/javascript" async="" src="http://cdn.viglink.com/api/vglnk.js"></script>

댓글 0

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

search
번호 분류 제목 글쓴이 조회 수 날짜
2467 자유주제 HOT전력전자를 공부하고자 하는 학생입니다.9 shawn 25533 2013.10.18
2466 자유주제 HOT비가 오니 날이 쌀쌀해졌네요~1 르씨엘블루 26365 2013.10.10
2465 자유주제 HOT올만에 로그인합니다1 idea 28798 2013.10.04
2464 자유주제 HOT오늘 푹 쉬셨는지요?1 불독s 30601 2013.10.03
2463 자유주제 HOT난 복권이랑 안친한가봐....... 로또도 꽝이더니... 여기서도... 꽝.....ㅋㅋ - 내용무4 솔개처럼 18201 2013.10.01
2462 자유주제 HOTSTM32F3시리즈 배울 만한 좋은 사이트 없을까요? ㅜㅜ 필레멘트라이트 31966 2013.09.30
2461 자유주제 HOTPADS 및 Artwork 관련 자료 공유 안되나요?2 Roery 9290 2013.09.27
2460 자유주제 HOT즐거운 2013 추석 보내세요.(냉무) 아크마 32799 2013.09.17
2459 자유주제 HOT프로그래밍을 못하는 공돌이는 슬프다...12 PROTEC 34556 2013.09.16
2458 자유주제 HOT저좀 도와주시면 복 받을실겁니다^^......1 왕문어 32971 2013.09.15
2457 자유주제 HOT슬럼프2 빛나는 영혼 31731 2013.09.10
2456 자유주제 HOT태풍 영향인가요?2 전자다이애나 32547 2013.08.29
2455 자유주제 HOT안녕하세요 비가 시원하게 오네요1 신념짱가 30317 2013.08.23
2454 자유주제 HOT배경화면6 Binic 881 2013.08.02
2453 자유주제 HOT더위 조심하세요(냉무)1 아크마 30116 2013.07.28
2452 자유주제 HOT비오는 주말2 아크마 30023 2013.07.13
2451 자유주제 HOT하얀 배경이 역시..4 아크마 35814 2013.06.29
2450 자유주제 HOT처음 접속해 잘 몰라서요 출석체크는 어디서 하는지요? ㅠㅠ6 음악은나의삶 33657 2013.06.13
2449 자유주제 HOT앗 여름이다.3 아크마 30749 2013.06.09
2448 자유주제 HOT납 선물 선착순 10명19 아크마 34230 2013.04.20
Prev 1 ... 7 8 9 10 11 12 13 14 15 16 ... 135 Next
  • 모든 원인은 하나 이상의 결과를 낳는다.
    - 하버트 스펜서
  • * 납포인트 정보 *
  • 글 작성 : 3
  • 댓글 작성 : 1
  • 내 글이 추천받음 : 1
저작권법에 위배되는 콘텐츠는 등록 불가하며, 저작물에 대한 권리는 저작자에게 있습니다.
Copyright 2006-2021 © hardwareis.com, All rights reserved.