Jump to content
ELFORUM - Forumul electronistilor

De ce nu intarzie cat trebuie codul asta? (16F84)


Guest alex

Recommended Posts

In continuarea topicului cum se calculeaza timpul de intarziere la PIC16F84A am si eu o problema. Inspirandu-ma de acolo am facut scris urmatorul cod:

ORG     0	GOTO INIT	ORG     4	GOTO BREAK	#include "bank.inc"	#include "lcd.inc"BREAK    decfsz COUNT1,1	GOTO BREAK	CALL    CLOCK	CALL    DISPLAY	movlw .244	movwf COUNT1 		RETFIEINIT    	LCDinit	BANK1	movlw b'00000111'	movwf OPTION_REG	BANK0	clrf TMR0	movlw b'10100000'	movwf INTCON	movlw .244	movwf COUNT1 	MAIN    	GOTO    MAIN

Intrebarea este de ce codul nu intarzie cu o secunda (e un ceas si o ia razna)? E ca si cum nu ar tine cont de decfsz COUNT1,1.

 

P.S. Quartz de 4MHZ, PIC16F84.

Link to comment
  • Replies 2
  • Created
  • Last Reply

Top Posters In This Topic

Popular Days

Top Posters In This Topic

Salut alex,Asa la o prima vedere am impresia ca nu numeri intreruperile. Din ceea ce citesc eu, codul tau face asa.-initializeaza intreruperile de la T0 si asteapta.-cand primeste prima intrerupere, numara repede-repede pana la zero, chiar in rutina de intrerupere, apoi iese.Intreruperile le primesti la 1/(1e6/256)=0.2ms. Nu e de mirare ca (probabil) ca o ia inainte bezmetic.Ca sa faci intarziere trebuie sa numeri intreruperile. Adica la fiecare intrerupere, decrementezi contorul si iesi din int.Chiar si asa, daca ai numara intreruperi, tot nu pare sa iasa o secunda. Ar iesi (1/(1e6/256))*244=62ms.Ca sa obtii o secunda, tinand cont ca pleci de la 1MHz, ar trebui ca dupa prescaler sa mai divizezi cu ceva de ordinul 1M/256=3906=0xF42, adica mai ai nevoie de 12 biti. 8 biti nu sunt suficienti. Dezvoltarea in factori ptr intarzierea exacta o faci tu. Eu am calculat numai un ordin de marime ptr ratele de divizare.Cirip

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now



×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.Terms of Use si Guidelines