회원가입 ID/PW 찾기
AA

적외선 센서 두개를 외부 인터럽트에 연결하여 사람이 들어오고 나가는 것을 카운팅 하고 이를 이용하여 화장실의 불을 키는 프로그램을 작성하고 있습니다..

 

머리속에서 떠오르는 데로 작성하고 프로그램을 실행해보았는데 실행이 되지 않습니다 ㅠㅠ...

 

뭐가 잘못된건지.. 조언좀 부탁 드리겠습니다..

 

학교 실습이 어셈블리어로 이루어져 있어서.. 완전 다시시작하는 기분입니다..

 

도와주세요 ㅠㅠㅠ

 

                 ORG  0000H             ;*/P1.0 =>LED(전구대신),P1.1 =>스피커 센서 감지 여부)*/
                 JMP  START
                 ;
                 ORG  0003H   ;인터럽트 0(사람수 -카운팅)
                 JMP  MINUS
                 ORG  0013H  ;인터럽트 1(사람수 +카운팅)
                 JMP  PLUS
;
START:   MOV  SP,#40H
                 MOV  TCON,#00000101B
                 MOV  IE,#10000101B
                 CLR  A   ; A는 사람수
                 JMP  $ 
;
PLUS:      

                 CLR  EX0  ; 사람 수(-) 카운팅 무효화(인터럽트0)
                 CALL    DELAY
                 CALL    DELAY
                 CALL    DELAY  ; 사람이 들어가는 시간만큼 지연=> +카운팅 하고 - 카운팅 되면 안되기 때문에... NOP가 적으면 DELAY함수 사용!
                 SETB EX0  ; 사람수 (-) 카운팅 다시 유효화...
                 INC A  ; 사람수 카운팅(+) 완료
                 SETB  P1.1  ; 센서 인식 스피커 감지 ON
                 CALL  DELAY  ; 약간 지연해서 소리 사람이 소리 인식할 수 있는 시간 을 범
                 CLR P1.1  ; 스피커 OFF
                 JNZ LEDON  ; LED ON GOGO
                 RETI
 
                ;
MINUS:
                 CLR EX1  ; 사람수 + 카운팅 무효화(인터럽트1)
                 CALL    DELAY
                 CALL    DELAY
                 CALL    DELAY  ; PLUS함수와 동일
                 SETB EX1  ; 사람수 + 카운팅 유효롸
                 DEC A  ; 사람수 카운팅(-)
                 SETB P1.1  ; 스피커 ON 
                 CALL DELAY  ; 약간지연
                 CLR  P1.1         ; 스피커 OFF
                 CALL DELAY  ; 마이너스 카운트는 스피커 2번!!!!
                 SETB P1.1  ; 스피커 ON 
                 CALL DELAY  ; 약간지연
                 CLR  P1.1         ; 스피커 OFF
                 JZ LEDOFF         ; R4의 값이 0이면 LEDOFF로 고고
                 RETI
                ;
                DELAY: MOV R0,#0FFH
                DELAY1: MOV R1,#0FFH
                DELAY2: MOV R2,#0FFH
                DELAY3: NOP
                 DJNZ R2,DELAY3
                 DJNZ R1,DELAY2     딜레이는 나중에 실습시 시간 계산하기로 하고 임의값 삽입
                 DJNZ R0,DELAY1
                 RET  ; 
                ;
LEDOFF:
                 SETB P1.0  ; LED OFF
                 RET
LEDON:
                 CLR P1.0  ; LED ON
                 RET
                 END

댓글 1
  • No Profile

    오늘 가입하고 오늘 답변 다네요.

    인터럽트 0, 인터럽트 1이 사람의 들어가고 나가는 것을 체크하는게 아니라는 생각이 드는군요.


    다음과 같이 수정하면 어떨까요?

    인터럽트 발생순서가 인터럽트 0, 인터럽트 1이면 들어오는것,

                                 인터럽트 1, 인터럽트 0 면 나가는것으로 



