-"내가 질수은 PIC의 입력 읽기

S

scorpionss22

Guest
모두 안녕
내가 생각 프로그래밍 PIC는 내 스스로 전문가 때까지이 문제를 가지고

내가 어셈블리의 그림 코드와 난 글을 쓰고 MBLAP 제가 테스트 시뮬레이션 및 제출
뛰어난 작품
하지만 후 다운로드 PIC는 내가이 작동하지 않는 경우 : 울지 충격시 :

나도 많이 해봤지만 아무것도 절대로

저 그림 내가 질수 있기 때문에 간단하게 만들어 입력 읽을 생각
만약 입력을 읽기는하지만 그 안에 넣어 읽어 전혀 발견 프로그램 테스트
스피 mBLAP 7.5 XPhome Edition에서 TK3 프로그래머를 사용하여
뭘 도와 드릴까요
협조해 주셔서 감사합니다

목록으로 P는 = 16F84A
# P16F84A.inc 포함

스위치 EQU 20
카운터 EQU 21
CODEE EQU 22
CSTART EQU 23; B'10100111 '
EQU 24 일할
IRREG EQU 25
확인 EQU 26
count1 EQU 27
count2 EQU 28
BOUNCE1 EQU 29
BOUNCE2 EQU 2a에
counter1 EQU 2b가

ORG를 00
; BCF 원사 03,6
BSF 03,5; 은행 01
; MOVLW 0x06; 구성하는 모든 핀이
; MOVWF ADCON1, 디지털 입력으로
; MOVLW 0xCF; 값 사용
; 데이터를 초기화
; 방향

; BCF 원사 OPTION_REG, 3
MOVLW 잔소리; 포르 B 조 부드럽게 입력
MOVWF 06
BCF 원사 05,0; INDECATOR make 명령에 대한 라오
BCF 원사 05,1; 적외선 LED를위한 make 명령 RA1
BCF 원사 03,5; 은행 00
Clrf PORTA
BSF 간이, 0

고토 초보

;------------------ 표 키를 누르면이 알고 ------------------------ -----------------

SwTable MOVF 카운터, 승
ADDWF PCL이
NOP
고토 DeB0
고토 DeB1
고토 DeB2
고토 DeB3
고토 DeB4
고토 DeB5
고토 DeB6
고토 DeB7

;------------------ 표 스위치 인코딩 -------------------------- ----------------------

CTable BCF 원사 05,0
ADDWF PCL이로, F
NOP
RETLW B'01010101 '; 제로 코드
RETLW B'00110011 '; 하나의 코드
RETLW B'11000111 ', 2 개의 코드
RETLW B'10100111 '; 쓰리 코드
RETLW B'10100111 ', 4 코드
RETLW B'10100111 '; 다섯 코드
RETLW B'10100111 '; 여섯 코드
RETLW B'10100111 '; 레코드 코드

;----------------- 테스트를 시작 있으면 키를 누르면됩니다 ------------------------- -------------------
초보 MOVLW B'10100111 '
MOVWF CSTART
Start를 호출할 Delay100mS
MOVLW 00
Btfss 06,0
; BCF 원사 상태, Z부터
; XORWF PORTB, 승; 어떠한 경우 키를 누르면 테스트
; BTFSC 상태, Z부터
고토 스타트;하지 누르면

;----------------- 아무 키나 누르면 ---------------------------- ----------------------------
전화 Delay100mS
전화 Delay100mS
전화 Delay100mS
전화 Delay100mS
전화 Delay100mS
movlw 01
xorwf 05
고토 시작; MOVF PORTB; 테스트 키를 포르 복사
; MOVWF 스위치; RAM에 등록하기
BCF 원사 상태는 C
MOVLW 08
MOVWF 카운터
회전 BCF 원사 상태는 C
RLF 스위치
BTFSC 상태는 C
고토 SwTable
DECFSZ 카운터
고토 회전

고토 스타트

;----------------- ROUTEN 보내기 데이터 ---------------------------- ---------------------

보내 BCF 원사 상태는 C
MOVLW 08
MOVWF counter1
확인 RLF 일하고
BTFSS 상태는 C
고토 제로
고토 한
RESUME DECFSZ counter1
고토 확인
귀환

;----------------- 보낼 수 ------------------------------ -------------------------------------

한 MOVLW 디 40 '; 13 년 하반기 마이크로 웨이브 (1040Us의
MOVWF IRREG
어제 밤에 BSF PORTA, 1
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
BCF 원사 PORTA, 1
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
DECFSZ IRREG
고토 어제 밤에
외침 Delay100mS
고토 RESUME

