전기,전자,펌웨어

FND 12시제로 표현하는 건데요 소스 질문좀 드릴게요

by 으앙망함ㅋ posted Apr 07, 2012
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

위로 아래로 댓글로 가기 인쇄 쓰기 목록
?
  • WhiteAT 2012.04.07 13:38

    답변은 회로도와 전체 소스를 봐야 좀더 정확한 답변을 드릴 수 있습니다.

     

     

     

    올려 주신 코드만 보고 문제가 생길만한 부분을 추측해 보면,

     

    1. delay_us(500)  를 delay_us(2) 또는 3 정도로 해보세요.

        FND 자리수마다 너무 많은 시간을 할당하면 다른 FND 가 꺼져 있는 것처럼 보일수 있습니다.

     

     

     

     

    2. 

      temp = rtc_read(0x04); //시를 읽어옴  를  temp=12 로 하드 코딩하여,

      00:00:00 이 나오는지 확인해 보세요.

     

      만약 여기서 00:00:00 이 나온다면 그 이하줄에는 문제가 없는 것이 되죠.

      하지만 92:00:00 으로 표시된다면  rtc_read(0x04) 에서 이상한 값이 나와서 그런 겁니다.

     

    하드웨어적인 문제가 없는지 확인해 봐야 합니다.

    FND 를 00:00:00 ~ 11:59:59 까지 출력이 잘되는지 확인해 보세요.

    (그렇다고 12시간 동안 계속 지켜 보시지는 말구요^^)

       

     

     3.

    AM, PM  출력에서는 if 문을 사용하는게 가장 좋은 방법 같은데요..