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 ---
On parle des Pics, sans rapport avec le langage ou la programmation

Modérateur : Jérémy

Investir dans un PIC sans problèmes de configuration
Florian41
Membre
Membre
Messages : 13
Enregistré en : mai 2017

#1 Message par Florian41 » mar. 4 juil. 2017 09:22

Bonjour,

Comme vous l'avez vu dans mes précédents post, je travaille sur de la programmation de PIC que depuis plusieurs mois et je ne suis pas totalement à l'aise avec les problèmes de configurations de PIC. Mon objectif est de commander un port de 12 bits à partir d'une lecture de fréquence. Mais j'ai systématiquement des problèmes, très probablement dus au fait que la configuration du pic m'empêché d'utiliser les sorties numériques comme je le souhaite. Pourtant j'ai systématiquement utilisé les instruction PORT, TRIS et LAT à foison, et toujours aucun résultat. A croire que les modèles de PIC sont défectueux au niveau du hard... (Pour ma part j'utilise un pic 18F45K80 et un PIC16F916).

Je souhaite avoir vos conseils concernant, pour vous, les meilleurs modèles de PIC (de préférence 40 broches) avec lesquels vous avez eus le moins de problème pour la configuration. Merci d'avance :wink:

Investir dans un PIC sans problèmes de configuration
Jérémy
Administrateur du site
Administrateur du site
Messages : 2722
Âge : 44
Enregistré en : juillet 2015
Localisation : Dans le sud
Contact :

#2 Message par Jérémy » mar. 4 juil. 2017 10:02

Bonjour Florian41,

EN 40 broches je travaille souvent un PIC 18F46K22 qui se trouve sur ma plaque easy PIC.

La probabilité que ce soit un problème du au hard du PIC est maigre. D’après mon expérience c'est souvent une petite chose qui nous fait tout foirer ! Quand un problème me saoule , je respire et repart de zéro en testant tout petit a petit. Il faut décortiquer ces programmes .

Pour ton problème de sortie numérique mais une Led sur chaque sortie et fait tout petit programme qui la fait clignoter pendant 1 seconde . Ainsi tu testera ton timer et ton oscillateur, et ta sortie numérique . Ca prend un peu de temps , mais ca te confirmeras ton réglage.

Certaines librairies affectent les I/O il faut faire attention à toues les librairies " d'initialisation" .
C'est en faisant des erreurs, que l'on apprend le mieux !!!

Investir dans un PIC sans problèmes de configuration
cyril13110
Confirmé
Confirmé
Messages : 724
Âge : 41
Enregistré en : avril 2016
Localisation : 13

#3 Message par cyril13110 » mar. 4 juil. 2017 10:03

salut,
je ne peux que te conseiller de travailler sur le parametrage de tes pics. si tu n'arrive pas a le faire sur un tu n'arrivera pas a le faire sur tous.
tu as certainement du oublié des bits tu peux mettre un de tes codes que lon regarde pour tenter de t'orienter sur le bon paramétrage ?

Investir dans un PIC sans problèmes de configuration
paulfjujo
Avatar de l’utilisateur
Expert
Expert
Messages : 2589
Âge : 73
Enregistré en : juillet 2015
Localisation : 01800
Contact :

#4 Message par paulfjujo » mar. 4 juil. 2017 14:27

Bonjour Florian41 et à tous

Florian41 a écrit :... Je souhaite avoir vos conseils concernant, pour vous, les meilleurs modèles de PIC (de préférence 40 broches) avec lesquels vous avez eus le moins de problème pour la configuration..


je confirme , pour ma part, que le 18F46K22 est performant , et assez facile à utiliser
contrairement aux modeles ayant un Configurateur de Pin ( affectation des pins par software).
preferer un 18F à un 16F ... dixit MikroE !

J'aime bien aussi le petit 12F1840 en DIP8 .. petit mais costaud en ressources UART, I2C, SPI ...
et si il manque des pins : Entrees sorties, on peut toujours mettre un MCP23017 sur le bus I2C ,
et par dessuS un LCD 2119 I2C 2x16 ou un 4x20 cars.

