TMR0 PIC18F458 vraag

G

gzorzi

Guest
Ik gebruik PIC18F458 met 20MHZ klok.
Ik TMR0L = 00 en ik wacht = FF.Ik toename met klok (ik denk interne / 4) en 1 / 256 (prescale).Wat is het de tijd tussen
00 tot FF?
Bedankt

 
hi gzorzi,

20 MHz heeft periode van 50ns dus als timer0 in 8 bit timer-modus, dan moet u
50 ns * 4 * 256 * 256 = 13107200 ns of ongeveer 13 ms

met vriendelijke groet

 
Ik gebruik picbasic Pro met 18F458 en mijn programma gebruik van de bootloader optie.
DEFINIËREN LOADER_USED 1

'ingeschakeld onderbreken timer0
INTCON =% 10100000
'ingeschakeld timer0
T0CON =% 10000111
op onderbreken goto gest_int

belangrijkste:goto belangrijkste

gehandicapten
gest_int:
"gehandicapte timer
T0CON =% 00000111
'reset timer
TMR0L = $ 00
TMR0H = $ 00
'ingeschakeld timer
T0CON =% 10000111

indien portd.2 = 1 dan
lage portd.2
anders
hoge portd.2
endif
hervatten
ingeschakeld

1) 18F458 heeft 2 onderbreken adres 0080H en 0018H
de op onderbreken goto xxx gebruik 08u of 18H

2) Ik wacht op portd.2 een signaal 3.3 sec 3.3 sec hoog en laag, maar dit aspected signaal is er niet
Ik zie de hoge snelheid en het zeer lage niveau van grote en de periode is niet geregeld

Heb je suggesties?
bedankt

 
hi gzorzi,
Ik ben niet bekend met picbasic pro maar:

1) voor de hoge en lage prioriteit interrupts afhandeling je moet zien picbasic handleiding.
2) wat is de waarde van IPEN bit in RCON registreren?
3) is er geen behoefte te schakelen, opnieuw en opnieuw inschakelen TMR0 in interrupt handling routine;
4) gebruik LATD eerder PORTD registreren om te schakelen PORTD2 beetje dwz -> als latd.2 = 1 dan

met vriendelijke groet

 

Welcome to EDABoard.com

Sponsor

Back
Top