M
mickbristol
Guest
안녕하세요, 저는 PIC는 새입니다.나는 포트 D 조 timer0 및 1 초에 도달 prescaler를 사용하여 LED를 전환하려고합니다.
메신저 만약 틀렸다면 정정 해주십시오.
나는 8MHz의 크리스탈을 사용합니다.
이렇게 명령어 사이클 1 / (8000000 / 4) = 500ns,
256에서 prescaler를 사용하여.내주기를 500ns × 256 = 128us됩니다
내가 INTCON, 2 시험에서 235 사이클을 할 것입니다
다음과 같은 고토 235 × 2에
내가 루프 11 번 할 것입니다 additionnal 몇 가지 지침을 내가해야 더하기
(235x2) (235) 10 = 715
루프 715x11 = 7865 사이클
7865x128us = 1.00672 초
내 개발 보드는 아니지만 .. 훨씬 빠르고!내가 말할 것이라고 0.5 초
누구나 수정할 수있습니다 어디에 내 잘못이야?
진심으로 감사합니다
여기에 코드입니다
목록으로 P는 = 16F877A
# P16F877A.inc 포함
__CONFIG _CP_OFF & _DEBUG_OFF & _WRT_OFF & _CPD_OFF & _LVP_OFF & _PWRTE_OFF & _BODEN_OFF & _WDT_OFF & _HS_OSC
org 0x0000
루프 equ 0x20
메인 고토
주된
banksel PORTD
clrf PORTD; 취소 포트 D 조
banksel TRISD; 은행 1
movlw b'00000000 '; 로드할 0000 0000
movwf TRISD; portD 출력을했다
BCF 원사 OPTION_REG, 5; 내부 클럭
BCF 원사 OPTION_REG, 3; TMR0에 prescale
BSF OPTION_REG, 0; prescaler에서 1:256
BSF OPTION_REG, 1
BSF OPTION_REG, 2
940
banksel 루프
movlw 디부 11 '
movwf 루프
L2
banksel TMR0; bank0
movlw 디부 20 '; 충전기 0001 0100
movwf TMR0; TMR0에
BCF 원사 INTCON, 2; 플래그를 취소
의 L3 btfss INTCON, 2; 플래그 timer0 시험
고토의 L3
decfsz 루프, 1; 12월 루프 1에 의해 다음 InStr 건너면 루프 = 0
고토 L2
comf PORTD; PORTD 보완
고토 940; 루프로 이동
끝
메신저 만약 틀렸다면 정정 해주십시오.
나는 8MHz의 크리스탈을 사용합니다.
이렇게 명령어 사이클 1 / (8000000 / 4) = 500ns,
256에서 prescaler를 사용하여.내주기를 500ns × 256 = 128us됩니다
내가 INTCON, 2 시험에서 235 사이클을 할 것입니다
다음과 같은 고토 235 × 2에
내가 루프 11 번 할 것입니다 additionnal 몇 가지 지침을 내가해야 더하기
(235x2) (235) 10 = 715
루프 715x11 = 7865 사이클
7865x128us = 1.00672 초
내 개발 보드는 아니지만 .. 훨씬 빠르고!내가 말할 것이라고 0.5 초
누구나 수정할 수있습니다 어디에 내 잘못이야?
진심으로 감사합니다
여기에 코드입니다
목록으로 P는 = 16F877A
# P16F877A.inc 포함
__CONFIG _CP_OFF & _DEBUG_OFF & _WRT_OFF & _CPD_OFF & _LVP_OFF & _PWRTE_OFF & _BODEN_OFF & _WDT_OFF & _HS_OSC
org 0x0000
루프 equ 0x20
메인 고토
주된
banksel PORTD
clrf PORTD; 취소 포트 D 조
banksel TRISD; 은행 1
movlw b'00000000 '; 로드할 0000 0000
movwf TRISD; portD 출력을했다
BCF 원사 OPTION_REG, 5; 내부 클럭
BCF 원사 OPTION_REG, 3; TMR0에 prescale
BSF OPTION_REG, 0; prescaler에서 1:256
BSF OPTION_REG, 1
BSF OPTION_REG, 2
940
banksel 루프
movlw 디부 11 '
movwf 루프
L2
banksel TMR0; bank0
movlw 디부 20 '; 충전기 0001 0100
movwf TMR0; TMR0에
BCF 원사 INTCON, 2; 플래그를 취소
의 L3 btfss INTCON, 2; 플래그 timer0 시험
고토의 L3
decfsz 루프, 1; 12월 루프 1에 의해 다음 InStr 건너면 루프 = 0
고토 L2
comf PORTD; PORTD 보완
고토 940; 루프로 이동
끝