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 : Jérémy
Branchement sur carte EasyPIC V7 ?
-
Jérémy
Administrateur du site- Messages : 2722
- Âge : 44
- Enregistré en : juillet 2015
- Localisation : Dans le sud
- Contact :
Bonsoir à tous ,
Je rencontre un problème plutôt inexplicable pour moi .
Je vous mets en lien le schéma de la carte EasyPIC V7 que je possède . Sur cette carte est branchée un PIC18F46K22 5 (Lien en haut).
Lien vers schéma
J' ai branché un module click sur le MikroBUS 1 .
J'ai également l'eranc GLCD qui utilise le PORT D pour les data et le PORT B pour l'utilisation.
J'utilise l'UART1 pour communiquer avec mon module. J'ai donc le deux LEDs RC7 et RC6 allumées, pour la com quand la com UART est au repos (état haut). Tout va bien, la com fonctionne.
Maintenant je souhaitais utiliser les broches du PORT E pour me faire des entrées de bouton poussoir.
Je passe donc les 3 premiers bit du port E en entrée.
La déjà bizarrement l'entrée RE1 est allumée ( mais pas à fond) ???? Alors que rien n'est branché dessus ..... . La com UART fonctionne !
Je précise que quand j’appuie sur un BP je mets à Vcc la PIN du PIC .
Je décide donc de mettre un R de pull-down sur l'entrée RE1 pour forcer l'état à GND en absence d'appui . Et la poufffff, ma led RC7 s'éteint et la com UART ne fonctionne plus.
Du coup je ne sais pas si ça viens du PIC, genre un double emploi d'une fonction ou d'un réglage sur ma plaque ( connecteurs ou autres) .
Si quelqu'un à le courage de regarder le schéma ......
car je ne vois vraiment pas pourquoi RE1 aurait une quelconque relation avec RC7
Je rencontre un problème plutôt inexplicable pour moi .
Je vous mets en lien le schéma de la carte EasyPIC V7 que je possède . Sur cette carte est branchée un PIC18F46K22 5 (Lien en haut).
Lien vers schéma
J' ai branché un module click sur le MikroBUS 1 .
J'ai également l'eranc GLCD qui utilise le PORT D pour les data et le PORT B pour l'utilisation.
J'utilise l'UART1 pour communiquer avec mon module. J'ai donc le deux LEDs RC7 et RC6 allumées, pour la com quand la com UART est au repos (état haut). Tout va bien, la com fonctionne.
Maintenant je souhaitais utiliser les broches du PORT E pour me faire des entrées de bouton poussoir.
Je passe donc les 3 premiers bit du port E en entrée.
La déjà bizarrement l'entrée RE1 est allumée ( mais pas à fond) ???? Alors que rien n'est branché dessus ..... . La com UART fonctionne !
Je précise que quand j’appuie sur un BP je mets à Vcc la PIN du PIC .
Je décide donc de mettre un R de pull-down sur l'entrée RE1 pour forcer l'état à GND en absence d'appui . Et la poufffff, ma led RC7 s'éteint et la com UART ne fonctionne plus.
Du coup je ne sais pas si ça viens du PIC, genre un double emploi d'une fonction ou d'un réglage sur ma plaque ( connecteurs ou autres) .
Si quelqu'un à le courage de regarder le schéma ......
car je ne vois vraiment pas pourquoi RE1 aurait une quelconque relation avec RC7
Branchement sur carte EasyPIC V7 ?
Bonsoir Jérémy,et bonsoir à tous ,
1) As tu éteins tes comparateurs ?
2) As tu mis tes pattes comme E/S, et coupé le mode numérique ?
J'ai regardé le schéma, mais reste à voir comment tu as branchés tous ça, le code serais le bienvenu
A+
1) As tu éteins tes comparateurs ?
2) As tu mis tes pattes comme E/S, et coupé le mode numérique ?
J'ai regardé le schéma, mais reste à voir comment tu as branchés tous ça, le code serais le bienvenu
A+
Branchement sur carte EasyPIC V7 ?
-
Jérémy
Administrateur du site- Messages : 2722
- Âge : 44
- Enregistré en : juillet 2015
- Localisation : Dans le sud
- Contact :
Bonsoir Temps-x,
Non je n'ai pas éteint les comparateurs ! je vais me rencardé la dessus ! tu crois que ça pourrait être ça ma cause ?
Toutes les pattes sont en numériques
1) As tu éteins tes comparateurs ?
Non je n'ai pas éteint les comparateurs ! je vais me rencardé la dessus ! tu crois que ça pourrait être ça ma cause ?
2) As tu mis tes pattes comme E/S, et coupé le mode numérique ?
Toutes les pattes sont en numériques
Code : Tout sélectionner
/*
PIC18F46K22 : http://ww1.microchip.com/downloads/en/DeviceDoc/41412F.pdf
*/
// connexion du module GLCD
char GLCD_DataPort at PORTD;
sbit GLCD_CS1 at LATB0_bit;
sbit GLCD_CS2 at LATB1_bit;
sbit GLCD_RS at LATB2_bit;
sbit GLCD_RW at LATB3_bit;
sbit GLCD_EN at LATB4_bit;
sbit GLCD_RST at LATB5_bit;
sbit GLCD_CS1_Direction at TRISB0_bit;
sbit GLCD_CS2_Direction at TRISB1_bit;
sbit GLCD_RS_Direction at TRISB2_bit;
sbit GLCD_RW_Direction at TRISB3_bit;
sbit GLCD_EN_Direction at TRISB4_bit;
sbit GLCD_RST_Direction at TRISB5_bit;
// Fin
//----------------------------------- VARIABLES et CONSTANTES ------------------------------------------------
char i, Temp, Index_Buff, Buffer_plein;
char Buffer[15];
//--------------------------------------- PROTOTYPE ---------------------------------------------------
//---------------------------------------------------------------------------------------------------------------------
void interrupt() {
if ( RC1IF_bit == 1 ) { // reception UART detectée
Temp = UART1_Read(); // On stock temporairement la variable recue
if (Temp == '\r') { // Verifie fin de message(Carriage Return) ou Buffer plein
Buffer[Index_Buff] = 0; // On rajoute un Terminateur de string
Index_Buff = 0; // RZA du compteur de l'index
Buffer_plein = 1; // Singale que le Buffer est rempli et qu'on peut le lire
}
else{
Buffer[Index_Buff] = Temp; // On remplit le Buffer avec le caractere recu
Index_Buff++ ; // On incremente l'index
}
}
}
/*#####################################################################################################################
##################################### PROGRAMME PRINCIPAL #####################################################
#####################################################################################################################*/
void main() {
ANSELA = ANSELB = ANSELC = ANSELD = ANSELE = 0; // Tous les PORT en digitaux
TRISA = 0b00000111; // RE0, RE1 et RE2 en entrée pour BP
TRISE = 0b00000111;
Glcd_Init(); // Initialisation du GLCD
Glcd_Set_Font(FontSystem5x7_v2, 5, 7, 32); // Charge la police
UART1_Init(19200); // Initialise l'UART
Delay_ms(100); // Pause de stabilisation
RC1IE_bit = 1; // Active les interruption sur reception UART
RC1IF_bit = 0; // On RAZ le drapeau
PEIE_bit = 1; // Active les Interruption périphérique
GIE_bit = 1; // Active les interruptinos globales
Glcd_Fill(0x00); // Efface l'écran
delay_ms(1000);
for (i=0;i<15;i++){ // RAZ le buffer
Buffer[i] = 0;
}
Index_Buff = Buffer_plein = 0 ;
/*#####################################################################################################################
####################################### BOUCLE INFINIE #######################################################
#####################################################################################################################*/
while(1) {
if (PORTE.B0 == 1) { // If PORTE.B0 is pressed :
delay_ms(20);
if (PORTE.B0 == 1) {
Glcd_Write_Text("appui RE0", 0, 0, 1);
UART1_Write_text("Essai\r");
Delay_ms(500); // Pause
Glcd_Write_Text(" ", 0, 0, 1);
while (PORTE.B0 == 1);
}
}
if (Buffer_plein == 1){ // Si le Buffer est remplit
Glcd_Write_Text(" ", 1, 3, 1); // J'efface la ligne du buffer
Glcd_Write_Text(Buffer, 1, 3, 1); // J'affiche le buffer
Buffer_plein = 0; // Je raz le flag
}
}
}
Branchement sur carte EasyPIC V7 ?
-
Jérémy
Administrateur du site- Messages : 2722
- Âge : 44
- Enregistré en : juillet 2015
- Localisation : Dans le sud
- Contact :
J'ai épluché la DS pour trouver des infos sur les comparateurs . Pas évident ces registre !
Je pense qu'avec :
cela devrait les coupés , mais sans effet sur mon problème, dés que je met RE1 en pull-down RC7 passe à 0 aussi.
Je pense qu'avec :
Code : Tout sélectionner
CM1CON0 = 0;
CM2CON0 = 0;
cela devrait les coupés , mais sans effet sur mon problème, dés que je met RE1 en pull-down RC7 passe à 0 aussi.
Branchement sur carte EasyPIC V7 ?
-
cyril13110
Confirmé- Messages : 724
- Âge : 41
- Enregistré en : avril 2016
- Localisation : 13
bonjour,
physiquement (hors pic) il n'y a pas de lien entre le PE1 et le PC7.
ca aurai pu etre des cavaliers mal placé mais non.....un cours circuit interne d'une puce de la plaquette....mais non.....
hormis un faut contact ou des soudures abimé, ca viens du coup forcement de l’intérieur du pic....
ton code n'a pas l'air d'etre en cause, reste plus qu'a te palucher l'ensemble des registres pour trouver le bon....
physiquement (hors pic) il n'y a pas de lien entre le PE1 et le PC7.
ca aurai pu etre des cavaliers mal placé mais non.....un cours circuit interne d'une puce de la plaquette....mais non.....
hormis un faut contact ou des soudures abimé, ca viens du coup forcement de l’intérieur du pic....
ton code n'a pas l'air d'etre en cause, reste plus qu'a te palucher l'ensemble des registres pour trouver le bon....
Branchement sur carte EasyPIC V7 ?
- paulfjujo
Expert- Messages : 2589
- Âge : 73
- Enregistré en : juillet 2015
- Localisation : 01800
- Contact :
bonjour Jeremy et à tous,
Les PINS du port E sont multiplexées.
je vois un semblant de lien avec CCP3MX :
page 152 DS
TABLE 10-14: PORTE I/O SUMMARY
parametre config
CONFIG 3H
CCP3MX: CCP3 MUX bit
1 = CCP3 input/output is multiplexed with RB5
0 = CCP3 input/output is multiplexed with RC6(1)
CCP3 input/output is multiplexed with RE0(2)
Alternate pin assignment for P3A/CCP3 when Configuration bit CCP3MX is clear
RE1/P3B/AN6
P3B DIG Enhanced CCP3 PWM output.
RC7 peut etre affecté à
P3B 0 0 O CMOS Enhanced CCP3 PWM output 2.
14.5 Register Definitions: ECCP Control
REGISTER 14-1: CCPxCON: STANDARD CCPx CONTROL REGISTER
essaie de rajouter dans l'init, meme si par defaut il devrait etre à zero (sur reset)
CCP3CON=0;
C'est quoi ton module sur le mikroBus #1 ?
.. car je ne vois vraiment pas pourquoi RE1 aurait une quelconque relation avec RC7..
Les PINS du port E sont multiplexées.
je vois un semblant de lien avec CCP3MX :
page 152 DS
TABLE 10-14: PORTE I/O SUMMARY
parametre config
CONFIG 3H
CCP3MX: CCP3 MUX bit
1 = CCP3 input/output is multiplexed with RB5
0 = CCP3 input/output is multiplexed with RC6(1)
CCP3 input/output is multiplexed with RE0(2)
Alternate pin assignment for P3A/CCP3 when Configuration bit CCP3MX is clear
RE1/P3B/AN6
P3B DIG Enhanced CCP3 PWM output.
RC7 peut etre affecté à
P3B 0 0 O CMOS Enhanced CCP3 PWM output 2.
14.5 Register Definitions: ECCP Control
REGISTER 14-1: CCPxCON: STANDARD CCPx CONTROL REGISTER
essaie de rajouter dans l'init, meme si par defaut il devrait etre à zero (sur reset)
CCP3CON=0;
C'est quoi ton module sur le mikroBus #1 ?
Branchement sur carte EasyPIC V7 ?
-
Jérémy
Administrateur du site- Messages : 2722
- Âge : 44
- Enregistré en : juillet 2015
- Localisation : Dans le sud
- Contact :
Ok j'essaye ça ce soir sans faute ! J'avais pensé au multiplexage, car la led n'est pas allumé a fond . Donc elle ne doit etre allumée en permanence donc i ldoit y avoir du traffic sur cette broche ! ( état haut et état bas successif) . mais je n'ai jamais réussis a trouver quoi ;
Je pourrai regarder ma plaque a l'oscillo demain au pire .
Il s'agit du module Trf Click !
Je pourrai regarder ma plaque a l'oscillo demain au pire .
Il s'agit du module Trf Click !
Branchement sur carte EasyPIC V7 ?
Branchement sur carte EasyPIC V7 ?
Branchement sur carte EasyPIC V7 ?
-
Jérémy
Administrateur du site- Messages : 2722
- Âge : 44
- Enregistré en : juillet 2015
- Localisation : Dans le sud
- Contact :
Bonjour,
Toujours pareil . par contre la broche RE1 est reliée au MikroBUS. Et comme j'ai mon module sur le MikroBUS, je me rends compte qu'elle est sur la broche RST .
Il doit y avoir un rapport ..... JE creuse !!!!!
Mets les en analogique, et essai de nouveau.
Toujours pareil . par contre la broche RE1 est reliée au MikroBUS. Et comme j'ai mon module sur le MikroBUS, je me rends compte qu'elle est sur la broche RST .
Il doit y avoir un rapport ..... JE creuse !!!!!
Retourner vers « Généralités sur les PICs »
Qui est en ligne
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 40 invités