Par la suite ..un clicker2 18F87J50 .. et là , pour arriver à le saturer ,il faudra aligner du code !
L'avantage est la presence de 2 support MikroBus .

à Florian41:
Quid du post concernant le MLI
viewtopic.php?f=10&t=502 ?
Aide toi, le ciel ou FantasPic t'aidera

Investir dans un PIC sans problèmes de configuration
Florian41
Membre
Membre
Messages : 13
Enregistré en : mai 2017

#5 Message par Florian41 » mar. 4 juil. 2017 16:56

J'ai cherché à nouveau à comprendre pourquoi mes ports de sortie étaient inactifs. J'ai chargé un programme sur MikroC avec les configurations classiques :

Code : Tout sélectionner

/***************************************************************************/
// Connections de LCD
sbit LCD_RS at RB4_bit;
sbit LCD_EN at RB5_bit;
sbit LCD_D4 at RB0_bit;
sbit LCD_D5 at RB1_bit;
sbit LCD_D6 at RB2_bit;
sbit LCD_D7 at RB3_bit;
sbit LCD_RS_Direction at TRISB4_bit;
sbit LCD_EN_Direction at TRISB5_bit;
sbit LCD_D4_Direction at TRISB0_bit;
sbit LCD_D5_Direction at TRISB1_bit;
sbit LCD_D6_Direction at TRISB2_bit;
sbit LCD_D7_Direction at TRISB3_bit;
// Fin de connections