;----------------- 보내 제로 ------------------------------ -------------------------------------

MOVLW 제로 디 80 '; 13 년 하반기 마이크로 웨이브 (2080Us의
MOVWF IRREG
정 BSF PORTA, 1
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
BCF 원사 PORTA, 1
NOP
NOP
NOP
NOP
NOP
NOP
DECFSZ IRREG
고토 정
외침 Delay100mS

고토 RESUME

;--------------- DEBOUNCE 스위치 0 ------------------------------- ---------------------------

DeB0 CLRF BOUNCE1
MOVLW 디 255 '
MOVWF BOUNCE2
DEBOUNCE0 BCF 원사 상태는 C; 1uS
BTFSS PORTB, 0; 2uS
고토 스타트;
INCF BOUNCE1; 1uS
BTFSS BOUNCE1, 7; 1uS
고토 DEBOUNCE0; 2uS
CLRF BOUNCE1
INCF BOUNCE2; 1uS
MOVLW 디 255 '; 1uS
XORWF BOUNCE2, 승; 1uS
BTFSS 상태, Z부터; 1uS
고토 DEBOUNCE0; 2uS
외침 Delay100mS
UPRB0 BTFSC PORTB, 0
고토 UPRB0
BSF 05,0; 표시기
고토 USECODE
; BTFSS 확인, 0
; 고토 BYPASS
; BSF 확인, 1
; BYPASS BCF 원사 확인, 0
; 고토 USECODE

;--------------- DEBOUNCE 스위치 1 ------------------------------- ---------------------------

DeB1 CLRF BOUNCE1
MOVLW 디 255 '
MOVWF BOUNCE2
DEBOUNCE1 BCF 원사 상태는 C; 1uS
BTFSS PORTB, 1; 2uS
고토 스타트;
INCF BOUNCE1; 1uS
BTFSS BOUNCE1, 7; 1uS
고토 DEBOUNCE1; 2uS
CLRF BOUNCE1
INCF BOUNCE2; 1uS
MOVLW 디 255 '; 1uS
XORWF BOUNCE2, 승; 1uS
BTFSS 상태, Z부터; 1uS
고토 DEBOUNCE1; 2uS
외침 Delay100mS
UPRB1 BTFSC PORTB, 1
고토 UPRB1

BSF PORTA, 0; 표시기
; BTFSS 확인, 0
; 고토 BYPASS
; BSF 확인, 1
; BYPASS BCF 원사 확인, 0
고토 USECODE

;--------------- DEBOUNCE 스위치 2 ------------------------------- ---------------------------

DeB2 CLRF BOUNCE1
MOVLW 디 255 '
MOVWF BOUNCE2
DEBOUNCE2 BCF 원사 상태는 C; 1uS
BTFSS PORTB, 2; 2uS
고토 스타트;
INCF BOUNCE1; 1uS
BTFSS BOUNCE1, 7; 1uS
고토 DEBOUNCE2; 2uS
CLRF BOUNCE1
INCF BOUNCE2; 1uS
CLRF BOUNCE1
MOVLW 디 255 '; 1uS
XORWF BOUNCE2, 승; 1uS
BTFSS 상태, Z부터; 1uS
고토 DEBOUNCE2; 2uS
외침 Delay100mS
UPRB2 BTFSC PORTB, 2
고토 UPRB2

BSF PORTA, 0; 표시기
; BTFSS 확인, 0
; 고토 BYPASS
; BSF 확인, 1
; BYPASS BCF 원사 확인, 0
고토 USECODE

;--------------- DEBOUNCE 스위치 3 ------------------------------- ---------------------------

DeB3 CLRF BOUNCE1
MOVLW 디 255 '
MOVWF BOUNCE2
DEBOUNCE3 BCF 원사 상태는 C; 1uS
BTFSS PORTB, 3; 2uS
고토 스타트;
INCF BOUNCE1; 1uS
BTFSS BOUNCE1, 7; 1uS
고토 DEBOUNCE3; 2uS
CLRF BOUNCE1
INCF BOUNCE2; 1uS
MOVLW 디 255 '; 1uS
XORWF BOUNCE2, 승; 1uS
BTFSS 상태, Z부터; 1uS
고토 DEBOUNCE3; 2uS

외침 Delay100mS
UPRB3 BTFSC PORTB, 3
고토 UPRB3

