MPLAB RC5 어셈블리 프로그래밍

G

guesslsc85

Guest
현재
적외선 경계와 함께 일하고 / 게이트를 사용하는 코딩 RC5.누구 디코더 부분의 소스 코드를 변경하는 데 도움이 될까요 위해서 스위트에서 내 응용 프로그램 (적외선 게이트 / 울타리).내가 무슨 짓을하는 데 필요한 지속 및 디코더의 출력을 모니터하는 것입니다 인코딩된 적외선 빛이있는 LED가 또는 알람.
적외선 빛을 때 누군가가 방해한 경우, LED는 / 알람을 설정합니다.그렇지 않으면, 그것이 해제됩니다.

첨부 디코더 부분은 소스 코드입니다.
도와 주셔서 감사합니다.

http://www.sixca.com/eng/articles/remote/3ch_remote.zip [코드] [코드 ];------------------------ -
이 RX입니다
; 프로젝트 : 3 채널 원격 제어
; 크리스탈 4 MHz의
; RC5 맞춰
@ 38KHz, 35 % 듀티 사이클
; 주소 = 0X0B
; CH1 = 0x01
; CH2 = 0x02
; ch3 = 0x03
;하지 사용 토글 항상 = 0
4 - 7 월 - 2005
;--------------------------

목록 P = 12F629
# <P12F629.INC> 포함
__config _WDT_OFF & _XT_OSC & _CP_ON & _CPD_OFF & _BODEN_OFF & _MCLRE_OFF & _PWRTE_ON# DEFINE 투자 가능 GPIO, 3; 투자
R10K 당겨 - 최대 Vcc와 입력 LED가
# DEFINE OUT1 가능 GPIO, 0; 드라이브 출력 1
# DEFINE OUT2 가능 GPIO, 1; 드라이브 출력 2
# DEFINE OUT3 가능 GPIO, 2; 드라이브 출력 3
# DEFINE OUT1_M 0x01
# DEFINE OUT2_M 0x02
# DEFINE OUT3_M 0x04
# DEFINE TOG_BIT 토글, 0
# DEFINE ADDRS 0X0B; 0000 1011년; 0000 1110년
# DEFINE CH1_CMD 0x01
# DEFINE CH2_CMD 0x02
# DEFINE CH3_CMD 0x03CNT1 EQU 20h
CNT2 EQU 21h
CNT3 EQU 22H
CNT4 EQU 23H
온도 EQU 24H
토글 EQU 25H
주소 EQU 26H
CMD를 EQU 27H
ORG를 000

; BSF 상태, RP0
; 외침 0X3FF
; MOVWF OSCCAL
; BCF 상태, RP0
;
외침 디바운스

MOVLW 0x07
MOVWF CMCON; 디지털
I / O를 모두 가능 GPIO하기
BSF 상태, RP0
MOVLW 0x01
MOVWF OPTION_REG
MOVLW B'00001000 '
MOVWF TRISIO
CLRF IOCB
BCF 상태, RP0
BCF INTCON, GIE
CLRF 가능 GPIO; 모든 출력을 해제
;
메인 : 외침 DELAY3500
외침 GET_RC5
BTFSC 상태는 C
GOTO 메인
;
MOVF 주소, 승
XORLW ADDRS
BTFSS 상태,
지GOTO 메인; 주소 오류
;
MOVF CMD를, 승
ANDLW 0x03; 마스크 2 LSB가
ADDWF PCL이로, F
GOTO 메인; 명령 0x00 사용하지 또는 명령 오류
GOTO DO_CH1
GOTO DO_CH2
GOTO DO_CH3

DO_CH1 : MOVLW OUT1_M
GOTO 변경
;
DO_CH2 : MOVLW OUT2_M
GOTO 변경
;
DO_CH3 : MOVLW OUT3_M
전일 대비 : XORWF 가능 GPIO로, F인용구 :

; 여기 또는 다른 변경해야합니다 ...
 

Welcome to EDABoard.com

Sponsor

Back
Top