void main()
{
int valeur 255;
TRISB 0;
TRISC 0;
TRISD 0;
TRISA 0;

/* Configurer E/S du portB comme numériques*/
//ANSELH = 0;
//ANSEL  = 0;
Lcd_Init();                        // Initialiser LCD
Lcd_Cmd(_LCD_CLEAR);               // Effacer un texte sur l’ecrant LCD
Lcd_Cmd(_LCD_CURSOR_OFF);          // Curseur est en off
Lcd_Out(1,2,"-- AFFICHAGE -- ");   // Ecrire le texte sur la 1ère ligne
Lcd_Out(2,1,"display_LCD_4bit");   // Ecrire le texte sur la 2ème ligne
while(1)
{
    
PORTC valeur;
    
PORTD valeur;
    
PORTA valeur;
    
Delay_ms(500);
    
PORTC 0;
    
PORTD 0;
    
PORTA 0;
    
Delay_ms(500);
}


En compilant le programme et en l'implantant sur ma platine (avec leds connectées en sortie) j'ai toujours mes 2 ports RC0 et RC1 inactifs. En revanche la valeur s'affiche correctement sur le port D. J'ai connecté des résistances de 1K à l'alimentation (car sorties à collecteur ouvert). Mais pas de clignotement. Donc surement un problème au niveau de mes bits de configuration...

CONFIG1L : $300000 : 0x001D
CONFIG1H : $300001 : 0x0003
CONFIG2L : $300002 : 0x007F
CONFIG2H : $300003 : 0x007C
CONFIG3H : $300005 : 0x0089
CONFIG4L : $300006 : 0x0091
CONFIG5L : $300008 : 0x000F
CONFIG5H : $300009 : 0x00C0
CONFIG6L : $30000A : 0x000F
CONFIG6H : $30000B : 0x00E0
CONFIG7L : $30000C : 0x000F
CONFIG7H : $30000D : 0x0040

Qu'est ce qui pose problème selon vous?

Investir dans un PIC sans problèmes de configuration
paulfjujo
Avatar de l’utilisateur
Expert
Expert
Messages : 2589
Âge : 73
Enregistré en : juillet 2015
Localisation : 01800
Contact :

#6 Message par paulfjujo » mar. 4 juil. 2017 20:49

bonsoir


Utiliser LAT au lieu de PORT pour commander des sorties ...

led connecté like This ?
Collecteur ouvert ----R=1K ------ Cathode Led ---Anode Led ----+5V

verifier cec i:
bit 1-0 SCS<1:0>: System Clock Select bits(4)

RC0_RC1_18F45K80.jpg



1x = Internal oscillator block (LF-INTOSC, MF-INTOSC or HF-INTOSC)
01 = SOSC oscillator
00 = Default primary oscillator (OSC1/OSC2 or HF-INTOSC with or without PLL. Defined by the
FOSC<3:0> Configuration bits, CONFIG1H<3:0>.)
je suppose que tu utilises un oscillateur à quartz ?
vu le choix HS oscillateur

Attention!! mais ce PIC a une particularité !
SOSCSEL from CONFIG1L register to '10'. Then you can turn on and off the whole port without problems.
(10 = Digital (SCLKI) mode; I/O port functionality of RC0 and RC1 is enabled)

D'habitude la fonction par defaut est dans la 1ere ligne de definition du bit I/O.

SOSCpower.jpg


Config 1L= 0x0015 au lieu de 0x001D

remarque : il vaudraitt mieux ne pas se disperser dans tous les sujets de post.
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
Aide toi, le ciel ou FantasPic t'aidera

Investir dans un PIC sans problèmes de configuration
cyril13110
Confirmé
Confirmé
Messages : 724
Âge : 41
Enregistré en : avril 2016
Localisation : 13

#7 Message par cyril13110 » mer. 5 juil. 2017 22:46

bonsoir a tous,

quelle est la difference reel entre LAT et PORT? perdo de mon côté avec mikrobasic je nai jamais reussi a faire quoi que ce soit avec LAT.
paulfjujo a écrit :Utiliser LAT au lieu de PORT pour commander des sorties ....


en effet si il y a plusieurs utilité pour cest 2 voies autabt tester de forcer a faire revenir en position I/O.
au pire se nest que 2 lignes dans un code.....une petite goute deau qui pourrai te permettre d'avancer. ...
a +

Investir dans un PIC sans problèmes de configuration
paulfjujo
Avatar de l’utilisateur
Expert
Expert
Messages : 2589
Âge : 73
Enregistré en : juillet 2015
Localisation : 01800
Contact :

#8 Message par paulfjujo » jeu. 6 juil. 2017 11:29

cyril13110 a écrit :...quelle est la difference reel entre LAT et PORT? perdo de mon côté avec mikrobasic je nai jamais reussi a faire quoi que ce soit avec LAT.


traduction partielle 16F1847_18pin_DS_41453C.pdf paragrah 12. I/O Port :

Chaque Port dispose de 3 registres pour etre manipulés.
Ces registres sont :
*TRISx registre pour definir la direction Entree ou Sortie
*PORTx pour lire l'etat de la broche du composant
*LATx Memo de l'etat de la sortie
La memorisation de l'etat de la sortie est tres utile
pour lire/modifier/enregistrer la broche en cours d'utilisation
Une ecriture sur LATx a le meme effet qu'une ecriture
sur le registre PORTx correspondant.
Une lecture sur le registre LATx lit la valeur memorisée
dans la bascule de commande de la sortie.
Alors qu'une lecture PORTX , lit l'etat en cours de la pin de sortie.

MikroChip et MikroE recommande fortement l'usage de LATx
pour actionner les sorties.
Les sequences successive d'ecritures sur un meme PORTx
pouvant avoir des ratées.

voir le diagram de commande d'une sortie.
Generic_I_O_pin.jpg
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
Aide toi, le ciel ou FantasPic t'aidera

Investir dans un PIC sans problèmes de configuration
cyril13110
Confirmé
Confirmé
Messages : 724
Âge : 41
Enregistré en : avril 2016
Localisation : 13

#9 Message par cyril13110 » jeu. 6 juil. 2017 11:37

ok ok, je pose la question parceque le LAT m'a toujours posé probleme.......a moins que je l'ai mal utilisé....
je referais un test dés que je pourrai souder ma nouvelle carte....

Investir dans un PIC sans problèmes de configuration
paulfjujo
Avatar de l’utilisateur
Expert
Expert
Messages : 2589
Âge : 73
Enregistré en : juillet 2015
Localisation : 01800
Contact :

#10 Message par paulfjujo » jeu. 6 juil. 2017 12:45

nota: sur les "vieux" PIC16F , la notion de LATx n'existe pas .. il n'y a que PORTx pour ecrire dans une sortie..
Aide toi, le ciel ou FantasPic t'aidera


Retourner vers « Généralités sur les PICs »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 36 invités