Bienvenue aux nouveaux arrivants sur FantasPic !
- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.
--- L’équipe FantasPic ---
- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.
--- L’équipe FantasPic ---
Modérateur : mazertoc
Doute sur usage RA4 timer
- paulfjujo
Expert- Messages : 2589
- Âge : 73
- Enregistré en : juillet 2015
- Localisation : 01800
- Contact :
bonsoir à tous,
Je m'adresse plus particulierement à notre specialiste ASm , Maï
J'ai testé un capacimetre , seffmetre LC Meter à partir d'un programme pris sur le Web
et j'ai de gros doute sur cette partie de programme, bien que celui ci tourne sans probleme (apparent).
Tous les details ICI .
TMR0 est utilisé pour mesure la frequence de l'oscillateur LC
Pour moi , RA4 ne peut etre qu'une ENTREE pour le timer TMR0
et je ne comprends pas pourquoi RA4 est configuré en Sortie
pour la Mesure, pendant 100mS
puis en entree pour utiliser T0SE comme entree soft de Timer0
; OPEN GATE
movlw b'11100111' ; Enable RA4 output to T0CKI
movwf TRISA ; EN SORTIE ?
CALL MS100 ; 100MS DELAY
; CLOSE GATE (COUNT COMPLETE)
movlw b'11110111' ; Disable RA4 output to T0CKI
movwf TRISA ; en ENTREE ?
J'aurais plutot fait le contraire
J'ai deja utilisé RA4 en entree .. de frequencemetre sur 16F84 ..
pourtant, si j'inverse .. le programme ne tourne plus correctement .. "OVERRANGE"
un petit bout de schema pour aider
;9.5 Comparator Outputs
;The comparator outputs are read through the CMCON
;register. These bits are read only. The comparator
;outputs may also be directly output to the RA3 and RA4
;I/O pins. When the CM<2:0> = 110
une sortie va en principe sur une entree ?
Bref , pas clair du tout dans la datasheet ..
Je m'adresse plus particulierement à notre specialiste ASm , Maï
J'ai testé un capacimetre , seffmetre LC Meter à partir d'un programme pris sur le Web
et j'ai de gros doute sur cette partie de programme, bien que celui ci tourne sans probleme (apparent).
Tous les details ICI .
TMR0 est utilisé pour mesure la frequence de l'oscillateur LC
Pour moi , RA4 ne peut etre qu'une ENTREE pour le timer TMR0
et je ne comprends pas pourquoi RA4 est configuré en Sortie
pour la Mesure, pendant 100mS
puis en entree pour utiliser T0SE comme entree soft de Timer0
; OPEN GATE
movlw b'11100111' ; Enable RA4 output to T0CKI
movwf TRISA ; EN SORTIE ?
CALL MS100 ; 100MS DELAY
; CLOSE GATE (COUNT COMPLETE)
movlw b'11110111' ; Disable RA4 output to T0CKI
movwf TRISA ; en ENTREE ?
J'aurais plutot fait le contraire
J'ai deja utilisé RA4 en entree .. de frequencemetre sur 16F84 ..
pourtant, si j'inverse .. le programme ne tourne plus correctement .. "OVERRANGE"
Code : Tout sélectionner
Measure
bcf INTCON,T0IF ; Declare "Not yet Over-range"
CLRF TMR0 ; RESET INTERNAL COUNT (INCLUDING PRESCALER)
; See page 27 Section 6.0
CLRF F3 ; Ready to receive 16 bit number
CLRF F3+1
bank1
; OPEN GATE
movlw b'11100111' ; Enable RA4 output to T0CKI
movwf TRISA ; 1 = input 0 = output
CALL MS100 ; 100MS DELAY
; CLOSE GATE (COUNT COMPLETE)
movlw b'11110111' ; Disable RA4 output to T0CKI
movwf TRISA ; 1 = input 0 = output
bank0
MOVF TMR0,W ; GET HIGH BYTE
MOVWF F3 ; Copy to Big end of 16 bit result
; The comparator is "outputting" a 1 'cos we've forced it high
; so T0CKI=1.
PSC1
bank1
bsf OPTION_REG,T0SE ; Clock the prescaler
nop
bcf OPTION_REG,T0SE
bank0
DECF F3+1,F ; Decrement the counter
movf TMR0,W ; Has TMR0 changed?
xorwf F3,W ; if unchanged, XOR -> 0
beq PSC1
return ; F3 : F3+1 now holds 16 bit result
un petit bout de schema pour aider
;9.5 Comparator Outputs
;The comparator outputs are read through the CMCON
;register. These bits are read only. The comparator
;outputs may also be directly output to the RA3 and RA4
;I/O pins. When the CM<2:0> = 110
une sortie va en principe sur une entree ?
Bref , pas clair du tout dans la datasheet ..
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
Doute sur usage RA4 timer
Doute sur usage RA4 timer
- paulfjujo
Expert- Messages : 2589
- Âge : 73
- Enregistré en : juillet 2015
- Localisation : 01800
- Contact :
J'ai enfin trouvé l'explicage ...
Confusion à cause de la simplification du schema original LCMeter et du detail Comparateur Datasheet
dans la data sheet fig 1 0.3 page 64
Retour sur les I/O , dont RA4
Là , le cheminement de la sortie Comparateur est mieux explicite.
Le choix de config Comparator Mode 110 montre que pour traverser le ETen sortie comparateur, il faut un 1 permanent de l'autre coté.
Ce 1 est fournit par la sortie bascule Q barre commandée par un Write de 0 (= Output) sur TRISA RA4 .
Le signal carré sortie Comparteur2 se retrouve bien sur RA4 .. qui necessite une R Pull up au +VCC ( ici 4,7k )
Un Write 1 sur TRISA.RA4
=> Q barre=0 bloque le ET => plus de signal vers Tmr0..
Nota: il manque aussi sur ce schema l'aiguillage du OU pour la connection de ce signal OU celui de TOSE
à l'entree comptage timer0.
Confusion à cause de la simplification du schema original LCMeter et du detail Comparateur Datasheet
dans la data sheet fig 1 0.3 page 64
Retour sur les I/O , dont RA4
Là , le cheminement de la sortie Comparateur est mieux explicite.
Le choix de config Comparator Mode 110 montre que pour traverser le ETen sortie comparateur, il faut un 1 permanent de l'autre coté.
Ce 1 est fournit par la sortie bascule Q barre commandée par un Write de 0 (= Output) sur TRISA RA4 .
Le signal carré sortie Comparteur2 se retrouve bien sur RA4 .. qui necessite une R Pull up au +VCC ( ici 4,7k )
Un Write 1 sur TRISA.RA4
=> Q barre=0 bloque le ET => plus de signal vers Tmr0..
Nota: il manque aussi sur ce schema l'aiguillage du OU pour la connection de ce signal OU celui de TOSE
à l'entree comptage timer0.
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
Doute sur usage RA4 timer
Retourner vers « Langage ASM »
Qui est en ligne
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 49 invités