BSF PORTA, 0; 표시기
; BTFSS 확인, 0
; 고토 BYPASS
; BSF 확인, 1
; BYPASS BCF 원사 확인, 0
고토 USECODE

;--------------- DEBOUNCE 스위치 4 ------------------------------- ---------------------------

DeB4 CLRF BOUNCE1
MOVLW 디 255 '
MOVWF BOUNCE2
DEBOUNCE4 BCF 원사 상태는 C; 1uS
BTFSS PORTB, 4; 2uS
고토 스타트;
INCF BOUNCE1; 1uS
BTFSS BOUNCE1, 7; 1uS
고토 DEBOUNCE4; 2uS
CLRF BOUNCE1
INCF BOUNCE2; 1uS
MOVLW 디 255 '; 1uS
XORWF BOUNCE2, 승; 1uS
BTFSS 상태, Z부터; 1uS
고토 DEBOUNCE4; 2uS

외침 Delay100mS
UPRB4 BTFSC PORTB, 4
고토 UPRB4

BSF PORTA, 0; 표시기
; BTFSS 확인, 0
; 고토 BYPASS
; BSF 확인, 1
; BYPASS BCF 원사 확인, 0
고토 USECODE

;--------------- DEBOUNCE 스위치 5 ------------------------------- ---------------------------

DeB5 CLRF BOUNCE1
MOVLW 디 255 '
MOVWF BOUNCE2
DEBOUNCE5 BCF 원사 상태는 C; 1uS
BTFSS PORTB, 5; 2uS
고토 스타트;
CLRF BOUNCE1
INCF BOUNCE1; 1uS
BTFSS BOUNCE1, 7; 1uS
고토 DEBOUNCE5; 2uS
INCF BOUNCE2; 1uS
MOVLW 디 255 '; 1uS
XORWF BOUNCE2, 승; 1uS
BTFSS 상태, Z부터; 1uS
고토 DEBOUNCE5; 2uS

외침 Delay100mS
UPRB5 BTFSC PORTB, 5
고토 UPRB5

BSF PORTA, 0; 표시기
; BTFSS 확인, 0
; 고토 BYPASS
; BSF 확인, 1
; BYPASS BCF 원사 확인, 0
고토 USECODE

;--------------- DEBOUNCE 스위치 6 ------------------------------- ---------------------------

DeB6 CLRF BOUNCE1
MOVLW 디 255 '
MOVWF BOUNCE2
DEBOUNCE6 BCF 원사 상태는 C; 1uS
BTFSS PORTB, 6; 2uS
고토 스타트;
INCF BOUNCE1; 1uS
BTFSS BOUNCE1, 7; 1uS
고토 DEBOUNCE6; 2uS
CLRF BOUNCE1
INCF BOUNCE2; 1uS
MOVLW 디 255 '; 1uS
XORWF BOUNCE2, 승; 1uS
BTFSS 상태, Z부터; 1uS
고토 DEBOUNCE6; 2uS

외침 Delay100mS
UPRB6 BTFSC PORTB, 6
고토 UPRB6

BSF PORTA, 0; 표시기
; BTFSS 확인, 0
; 고토 BYPASS
; BSF 확인, 1
; BYPASS BCF 원사 확인, 0
고토 USECODE

;--------------- DEBOUNCE 스위치 7 ------------------------------- ---------------------------

DeB7 CLRF BOUNCE1
MOVLW 디 255 '
MOVWF BOUNCE2
DEBOUNCE7 BCF 원사 상태는 C; 1uS
BTFSS PORTB, 7; 2uS
고토 스타트;
INCF BOUNCE1; 1uS
BTFSS BOUNCE1, 7; 1uS
고토 DEBOUNCE7; 2uS
CLRF BOUNCE1
INCF BOUNCE2; 1uS
MOVLW 디 255 '; 1uS
XORWF BOUNCE2, 승; 1uS
BTFSS 상태, Z부터; 1uS
고토 DEBOUNCE7; 2uS

외침 Delay100mS
UPRB7 BTFSC PORTB, 7
고토 UPRB7

BSF PORTA, 0; 표시기
고토 USECODE
; BTFSC 확인, 0
; 고토 스타트
; MOVLW B 조 10101011; 녹음 비밀 번호 코드
; MOVWF IRREG
; BSF 확인, 0
; MOVWF 코드
; MOVF CSTART
; MOVWF 일하고
; 외침 보내기
; MOVF IRREG
; MOVWF 일하고
; 외침 보내기
; BTFSS 확인, 0
; BCF 원사 PORTA, 0
; 고토 스타트

