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
RA5 confiné sur Pic18F26K22
Bonsoir tout le forum,
J'ai un petit soucis sur le Pic18F26K22
Voila sa se résume à ça, si j'envoie du 5 volts sur la broche RA5 la led qui est sur RC4 doit s'allumer, si pas de tension sur RA5 la led doit s'éteindre,.... et ben c'est pas le cas.
Si RA5 passe 1 allumer RC4
Si RA5 passe 0 éteindre RC4
C'est tout bête, et ben ça fonctionne pas sur l'entrée de RA5, mais ça fonctionne sur tout le reste du PORTA
J'ai essayé avec 3 Pic18F26K22, j'ai le même résultat.
Je voudrais savoir le pourquoi....ai-je fais une erreur en oubliant un registre.... Il y de quoi ce taper un..
Code
pour ceux qui aurait la réponse, et qui répondrons.
A+
J'ai un petit soucis sur le Pic18F26K22
Voila sa se résume à ça, si j'envoie du 5 volts sur la broche RA5 la led qui est sur RC4 doit s'allumer, si pas de tension sur RA5 la led doit s'éteindre,.... et ben c'est pas le cas.
Si RA5 passe 1 allumer RC4
Si RA5 passe 0 éteindre RC4
C'est tout bête, et ben ça fonctionne pas sur l'entrée de RA5, mais ça fonctionne sur tout le reste du PORTA
J'ai essayé avec 3 Pic18F26K22, j'ai le même résultat.
Je voudrais savoir le pourquoi....ai-je fais une erreur en oubliant un registre.... Il y de quoi ce taper un..
Code
Code : Tout sélectionner
;***********************************************************************************************
Errorlevel-302 ; Supprime le message "Ensure that bank bits are correct"
radix dec ; par defaut en mode décimal
list p=18f26K22 ; processeur utilisé
#include <p18f26K22.inc> ; Définitions des constantes
;***********************************************************************************************
; CONFIG11H
CONFIG FOSC = INTIO67
CONFIG FCMEN = OFF
CONFIG IESO = OFF
; CONFIG2L
CONFIG PWRTEN = OFF
CONFIG BOREN = OFF
CONFIG BORV = 190
; CONFIG2H
CONFIG WDTEN = OFF
CONFIG WDTPS = 1
; CONFIG3H
CONFIG CCP2MX = PORTC1
CONFIG PBADEN = OFF
CONFIG CCP3MX = PORTC6
CONFIG HFOFST = OFF
CONFIG T3CMX = PORTC0
CONFIG P2BMX = PORTC0
CONFIG MCLRE = INTMCLR
; CONFIG4L
CONFIG STVREN = OFF
CONFIG LVP = OFF
CONFIG XINST = OFF
CONFIG DEBUG = OFF
; CONFIG5L
CONFIG CP0 = OFF
CONFIG CP1 = OFF
CONFIG CP2 = OFF
CONFIG CP3 = OFF
; CONFIG5H
CONFIG CPB = OFF
CONFIG CPD = OFF
; CONFIG6L
CONFIG EBTR0 = OFF
; CONFIG6H
CONFIG EBTR1 = OFF
; CONFIG7L
CONFIG EBTR2 = OFF
; CONFIG7H
CONFIG EBTR3 = OFF
;*************************************** assignations *****************************************
#DEFINE led1 LATC,4 ; RC4 ==> led verte, témoin de mise en fonction de l'appareil
;****************************** déclaration des variables *************************************
CBLOCK H'20' ; bank0
loop1 :1
loop2 :1
loop3 :1
loop4 :1
loop5 :1
loop6 :1
loop7 :1
loop8 :1
loop9 :1
durée :1
ENDC
;** "Macro pour faire une durée de temps, qui peut aller de 10 ms minimum à 2550 ms maximum "**
tempo MACRO valeur1, valeur2
movlw valeur1 ;
movwf durée ; durée du temps défini par la valeur1
call _10ms
ENDM
;****************************** adresse de depart après reset **********************************
ORG H'0'
bra debut
;********************************* interruption haute priorité *********************************
ORG H'8'
retfie
;********************************* interruption basse priorité *********************************
ORG H'18'
retfie
debut
;******************** "configuration de l'oscillateur du microcontrôleur" **********************
movlw B'01110100' ; oscillateur à 16 Mhz, fréquence stable si PLL (16 * 4)= 64 Mhz
movwf OSCCON
;**************************** configuration du registre OSCTUNE ********************************
movlw B'00000000' ; bit 6 à 1 : PLL * 4
movwf OSCTUNE ; bit 6 à 0 : PLL désactivé
;*************************** configuration du registre ANSELA **********************************
movlw B'00000000' ; en mode numérique :
movwf ANSELA ; en mode E/S : 2(RA0), 3(RA1), 4(RA2), 5(RA3), 7(RA5)
;**************************** configuration du registre ANSELB *********************************
movlw B'00000000' ; en mode numérique :
movwf ANSELB ; en mode E/S : 21(RB0), 22(RB1) 23(RB2), 24(RB3), 25(RB4), 26(RB5)
;**************************** configuration du registre ANSELC *********************************
movlw B'00000000' ; en mode numérique :
movwf ANSELC ; en mode E/S : 13(RC2), 14(RC3), 15(RC4), 16(RC5), 17(RC6), 18(RC7)
;***********************************************************************************************
movlw B'00000000' ; comparateur 1 off
movwf CM1CON0
movlw B'00000000' ; comparateur 2 off
movwf CM2CON0
;***************** configuration des registres TRISA & TRISB & TRISC & TRISE *******************
movlw B'11111111' ; RA0(2), RA1(3), RA2(4), RA3(5), RA4(6), RA5(7), RA6(10), RA7(9)
movwf TRISA ;
movlw B'11111111' ; RB0(21), RB1(22), RB2(23), RB3(24), RB4(25), RB5(26), RB6(27), RB7(28)
movwf TRISB
movlw B'00000000' ; RC0(11), RC1(12), RC2(13), RC3(14), RC4(15), RC5(16), RC6(17), RC7(18)
movwf TRISC
movlw B'00001000' ; RE3(1)
movwf TRISE ;
;**************************** configuration du registre INTCON *********************************
movlw B'00000000' ;
movwf INTCON ; interruption hors service
;***********************************************************************************************
clrf PORTA
clrf LATA
do
btfsc PORTA,5 ; si PORTA passe 1 allumer led
bsf led1
btfss PORTA,5 ; si PORTA passe 0 éteindre led
bcf led1
tempo 100 ,0 ; macro : temps, chiffre(0) ou varible(1)
; 1000 ms temps de visionnage
bra do
;********************** "pause de 10 millisecondes pour horloge de 16 Mhz" *********************
_10ms
movlw D'241'
movwf loop1
movlw D'52'
movwf loop2
decfsz loop1
bra $-D'2'
decfsz loop2
bra $-D'6'
decfsz durée,F
bra _10ms
return
end
pour ceux qui aurait la réponse, et qui répondrons.
A+
Modifié en dernier par Temps-x le ven. 1 mai 2020 11:33, modifié 3 fois.
RA5 confiné sur Pic18F26K22
- paulfjujo
Expert- Messages : 2598
- Âge : 73
- Enregistré en : juillet 2015
- Localisation : 01800
- Contact :
bonjour temps X,
test avec une R de rappel au +VCC sur RA5
je test avec un BP qui tire RA5 au 0V => OK led sur RC4 reagit bien
Voila sa se résume à ça, si j'envoie du 5 volts sur la broche RA5 la led qui est sur RC4 doit s'allumer, si pas de tension sur RA5
si pas de tension envoyée sur RA5 => RA5 en l'air =1
ou alors mets une R de tirage au 0V de 4,7 à 10K sur RA5.
comme ça , ça marche ! oui tu me diras, c'est en C !!
mais je fais ce test dix fois plus vite
test avec une R de rappel au +VCC sur RA5
je test avec un BP qui tire RA5 au 0V => OK led sur RC4 reagit bien
Code : Tout sélectionner
#define Led_RC4 LATC4_bit
#define Led_RC4_Dir TRISC4_bit
void main()
{
OSCCON = 0b01110010 ; //0x72 ; //Oscillateur à 16Mhz
OSCTUNE=0;
OSCTUNE.PLLEN=0;
ANSELA=0;
TRISA=0xFF;
Led_RC4_Dir=0;
Led_RC4=0;
while(1)
{
if (PORTA.B5==1) Led_RC4=1; else Led_RC4 =0;
Delay_1sec();
}
Voila sa se résume à ça, si j'envoie du 5 volts sur la broche RA5 la led qui est sur RC4 doit s'allumer, si pas de tension sur RA5
si pas de tension envoyée sur RA5 => RA5 en l'air =1
ou alors mets une R de tirage au 0V de 4,7 à 10K sur RA5.
comme ça , ça marche ! oui tu me diras, c'est en C !!
mais je fais ce test dix fois plus vite
RA5 confiné sur Pic18F26K22
RA5 confiné sur Pic18F26K22
RA5 confiné sur Pic18F26K22
Re
paulfjujo pour l'aide ton code fonctionne.
Eurêka.... J'ai trouvé, et ben c'est vicieux, et maintenant je le ferais, il faut que BSR pointe sur la banque 15 pourr la configuration de ANSELA
Et quand on réfléchi c'est normal, car tout les registres se trouve en Bank 15, il ne faut pas oublier de revenir en Bank 0 au commencement du programme.
C'est en regardant le code source ASM de paulfjujo que cela m"a ouvert l'esprit...
Pour une fois que le C rend service.....
A+
paulfjujo pour l'aide ton code fonctionne.
Eurêka.... J'ai trouvé, et ben c'est vicieux, et maintenant je le ferais, il faut que BSR pointe sur la banque 15 pourr la configuration de ANSELA
Et quand on réfléchi c'est normal, car tout les registres se trouve en Bank 15, il ne faut pas oublier de revenir en Bank 0 au commencement du programme.
C'est en regardant le code source ASM de paulfjujo que cela m"a ouvert l'esprit...
Pour une fois que le C rend service.....
A+
RA5 confiné sur Pic18F26K22
Temps-x a écrit : Pour une fois que le C rend service.....
Venant de Temps-X, je pense que je vais encadrer cette phrase Tu vois Gérard, il n'y a pas que toi qui se fait charrier
@++
RA5 confiné sur Pic18F26K22
- Gérard
Expert- Messages : 1661
- Âge : 65
- Enregistré en : septembre 2015
- Localisation : Alsace - Haut-Rhin
venom a écrit :Temps-x a écrit : Pour une fois que le C rend service.....
Venant de Temps-X, je pense que je vais encadrer cette phrase Tu vois Gérard, il n'y a pas que toi qui se fait charrier
@++
Venom, moi aussi je vais encadrer cette phrase.
Et j'ai lu ton texte en tout petit.
RA5 confiné sur Pic18F26K22
Bonsoir Gérard, venom, et tout le forum,
C'est pas l'écriture d'un code qui fait perdre ou gagner du temps, ni même le test, la plupart du temps ou l'on perd beaucoup de temps c'est comprendre la datasheet.
Il y a aussi les imprévues
- Trouver ou recherché une méthode pour que ça fonctionne correctement
- Un fil de coupé
- Un mot mal écrit dans le code
- Un composant qui est faux
- Plantage du PC sans avoir sauvegarder le programme écrit
- Coupure de courant par EDF sans avoir sauvegarder le programme écrit
- Et la parti électronique ou l'on peut galérer pour ceux qui son pas du métier
Il y en d'autre, c'est tout ça qui fait perde du temps, en général pour écrit un programme je mets entre 1 et 2 jours, quand je sais ou je vais.
En parlant du langage ASM, Hier notre maître Bigonoff et intervenu sur futura voir Ici pour les plus intéressés, le C en prend plein la figure
Ah les deux chenapans, toujours un coup à faire,Gérard c'est excusable à causse des radiations
A+
paulfjujo a écrit :Source du message comme ça , ça marche ! oui tu me diras, c'est en C !! mais je fais ce test dix fois plus vite
C'est pas l'écriture d'un code qui fait perdre ou gagner du temps, ni même le test, la plupart du temps ou l'on perd beaucoup de temps c'est comprendre la datasheet.
Il y a aussi les imprévues
- Trouver ou recherché une méthode pour que ça fonctionne correctement
- Un fil de coupé
- Un mot mal écrit dans le code
- Un composant qui est faux
- Plantage du PC sans avoir sauvegarder le programme écrit
- Coupure de courant par EDF sans avoir sauvegarder le programme écrit
- Et la parti électronique ou l'on peut galérer pour ceux qui son pas du métier
Il y en d'autre, c'est tout ça qui fait perde du temps, en général pour écrit un programme je mets entre 1 et 2 jours, quand je sais ou je vais.
En parlant du langage ASM, Hier notre maître Bigonoff et intervenu sur futura voir Ici pour les plus intéressés, le C en prend plein la figure
venom a écrit :Source du message Venant de Temps-X, je pense que je vais encadrer cette phrase
Gérard a écrit :Source du message Venom, moi aussi je vais encadrer cette phrase.
Et j'ai lu ton texte en tout petit.
Ah les deux chenapans, toujours un coup à faire,Gérard c'est excusable à causse des radiations
A+
RA5 confiné sur Pic18F26K22
- paulfjujo
Expert- Messages : 2598
- Âge : 73
- Enregistré en : juillet 2015
- Localisation : 01800
- Contact :
venom a écrit :Temps-x a écrit : Pour une fois que le C rend service.....
Venant de Temps-X, je pense que je vais encadrer cette phrase Tu vois Gérard, il n'y a pas que toi qui se fait charrier
@++
et j'en profite pour rajouter une couche !
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
RA5 confiné sur Pic18F26K22
Bonsoir paulfjujo, Gérard, venom, et tout le forum,
Euh......C'est pas valable, Il manque la date, et le nom
A+
paulfjujo a écrit :Source du message et j'en profite pour rajouter une couche !
Euh......C'est pas valable, Il manque la date, et le nom
A+
Retourner vers « Langage ASM »
Qui est en ligne
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 121 invités