PIC16F676 키트 입력 문제

D

dhruv101

Guest
안녕하세요,
나는 마이크로 - 컨트롤러 분야에 새로운입니다.내가 사용하고 PIC16F676 마이크로 칩에 의해 스타터 키트 플래시.내가)
데모 보드에있는 스위치를 폐쇄 (SW1되는 특정 LED를 토글하는 작은 프로그램을 작성했습니다.로 이해 핀 'RA3'은 그림에 대한 입력으로, 그래서 그것을 별도로 구성하는 의식하지 않아도 사용할 수있습니다?또한이 RA3 핀 내부 보드의 SW1 스위치에 연결됩니다.내가 문서에이 연결에 대한 특정 정보를 찾을 수없습니다.여기 내 코드입니다.문제가 무엇인지 어렵 그림 :

= 16f676; 목록 지시문 프로세서를 정의 목록 p 하이라이트
# 포함 <p16F676.inc>; 프로세서는 특정 변수의 정의

errorlevel -302; 목록 파일에서 메시지 302 억제

__CONFIG _CP_OFF & _CPD_OFF & _BODEN_OFF & _MCLRE_ON & _WDT_OFF & _PWRTE_ON & _INTRC_OSC_NOCLKOUT

; '__CONFIG'지시문.은 ASM 구성 파일 내의 단어를 포함하는 데 사용됩니다.
; lables 각각 다음 지시문. inc 파일에 위치하고있습니다.
; 구성 단어를 설정에 대한 자세한 내용은 데이터 시트를 참조하십시오.

;------------을 정의
정의
# D0On B'00110000 '
# D0Off 정의 B'00000100 '
LEDOn 플래그, 0 정의 #
정의
# D0_1Tris B'00001000 '
스위치 PORTA, 3 정의 #VARIABLE ;***** 정의
w_temp EQU 0x20; 변수 컨텍스트 절약에
사용status_temp EQU 0x21; 변수 컨텍스트 절약에
사용
cblock 0x20
플래그; LED는 플래그
CountH; 디바운스 카운터 - 석사 바이트
CountL; 디바운스 카운터 -
정말 바이트
endc

;************************************************* *********************
ORG를 0x000; 프로세서 리셋 벡터
고토 메인; 프로그램의 시작으로 이동ORG를 0x004; 벡터
인터럽트 위치
movwf w_temp; 현재 승 등록 내용을
저장movf 상태, 승; 승으로 이동 상태를 등록 등록
movwf status_temp; 상태 레지스터의 내용을 저장; ISR 코드 또는 다른 지역으로 갈 수있는 전화를 서브루틴
위치

movf status_temp, 승; 상태 레지스터의 복사본을 검색할
movwf 상태; 중고
- ISR 상태 레지스터의 내용을 복원
swapf w_temp로, F
swapf w_temp, 승; 중고 - ISR 승 등록 내용을 복원
retfie; 반환에서 인터럽트내부 오실레이터를 사용하지 않을 경우;이 첫 4 지침은 필요하지 않습니다
주된
전화 0x3FF; 공장 교정 값을
검색할BSF 상태, RP0; 1 은행 파일 설정 등록
movwf OSCCAL; 공장과 칼 가치를 등록 업데이트
movlw D0_1Tris; 설정 방향의 LED가 D0 너무 - D7 출력됩니다
movwf TRISA; 모든 다른 입력 (하이 - z는)
clrf ANSEL;
한 구성 / D 조 아이오와 디지털로
movlw 00h
movwf TRISA
bcf 상태, RP0; 0 등록 은행 파일 집합
; 나머지 코드는 여기에 다닌다
clrf PORTA
movlw 07h
movwf CMCON

BSF LEDOn; LED를 나타내기 위해
설정된 플래그에있다

clrf 플래그;에서 초기의 LED 상태로 설정
movlw D0On; 데이터 편견과 LED2
앞으로 LED4
movwf PORTA; PORTA 포트 데이터를 전송
movlw 08h
movwf PORTA
안녕하세요 : btfsc 스위치
주요 고토
movlw D0Off
movwf PORTA
고토 인사
nop
nop

; 초기화 EEPROM이 위치

ORG를 0x2100
드 0x00, 0x01, 0x02, 0x03최종; 프로그램 '의 지시문'끝

 
간이, 3도 칩의 Mclr 핀입니다.
당신의 온라인
상태 설정에 핀 Mclr = RA3의 입력 상태를 재설정 또는 실행하는 행위 - 그래서 당신과 함께 confilcts 디지털 입력으로 사용하고있는 칩에게 메모를합니다.

, 회로 다이어그램을 가지고하지 말고 당신에 대해 '수동 리셋'스위치가 이야기하고있는 '전환'을지지 않습니다.

내 경험에 의하면, 디지털 입력을 위해 사용 Mclr 핀 probelms가 발생할 수있습니다.
학습을 제안하는 동안, 당신은 다른 사용 가능한 I / O 핀 사용합니다.

기타 나는 / 당신은 만 5 v를 ()에 저항을 끌어와 스위치를 연결해야 O 핀

 
덕분에 wp100,
나는 떠나고로 설정하고 그 mclre 입력 핀으로 RA3했다.지금은 완벽하게 잘 작동합니다.내가 어디에있는 '_CONFIG'지시어에 대한 문서를 찾을 수 말해 줄래감사합니다

 
당신이 그것을 - 비록 아직 네가 그 스위치에 대한 다른 포트 - 사용하고 Mclr 기능 / 리셋 스위치를 실행하는 것이 좋습니다 RA3 바치고있어 좋아.초보자는 config 정보 분명 쉬운 텍스트 수행에 대한 자세한 아니에요 - 당신은 그것에 대해 더 알아낼 수있는 몇 가지 소스에서.

비록 제가 원래 예제 코드에있는 설정과 같은 성명을 설정하여 물건을 선호 Mpab - 구성 - 구성 비트 - 현재 설정되어있어,이 표시됩니다.

MPLAB - 도움말 - 주제 - MPLAB 어셈블러 -
'에 대한 검색 설정'

이 Pic16F676.inc 파일 비트 칩에 대한 모든 목록

이 Pic16F676 데이터 시트를 좀 더 자세한 정보를 제공 - 이미 다운로드하신 것으로 간주가?칩에 대한 정보 -의 기본 소스

그들을 이해하기 전까지는 완전히는 config 옵션의 대부분은 혼자, 그래서 그냥 키트 자습서에서 왼쪽 것들을 사용해야합니다.

발진기 Mlcre과 기능에 대한 변경하려면 지금해야하는 유일한 사람들이다.

 

Welcome to EDABoard.com

Sponsor

Back
Top