;----------------- 보내 코드 FETCH --------------------------- -----------------

USECODE MOVF 카운터 승
외침 CTable
MOVWF CODEE
MOVF CSTART, 승
MOVWF 일하고
외침 보내기
외침 Delay100mS
MOVF CODEE, 승
MOVWF 일하고
외침 보내기
; BTFSS 확인, 1
BCF 원사 PORTA, 0
고토 스타트;------ 4 MHz 이상 100 석사 지연 ------------------------------------- ---

Delay100mS

movlw 0.130
movwf count1
movlw 0.221
movwf count2

dloop1 decfsz count2, f를
고토 dloop1
decfsz count1, f를
고토 dloop1
retlw 0x00


 
내가 입력 그래서 내가 올려 사용해야하는만큼 포트 사용시 B 조
나는 연구를 통해 () 접지 10,000 언제 제가 Buttom 5VDC 입력 어서 눌러 연결 RB0

 
난 당신에게 더 도움하지만, 한 번하지 않을 수있습니다 저도 같은 문제가 생겼어요했다.내 논리를 반대했다.내가 핀과 접지 사이에 스위치를 사용했다.10,000의 pullup 저항을 내 문제가 ........ 어쨌든 제가 그걸 해결

 
그때는 쉽게 하드 디버그 및 소프트웨어 ICD2 빌드

 
나는 여러 가지 간단한 코드 befor 만든 제대로 작동했지만, 이제 어떻게이 문제를 잘 모릅니다

 
어떤 입력에 대한 전압 동안 스위치를 밀어 버린 건가요?
당신의 내부 저항을 풀다운을 세웠나?

드 저항을 사용하는 것이 더 좋은 방법 sa 5 땅에로 전환합니다.올린날짜 5 분 후 :movwf TRISB
movlw b'10000000 '; 해제 PORTB 주 pullup 저항
movwf OPTION_REG추가 18 분 후 :

<img src="http://images.elektroda.net/19_1176012215_thumb.jpg" border="0" alt="i cant read input of the PIC" title="난은 PIC의 입력을 읽어 질수"/>
 
안녕하세요 불러이 ICD 구축 가이드 PLZ 것이있습니다
원본은 어디에서 얻을 수 개략도
모든 세부 사항 PLZ 말해
통해 UR 협조에 감사드립니다

 
남자 회로를 하나 더 가지 마이크로 칩이 포럼을 사용할 수있습니다 ICD U에 대한 약한 pullups에 대한 옳은 말했 것입니다 suggets 소프트웨어 개발을위한 MPLAB와 맥 컴파일러를 사용하는 것입니다 최선의 CCS는이야

 
안녕하세요 Scorpionss22

soooo ....외부 풀다운 시겠군요 어를 사용합니까?글쎄`괜찮 아요 생각 하는구나.당신은, 그래서 우리는 그것을 확인할 수 있도록 회로를 게시할 수 있을까?또한 설정 비트를 확인해 봤어?

aaaaannnnd ....

귀하의 코드를 확인하고 매우 가볍게 ....( 죄송합니다!)

당신 TRISB 확인 0xFF 보내십시오!

하지만 이미 많은 지침은 논평 ...

난 밖에 나가있어 잡기 (후 키를 누른 후이 부분을)
당신이 스위치를 등록 portB의 논평을 읽고
그리고 그 후!당신이 스위치를 등록 회전 수있습니다!
미안 해요`T는 귀하의 모든 코드를 확인 dind ...그리고 내가 왜 읽고 포트를 언급하지만, 스위치는 회전을하지 마세요!

음 ...대한 ICD 그냥 여기서 edaboard에서 확인!이미 많은 게시물, 회로입니다.등등 ..

환호!

 
모두 답장을 통해 UR 내가 무슨 잘못을 발견을위한 U 감사합니다
MBLAP에서 16 진수 형식으로 설정
와 이제 코드는 잘 작동합니다 덕분에 해결
친구들
하지만 Kurenai_ryu 거기 EDAboard에 circiut의 많은 그래서 내가 선택을해야했다 ICD ICD remening

감사합니다

 
난 그림 (개정판 C)와 변경 R18, R19 및 R16 330에서 100 옴에 buld가

http://www.icd2clone.com/wiki/Main_Page

당신은 죄수 olso 보이

ftopic161641.html

 

Welcome to EDABoard.com

Sponsor

Back
Top