• LF몰 이벤트
  • 파일시티 이벤트
  • 캠퍼스북
  • 서울좀비 이벤트
  • 탑툰 이벤트
  • 닥터피엘 이벤트
  • 아이템베이 이벤트
  • 아이템매니아 이벤트

[전자공학실험] 8051실험 - 타이머인터럽트를 사용한 7-SEG 제어

*문*
개인인증판매자스토어
최초 등록일
2003.12.04
최종 저작일
2003.12
8페이지/한글파일 한컴오피스
가격 1,000원 할인쿠폰받기
다운로드
장바구니

소개글

C언어 코드와, 주석, 실험사진, DISCUSSION 이 모두 포함된 최고의 리포트 입니다. A+ 받았습니다

목차

실험1. 7세그먼트에 0123 동시에 켜지게 하는 실험.
실험2. 타이머 인터럽트를 이용한 7-세그먼트 제어

본문내용

이번 실험은 1부터 16진수의 끝인 F 까지 세그먼트를 이용하여 나타내는 것이다. 이것을 하기 위해서는 인터럽트를 이용하여 구성을 하는데 우선 메인 함수는 앞의 첫 번째 실험같이 짧은 시간동안 즉 1초에 30번정도 FOR 문을 돌면서 디스플레이를 하는 함수를 구현하였고 time interrupt를 사용하여 그 디스플레이 하는 값을 바꿔주게 되면 디스플레이하는 함수는 우리가 바꾼 값을 이용하여 디스플레이를 하게 되어 우리가 원하는 값을 얻을 수 있다. 그리고 인터럽트에서 할 또 한가지 일은 시계처럼 하나의 단위가 다 끝나게 되면 한자리 올리고 같은 작업을 수행해야 하기 때문에 그것은 if 문을 이용하여 구현하였다. 첫 번째 if 문은 첫째자리수가 16 즉 F 가 되면 그 값을 0으로 해주고 압자리 수를 하나 상승하게 함으로서 구현하였다. 그리고 다음 자리는 또 if 문을 써서 그 자리가 16이 되면 다음에는 그 자리수는 0을 만들고 다음 자리는 하나 증가하게 되므로써 모든 수를 구현할 수 있게 된다 . 그리고 이를 쉽게 하기 위해서 배열을 하나 잡았는데 segdata[]라는 배열을 잡아서 그 값으로 0부터 16까지 나타내고 그 숫자로 segnum의 배열을 접근하여서 이를 쉽게 하였다. 그리고 타이머 인터럽트가 가능하게 하기 위해서는 여러 가지 세팅이 필요하게 되는데
TMOD = 0x21; /* 타이머1은 Mode2로, 타이머0은 Mode1로 세팅 */
TH0 = 0xFF; /* 0xFF00 의 상위 바이트 설정 */
TL0 = 0x00; /* 0xFF00 의 하위 바이트 설정 */
TR0 = 1; /* Timer 0을 running 하도록 설정*/
ET0 = 1; /* Timer 0의 interrupt enable */
EA = 1; /* Enable all interrupt */
이런 여러 가지 세팅하는 법을 배워서 앞으로 다른 것을 할수 있게 가능하게 하였다 .

참고 자료

없음
*문*
판매자 유형Bronze개인인증

주의사항

저작권 자료의 정보 및 내용의 진실성에 대하여 해피캠퍼스는 보증하지 않으며, 해당 정보 및 게시물 저작권과 기타 법적 책임은 자료 등록자에게 있습니다.
자료 및 게시물 내용의 불법적 이용, 무단 전재∙배포는 금지되어 있습니다.
저작권침해, 명예훼손 등 분쟁 요소 발견 시 고객센터의 저작권침해 신고센터를 이용해 주시기 바랍니다.
환불정책

해피캠퍼스는 구매자와 판매자 모두가 만족하는 서비스가 되도록 노력하고 있으며, 아래의 4가지 자료환불 조건을 꼭 확인해주시기 바랍니다.

파일오류 중복자료 저작권 없음 설명과 실제 내용 불일치
파일의 다운로드가 제대로 되지 않거나 파일형식에 맞는 프로그램으로 정상 작동하지 않는 경우 다른 자료와 70% 이상 내용이 일치하는 경우 (중복임을 확인할 수 있는 근거 필요함) 인터넷의 다른 사이트, 연구기관, 학교, 서적 등의 자료를 도용한 경우 자료의 설명과 실제 자료의 내용이 일치하지 않는 경우

이런 노하우도 있어요!더보기

최근 본 자료더보기
탑툰 이벤트
[전자공학실험] 8051실험 - 타이머인터럽트를 사용한 7-SEG 제어
  • 레이어 팝업
  • 레이어 팝업
  • 레이어 팝업
  • 레이어 팝업
  • 레이어 팝업