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

소개글

[마이크로프로세서응용실험] (결과) 실험 04: 인터럽트를 이용한 LED 순차 점멸에 대한 보고서 자료입니다.

목차

문제 1. 외부 인터럽트 버튼을 한 번 눌렀는데 마치 여러 번 눌렀을 때와 같이 동작을 하는 경우를 관찰할 수 있다.(a) 그 이유에 대해 생각해보시오.
(b) 위 현상을 제거하는 방법에 대해 생각해보시오.


문제 2. 가변저항을 이용하여 sin파의 주파수를 바꾸는 동작을 수행하도록 한다. (실험 3 참고) 동시에 외부 인터럽트 버튼을 누르면 전체 LED가 1번 깜빡인 후 다시 본래 수행하던 프로그램으로 돌아가도록 프로그램을 변경하고 동작을 확인하시오.


※ 검토 및 고찰

본문내용

에서 외부인터럽트1 버튼을 누르면 프로그램을 서브루틴 함수로 점프해서 인터럽트문장을 실행한다. 작성한 프로그램처럼 LED가 불이 들어왔다 꺼지면
메인함수로 돌아와서 원래 수행하던 프로그램을 실행하게 된다.
예상대로 8051키트에서 DAC LED가 주파수에 따라 깜박이는 속도가 바뀌고 도중에 외부 인터럽트1 버튼을 누르니까 P1.0~3의 LED가 한 번 깜빡이고 다시 DAC LED가 깜박이는 프로그램으로 돌아왔다.
하지만 인터럽트 버튼의 미세한 접합 문제가 있었는지 몰라도 버튼을 여러번 누르다 그 중 한 번은 제대로 동작을 하지 않는것을 발견했다. 약간의 궁금증도 있어서 Jumper setting의 JP4: Interrupt1 의 소스를 버튼이 아닌 적외선 sensor로 바꾸어서 프로그램을 동작시켜보았다. 적외선센서에 손을 가져다 대었을 때 센서가 이것을 인터럽트 신호로 보고 서브루틴문을 실행해서 LED의 불이 켜지는 것을 확인했다. 그리고 버튼을 누를 때와는 달리 항상 제대로 동작을했다. 새로운 발견이었다.
※ 검토 및 고찰
TCON을 조정함에 따라서 인터럽트를 level triggered로 동작시킬지 edge triggered로 동작시킬지 결정할 수 있음을 알았다. 8051은 입력 신호를 클럭으로 받기 때문에 사람이 입력 버튼을 한 번 누를 때,
누르는 아주 작은 시간만큼이라도 여러 클럭이 들어가서 8051은 level triggered일지 edge triggered일지에 따라 받아들이는 입력이 달라지는 것도 알았다. 이러한 것을 이용해서 인터럽트를 level trigger로 설정하거나 edge trigger로 설정한 실생활의 예도 찾아보면 좋을것 같다. 그리고 실험을 계속하면서 응용이 중요하다는 것을 알았다.
문제 2에서 sin파 출력과 인터럽트를 함께 응용한 프로그램에서 TCON 레지스터의 IT1 =1 을 따로 넣지 않아서 아마 level triggered로 동작했을 것이다. 그래서 버튼 혹은 적외선 센서의 인터럽트 신호(low)를 계속 가해주면 계속 low 상태를 받아들이면서 서브루틴 함수의 delay_ms()가 계속 걸리는 것을 확인했는데, 만약 이 프로그램에 IT1=1;을 추가해서 edge triggered로 동작하면 신호가 계속 가해져도 falling edge 순간만 인터럽트가 발생해서 LED가 한 번만 깜박이고 그 다음은 다시 원래 메인함수로 돌아와서 프로그램이 실행되는지 궁금했다.
  • 가격2,800
  • 페이지수6페이지
  • 등록일2014.03.16
  • 저작시기2014.1
  • 파일형식한글(hwp)
  • 자료번호#908205
본 자료는 최근 2주간 다운받은 회원이 없습니다.
청소해
다운로드 장바구니