마이크로프로세서 과제(LED큐브)
본 자료는 7페이지 의 미리보기를 제공합니다. 이미지를 클릭하여 주세요.
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
해당 자료는 7페이지 까지만 미리보기를 제공합니다.
7페이지 이후부터 다운로드 후 확인할 수 있습니다.

소개글

마이크로프로세서 과제(LED큐브)에 대한 보고서 자료입니다.

본문내용

DR3:MOVR3, #100;LED 잔상을 위한 지연
ROU3:MOV20H, #11011111B;가운데 원 ON
MOV21H, #00000100B
MOV22H, #11111110B
CALLLED
DJNZR3, ROU3
RET
DR2:MOVR3, #50 ;패턴유지를 위한 지연
ROU2:
MOV20H, #11011111B ; 두번째 원 ON
MOV21H, #00000011B
MOV22H, #11111110B
CALLLED
MOV20H, #11101111B
MOV21H, #00001111B ;;#00001111B
MOV22H, #11111110B
CALLLED
DJNZR3, ROU2
RET
DR1:MOVR3, #50
ROU1:MOV20H, #11111011B ; 세번째 원 ON
MOV21H, #11111111B
MOV22H, #11111110B
CALLLED
MOV20H, #11101111B
MOV21H, #11110000B
MOV22H, #11111110B
CALLLED
DJNZR3, ROU1
RET
패턴 서브루틴 생략
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;인터럽트
INT0_SER:
INCR7; 노래 선택 레지스터 1증가
CJNER7, #1, MUS_2; 첫 번째 노래가 아니면 두 번째 노래로
MUS_1:MOVDPTR, #WWYMC; 첫 번째 노래 주소 저장
MOV47H, DPH;노래 다시 시작을 위한
MOV48H, DPL;첫 번째 노래 첫 음계 주소 백업
MOVXA, @DPTR;첫 상위 음계 주파수 저장
MOV45H, A
INCDPTR;첫 하위 음계 주소를 위한 1증가
MOVXA, @DPTR;첫 하위 음계 주파수 저장
MOV46H, A
INCDPTR;첫 음계 박자 주소를 위한 1증가
MOVXA, @DPTR;첫 음계의 박자 정보 저장
MOV41H, A
MOV42H, DPH;다음 음계 선택을 위한
MOV43H, DPL;현재 음계의 주소 저장
JMP FIN;인터럽트 끝
MUS_2:CJNER7, #2, MUS_3;두 번째 노래가 아니면 세 번째 노래로
MOVDPTR, #JGBE;두 번째 노래 주소 저장
MOVXA, @DPTR
MOV47H, DPH;노래 다시 시작을 위한
MOV48H, DPL;두 번째 노래 첫 음계 주소 백업
MOV45H, A;첫 상위 음계 주파수 저장
INCDPTR;첫 하위 음계 주소를 위한 1증가
MOVXA, @DPTR;첫 하위 음계 주파수 저장
MOV46H, A
INCDPTR;첫 음계 박자 주소를 위한 1증가
MOVXA, @DPTR;첫 음계의 박자 정보 저장
MOV41H, A
MOV42H, DPH;다음 음계 선택을 위한
MOV43H, DPL;현재 음계의 주소 저장
JMPFIN;인터럽트 끝
MUS_3:CJNER7, #3, FIN2;세 번째 노래가 아니면 초기설정으로
MOVDPTR, #WXMAS;세 번째 노래 주소 저장
MOVXA, @DPTR
MOV47H, DPH;노래 다시 시작을 위한
MOV48H, DPL;세 번째 노래 첫 음계 주소 백업
MOV45H, A;첫 상위 음계 주파수 저장
INCDPTR;첫 하위 음계 주소를 위한 1증가
MOVXA, @DPTR;첫 하위 음계 주파수 저장
MOV46H, A
INCDPTR;첫 음계 박자 주소를 위한 1증가
MOVXA, @DPTR;첫 음계의 박자 정보 저장
MOV41H, A
MOV42H, DPH;다음 음계 선택을 위한
MOV43H, DPL;현재 음계의 주소 저장
FIN2:MOVR7, #0;다시 노래 변경 할 경우를 위한 초기화
FIN:RETI ;인터럽트 끝
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;타이머
T0_SER:CLRTR0; 음계 주파수를 만드는 타이머
CPLP1.0;음계 만들기 위한 반전(1과 0 반복하여 주파수 형성)
MOVTH0, 45H; 타이머의 주기 재설정
MOVTL0, 46H ; 음계 주파주 정보로 설정
SETBTR0 ; 타이머 시작
RETI
T1_SER:CLRTR1; 음계 변경을 위한 타이머(일정 박자 후에)
CLRTR0 ; 음계 변경 동안 음계 만드는 타이머 정지
MOVTH1, #4BH ; 일정 박자 50ms값 재설정
MOVTL1, #0FDH
DJNZ41H, CONTMU;41H는 박자, 박자가끝나지않으면 음악계속
MOVDPH, 42H ; 박자가 끝나면 전음계 주소 불러옴
MOVDPL, 43H
INCDPTR; 음계 주소 1 증가
MOVXA, @DPTR; A에 음계 값 불러옴
CJNEA, #0, CONTMU2;음계값이 0이 아니면 음악 계속
MOVDPH, 47H; 음계값이 0이면 처음 음계 주소불러옴
MOVDPL, 48H; 47H, 48H 는 백업해 놓은 처음 음계주소
MOVXA, @DPTR; 처음 상위음계값을 A에 저장
CONTMU2:MOV45H, A; 상위 음계 주파수 값 저장
INCDPTR; 하위 음계 주소를 위한 1증가
MOVXA, @DPTR
MOV46H, A; 하위 음계 주파수 값 저장
INCDPTR; 박자 정보 주소를 위한 1증가
MOVXA, @DPTR
MOV41H, A; 박자 정보 저장
MOV42H, DPH; 42H, 43H에 현재 음계 주소값 저장
MOV43H, DPL
CONTMU:SETBTR1; 타이머1 사작
SETBTR0; 타이머2 시작
RETI
ORG5000H; 노래 정보 저장 시작 번지
WWYMC:DB0FBH, 68H, 10 ;솔; WE WISH YOU A MERRY X-MAS
DB0FCH, 8FH, 10 ;도
DB0E0H, 0FFH, 1;저주파음은 무음처럼 들리므로무음으로 선택
DB0FCH, 8FH, 5 ;도
DB0FCH, 0EFH, 5;레
DB0FCH, 8FH, 5;도
DB0FCH, 58H, 5 ;시
DB0FBH, 0E8H, 10;라
DB0E0H, 0FFH, 1
DB0FBH, 0E8H, 10;라
DB0E0H, 0FFH, 1
DB0FBH, 0E8H, 10;라
DB0FCH, 0EFH, 10;레
DB0E0H, 0FFH, 1
DB0FCH, 0EFH, 5;레
노래 데이터 생략
END
  • 가격10,000
  • 페이지수20페이지
  • 등록일2013.09.24
  • 저작시기2012.11
  • 파일형식한글(hwp)
  • 자료번호#881313
본 자료는 최근 2주간 다운받은 회원이 없습니다.
청소해
다운로드 장바구니