질문게시판 > atmega128 분초시계에서 초부분이 잘안돼고있어요

TODAY2,223 TOTAL3,320,535
사이트 이용안내
Login▼/회원가입
최신글보기 질문게시판 기술자료 동영상강좌

아두이노 센서 ATMEGA128 PWM LED 초음파 AVR 블루투스 LCD UART 모터 적외선


BASIC4MCU | 질문게시판 | atmega128 분초시계에서 초부분이 잘안돼고있어요

페이지 정보

작성자 rpdla 작성일2023-05-08 17:06 조회1,914회 댓글2건

본문

	

0997e11caf6974acefa810a14d45ed7b_1683532378_064.png
여러 사이트를 찾아보면 다른분들에게 도움을 받아서 분부분을 완생햇는데 아래의 초부분이 코드가 잘연결이 안돼고 있어요

#include

//

unsigned char s=0,m=0,h=0,d=1,MODE=0,blink=0,KEY1_NOWs=1,KEY1_OLDs,KEY2_NOWs=1,KEY2_OLDs;

unsigned int  ms=0;

//

interrupt [TIM2_OVF] void timer2_ovf_isr(void){

  TCNT2=0x06;

  //

  if(++ms>999){ ms=0;

    if(++s>59){ s=0;

      if(++m>59){ m=0;

        if(++h>23){ h=0; if(++d>31)d=1; }

      }

    }

  }

  //

  PORTD=((m/10)<<4)+(m%10); PORTE=((s/10)<<4)+(s%10);

  //-------------------------------------------------------

  KEY1_OLDs=KEY1_NOWs; KEY1_NOWs=PINA.0;

  KEY2_OLDs=KEY2_NOWs; KEY2_NOWs=PINA.1;

  //-------------------------------------------------------

  if((KEY2_OLDs==1)&&(KEY2_NOWs==0)){ // 시간모드/ 수정모드

    MODE^=1;

    if(MODE)PORTB.0=0; // 수정모드 분 깜박임

    else    PORTB.0=1; // 시간모드 정상표시

  }

  //-------------------------------------------------------

  if((KEY1_OLDs==1)&&(KEY1_NOWs==0)){ // 수정모드 시 분 증가

    if(MODE){

      if(++m>59){ m=0;

        if(++h>23){ h=0; if(++d>31)d=1; }

      }

    }

  }

  //-------------------------------------------------------

  if(ms<500){ PORTB.2=1; }

  else      { PORTB.2=0; }

}

//