하드웨어 설계 및 개발에 대하여 개발자들이 자유롭게 토론하는 공간입니다.
- Q&A, 자유주재 토론, 관련 정보 공유
- 분야 : 마이크로프로세서 응용, 전기/전자(아날로그/디지털) 회로 설계, C/C++ 프로그래밍, 펌웨어,
         PCB Artwork, 트러블슈팅 등 하드웨어 설계에 관한 전반인 내용
※ 게시글에 맞는 분류를 선택하여 글을 작성해 주시면 쾌적한 사이트 운영에 많은 도움이 됩니다.
※ 하드웨어 인사이트는 회원들간의 거래정보를 게재할 뿐이지, 그 어떤 책임과 의무도 가지지 않습니다.

search
번호 분류 제목 글쓴이 조회 수 날짜
908 마이크로프로세서 모터제어 질문합니다.1 그림톡 366 2013.06.16
907 마이크로프로세서 HOT도어락 설계에 관해서 폴트 603 2013.06.15
906 마이크로프로세서 HOTARM 초보용 보드 추천받습니다.1 말자하 713 2013.06.14
905 마이크로프로세서 HOTavr이용하여 컴퓨터 마우스제어에 궁금합니다.~ clown 625 2013.06.13
904 마이크로프로세서 PADS부품 배치시 질문이요1 미미이르 388 2013.06.04
903 마이크로프로세서 HOT8051 최대값 최소값 저장하는 명령어 조언좀..1 kyu 564 2013.05.28
902 마이크로프로세서 HOT네트워크 보드 개발자를 찾습니다. 후지바이크 407 2013.05.13
901 마이크로프로세서 시리얼인터럽트루틴에서 데이타처리하면서 에러발생에 대한 질문입니다.2 jaemi2010 397 2013.05.09
900 마이크로프로세서 UBICOM IP2022를 사용하려 합니다. 블루핑 299 2013.05.06
마이크로프로세서 HOT적외선 센서를 이용한 화장실 불 점등 어셈블리어 프로그램...1 오진새미 925 2013.04.20
898 마이크로프로세서 place database part누르고 -> 라이브러리 추가시 오류1 웨라러브 299 2013.04.17
897 마이크로프로세서 HOTPIC 관련 교육동영상이나 자료 있으면 부탁합니다. 전설의황제 465 2013.04.03
896 마이크로프로세서 atmega1280부트로더 프로그램없나요?2 jaemi2010 385 2013.03.29
895 마이크로프로세서 HOTCAM350, 거버데이터 좌표추출 관련 문의드립니다. 꼭좀 도와주세요 .. sozipum 2049 2013.03.18
894 마이크로프로세서 HOT사운드 동요를 만들어 봤어요~1 마프초짜입문 426 2012.11.26
893 마이크로프로세서 HOT8051을 이용하여 라인트레이서를 만들려고 합니다.1 김보람 545 2012.11.06
892 마이크로프로세서 HOT제가 짠 모터 구현 소스인데 어디가 문제인지 헤더파일로 넘어가질않아요1 아이유3단고음 414 2012.10.09
891 마이크로프로세서 HOT8051 dc모터제어 헤더파일점 부탁드립니다. 아이유3단고음 519 2012.10.09
890 마이크로프로세서 8051 처음 다뤄보는 학생입니다.1 요니 360 2012.10.08
889 마이크로프로세서 HOTAT90CAN128을 이용한 CAN 통신 질문 불량한마컴 947 2012.09.26
Prev 1 2 3 4 5 6 7 8 9 10 ... 50 Next
  • 사람은 자기가 한 약속을 지킬만한 좋은 기억력을 가져야 한다.
    - 니체
  • * 납포인트 정보 *
  • 글 작성 : 3
  • 댓글 작성 : 1
  • 내 글이 추천받음 : 1
저작권법에 위배되는 콘텐츠는 등록 불가하며, 저작물에 대한 권리는 저작자에게 있습니다.
Copyright 2006-2021 © hardwareis.com, All rights reserved.