[마이크로프로세서응용실험] (예비) 실험 06: 인터럽트를 이용한 시계알람 (마이크로프로세서 시계 알람)
본 자료는 2페이지 의 미리보기를 제공합니다. 이미지를 클릭하여 주세요.
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
해당 자료는 2페이지 까지만 미리보기를 제공합니다.
2페이지 이후부터 다운로드 후 확인할 수 있습니다.

소개글

[마이크로프로세서응용실험] (예비) 실험 06: 인터럽트를 이용한 시계알람 (마이크로프로세서 시계 알람)에 대한 보고서 자료입니다.

목차

문제 1. 프로그램 각 줄에 주석을 다시오.

문제 2. 프로그램에서 문장 ① 은 외부 인터럽트 1의 트리거 조건을 에지트리거로 하기 위한 것이다. 적합한 프로그램 문장으로 채우시오.

문제 3. 프로그램에서 ②, ③, ④ 는 현재시간을 문자 LCD에 출력하기 위해 문자 데이터 변수에 현재시간을 할당하는 과정이다. 적합한 변수를 쓰시오.

문제 4. 프로그램에서 ⑤ 는 알람이 떴는지를 확인하는 과정이다. 적합한 문장으로 채우시오.

문제 5. 프로그램에서 ⑥ 은 수행 중인 타이머 0을 정지하기 위한 것이다. 적합한 프로그램 문장으로 채우시오.

문제 6. 주어진 프로그램을 이용할 때 알람은 얼마동안 떠 있게 되는지 설명하시오.

문제 7. 각 상황에 따라 문자 LCD의 출력이 어떻게 변경되는지 LCD 창을 그리고 각 Line별 문자의 변화에 대해 설명을 해보시오.

본문내용

1초가 되는
if문에 걸려있으므로 1초마다 is_alarm이 1인지 확인해서 맞으면 alarm_duration이 1씩 감소해서
마침내 0이 되면 is_alarm이 0이 되어 알람메시지가 사라지게 된다. 이 과정이 5번 반복해서
alarm_duration이 0이 되므로 알람메시지는 5초 동안 떠있다가 사라지게된다.
따라서 alarm_duration 변수를 조절함으로서 메시지를 몇 초 동안 뜨게 할지 정할 수 있다.
문제 7. 각 상황에 따라 문자 LCD의 출력이 어떻게 변경되는지 LCD 창을 그리고 각 Line별 문자의 변화에 대해 설명을 해보시오.
- 우선 맨처음엔 Lcd_Clr(); 함수에 의해 LCD화면이 초기화 되고
프로그램을 실행시키면 타이머0 인터럽트가 동작해서 시계가 작동하게 된다.
시, 분, 초 초기값이 2, 59, 0이었으므로 2시 59분 00초부터 시계가 돌아가기 시작한다.
Line1에는 위와 같은 시간이 나타나고 Line2에는 is_alarm의 값에 의해 메시지표시의 유무가 정해지고
Line3에는 pause의 값에 의해 정지와 러닝이 정해진다 is_alarm과 pause 의 초기값들이 0이므로
종합적으로 맨처음 시계가 작동할때는 아래와 같은 화면을 볼 수 있다.
(Line1→) 02:59:00
(Line2→)
(Line3→) Running!
시계가 작동하다가 설정해 놓은 알람시간 (02:59:07)과 일치하면 인터럽트 서브루틴의 if조건에 의해
is_alrarm=1이 되고 Line2에 alarm!이 출력된다.
(Line1→) 02:59:07
(Line2→) alram!
(Line3→) Running!
그리고 alarm_duration의 조건에 의해 5초뒤에는 is_alarm=0이 되어 알람메시지가 사라지게된다.
(Line1→) 02:59:12
(Line2→)
(Line3→) Running!
시계가 계속 동작하다가 외부인터럽트1을 통해 타이머0을 중지시키면 puase값이 반전되서
pause=1이 되고 Line3에 Puase!가 뜨게 된다. 이 때 TR0값도 반전되서 시계도 멈춘다
(Line1→) 02:59:17
(Line2→)
(Line3→) Pause!
여기에서 다시 외부인터럽트 1 버튼을 누르면 다시 TR0=1, Pause=0이 돼서 시계가 돌아가고
Line3에는 Running!이 뜨게 된다.
(Line1→) 02:59:19
(Line2→)
(Line3→) Running!
  • 가격2,800
  • 페이지수6페이지
  • 등록일2014.03.16
  • 저작시기2014.1
  • 파일형식한글(hwp)
  • 자료번호#908202
본 자료는 최근 2주간 다운받은 회원이 없습니다.
청소해
다운로드 장바구니