void main(){

  PORTB.1=1;

분부분의 코드는 이거에요 그리고 아래의 부분인 초부분을 한번 누르면 아래의 초부분의 숫자는 올라가면서 깜빡이고 두번째로 누르면 표기된 숫자에서 그대로 멈추는며 깜빡임도 멈추는거에요. 근대 버튼이 인식이 안돼고 있어요 그리고 인식하더라도 위의 분부분의 시계모드와 시간병모드가 되고 있어요. 도와주세요

  • BASIC4MCU 작성글 SNS에 공유하기
  • 페이스북으로 보내기
  • 트위터로 보내기
  • 구글플러스로 보내기

댓글 2

조회수 1,914

master님의 댓글

master 작성일

interrupt [TIM2_OVF] void timer2_ovf_isr(void){
  TCNT2=0x06;
  //
  if(MODE==0){ // 시간모드 일 때만 자동으로 시간 증가 // <-- 추가
    if(++ms>999){ ms=0;
      if(++s>59){ s=0;
        if(++m>59){ m=0;
          if(++h>23){ h=0; if(++d>31)d=1; }
        }
      }
    }
  } // <-- 추가

rpdla님의 댓글

rpdla 댓글의 댓글 작성일

interrupt [TIM2_OVF] void timer2_ovf_isr(void)
{
  TCNT2=0x06;
  //
    if(MODE==0){ // 시간모드 일 때만 자동으로 시간 증가 // <-- 추가
    if(++ms>999){ ms=0;
      if(++s>59){ s=0;
        if(++m>59){ m=0;
          if(++h>23){ h=0; if(++d>31)d=1; }
        }
      }
    }
  } // <-- 추가
  //
  PORTD=((m/10)<<4)+(m%10); PORTE=((s/10)<<4)+(s%10);
  //-------------------------------------------------------
  KEY1_OLDs=KEY1_NOWs; KEY1_NOWs=PINA.0;
  KEY2_OLDs=KEY2_NOWs; KEY2_NOWs=PINA.1;
  //-------------------------------------------------------
  if((KEY1_OLDs==1)&&(KEY1_NOWs==0)){ // 시간모드/ 수정모드
    MODE^=1;
    if(MODE)PORTB.0=0; // 수정모드 분 깜박임
    else    PORTB.0=1; // 시간모드 정상표시
  }
  //-------------------------------------------------------
  if((KEY1_OLDs==1)&&(KEY1_NOWs==0)){ // 수정모드 시 분 증가
    if(MODE){
      if(++m>59){ m=0;
        if(++h>23){ h=0; if(++d>31)d=1; }
      }
    }
  } 
  //------------------------------------------------------- 
  if(ms<500){ PORTB.2=1; }
  else      { PORTB.2=0; }
  //-------------------------------------------------------
    if((KEY2_OLDs==1)&&(KEY2_NOWs==0)){ // 시간모드/ 수정모드
    MODE^=1;
  if(ms < 500) PORTB.1 = 0 ;
  else            PORTB.1 = 1 ;
  }
  //-------------------------------------------------------
  if((KEY2_OLDs==1)&&(KEY2_NOWs==0)){ // 수정모드 시 분 증가
    if(MODE){
      if(++m>59){ m=0;
      if(++h>23){ h=0; if(++d>31)d=1; }
      }
    }
  }
  //-------------------------------------------------------
  if(ms<500){ PORTB.1=1; }
  else        { PORTB.1=0; }
}
//
이렇게 했는데 여전히 깜빡이는걸 실행시켰 봤지만 버튼 연결이 잘안돼고있어요. 몇번인가 깜빡이 코드 위치를 바꿔서 해봤지만 잘안돼서 그러는데 어디가 문제인지 알려주실수 있나요? 그리고 이 코드가 맞는지 알려주실수 있나요?

질문게시판HOME > 질문게시판 목록

MCU, AVR, 아두이노 등 전자공학에 관련된 질문을 무료회원가입 후 작성해주시면 전문가가 답변해드립니다.
ATMEGA128PWMLED초음파
아두이노AVR블루투스LCD
UART모터적외선ATMEGA
전체 스위치 센서
질문게시판 목록
제목 작성자 작성일 조회
질문 atmega128A로 초음파센서 바밤 24-05-13 110
답변 답변글 답변 : atmega128A로 초음파센서 master 24-05-13 94
질문 ATmega128 출력비교인터럽트 질문댓글[2] Dkliekeun 24-04-09 384
질문 atmega128 srf-05 초음파 센서 코딩에 FQ-041 능동 DC부저 코딩 연결 해야하는데 도움 주시…댓글[6] 도움필요 24-04-04 1800
질문 atmega128로 압력센서를 사용하려고 합니다댓글[2] vbn667766 24-03-28 372
질문 Atmega128A 초음파 3개로 led3개를 각각 제어하고 싶은데 안됩니다 도와주세요..댓글[2] 밍토리 24-03-11 606
질문 (초보)atmega128 led 제어 질문드립니다댓글[1] aaa123 24-01-22 487
질문 Atmega128 PORTB에서 서보모터와 부저 사용 관련 질문 ynbus 23-12-17 496
답변 답변글 답변 : Atmega128 PORTB에서 서보모터와 부저 사용 관련 질문댓글[1] master 23-12-17 829
질문 ATmega128에 MQ-3 센서를 사용하는 방법을 찾고 있습니다.댓글[1] 첨부파일 c언어초보 23-12-16 589
질문 atmega128 dht11 온도 센서 데이터출력댓글[4] 재효김 23-12-13 1621
질문 ATMega128a 사용한 디지털 시계 질문입니다.댓글[3] 첨부파일 moon99 23-12-13 968
질문 Atmega128 USART 질문입니다.댓글[1] dnjsjj 23-12-13 542
질문 codevision avr atmega128a 사용중입니다 범뚱 23-12-12 572
답변 답변글 답변 : codevision avr atmega128a 사용중입니다 master 23-12-13 459
질문 Atmega128에서 시계코드에 스톱워치, 타이머를 추가하고 싶습니다. 주넘 23-12-11 606
답변 답변글 답변 : Atmega128에서 시계코드에 스톱워치, 타이머를 추가하고 싶습니다. master 23-12-13 466
질문 atmega128에서 16x16 LDM에 좌측부분이 안나옵니다.댓글[1] 이미지 주넘 23-12-11 672
질문 ATmega128 to ATmega128로 USART 통신 질문 alsdn 23-12-08 489
답변 답변글 답변 : ATmega128 to ATmega128로 USART 통신 질문 master 23-12-08 536
질문 Atmega128 CLCD와 블루투스 통신 문제댓글[1] fanfan 23-12-07 804
답변 답변글 답변 : Atmega128 CLCD와 블루투스 통신 문제댓글[3] master 23-12-07 1489
질문 atmega128 질문있습니다댓글[1] 이미지첨부파일 아자자자자자 23-12-06 600
질문 ATmega128에서 LCD와 블루투스 fanfan 23-12-05 704
답변 답변글 답변 : ATmega128에서 LCD와 블루투스댓글[1] master 23-12-05 880
질문 atmega128 압력센서 관해댓글[2] 메시기모찌 23-12-04 1014
질문 atmega128 CLCD댓글[2] 릴를 23-12-03 1296
질문 atmega128 블루투스 CLCD댓글[3] 릴를 23-12-03 1678
질문 atmega128a 외부인터럽트 두개와 7segment의 연결 우엉 23-12-02 598
답변 답변글 답변 : atmega128a 외부인터럽트 두개와 7segment의 연결 master 23-12-02 555
게시물 검색

2022년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
2021년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
2020년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
2019년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
2018년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
Privacy Policy
MCU BASIC ⓒ 2020
모바일버전으로보기