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 ---
Forum général sur le langage C !

Modérateur : Jérémy

LCD I2C
paulfjujo
Avatar de l’utilisateur
Confirmé
Confirmé
Messages : 981
Âge : 67
Enregistré en : juillet 2015
Localisation : 01120
Contact :

#61 Message par paulfjujo » jeu. 3 mai 2018 17:06 lien vers la Data-Sheet : Cliquez ici

ton code ne marchait pas ...

OK maintenant ..chez moi .. à toi de voir

difference de configuration
Enlevé Brown out Reset Selection => was enabled sur 4,1v => mis sur 2,1V
Enlevé In circuit Debugger => mis sur disable
donc avec Build Type
en mode release au lieu de ICD debug

maConfig.JPG


modif init LCD
usage de variable globale pour rs (au lieu de locale dans chaque fonction)
pour qu'elle soit vue dans les differente fonctions ..
reutiliation de I2C_LCD_Cmd plutot que de detailler avec I2C_Write ...

j'ai remis un bout d'UART dedans .. tu peux le virer ..

Code : Tout sélectionner



void I2C_LCD_Init
()
 {
    rs=1;
    Delay_ms(500); //30 // laisser le temps au LCD de s'alimenter correctement
    SQA=1;
    I2C_LCD_Cmd(0x30 );
    Delay_ms(10);
    I2C_LCD_Cmd(0x30);
    Delay_ms(10);
    I2C_LCD_Cmd(0x30);
    Delay_ms(10);
    I2C_LCD_Cmd(0x20);
    Delay_ms(10);
    I2C_LCD_Cmd(0x28);
     Delay_ms(10);
    I2C_LCD_Cmd(0x06);
     Delay_ms(10);
    I2C_LCD_Cmd(0x01);
     Delay_ms(50);
    SQA=0;
}


SQA sert pour la capture analyser logique .. à virer
Init_LCD_1ere_commande.jpg


le projet mikroC
Verifie bien l'adresse LCD dans le #define ..
_Venom_LCD I2C_180503.zip
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.

LCD I2C
venom
Avatar de l’utilisateur
Passioné
Passioné
Messages : 360
Âge : 32
Enregistré en : avril 2016
Localisation : . <------ ici
Contact :

#62 Message par venom » jeu. 3 mai 2018 18:00 lien vers la Data-Sheet : Cliquez ici

Merci paulfjujo,

Je viens de lancer ton hex dans mon pic pour voir et ça fonctionne a chaque coup. Merci a toi de t’être pencher sur le code a ce point. Tout a changer :eek: Je vais maintenant comparer les 2 codes, pour voir les changements et comprendre. Et si j’ai des question sur ce dernier... :sifflotte: :wink: Et en plus le texte défile c'est rigolo sa :-D






@++

LCD I2C
venom
Avatar de l’utilisateur
Passioné
Passioné
Messages : 360
Âge : 32
Enregistré en : avril 2016
Localisation : . <------ ici
Contact :

#63 Message par venom » ven. 4 mai 2018 22:06 lien vers la Data-Sheet : Cliquez ici

Bonjour,

J'ai commencer a épluché ton code, je me demande a quoi correspond les fonctions SQA / SQA_Dir ???

Et ce bout de code aussi. Il sert a quoi exactement ? car dans l'aide mikroc il n'y a rien a ce sujet. :oops:

Code : Tout sélectionner


SSPSTAT
.SMP=0; //0 = Input data sampled at middle of data output time
     SSPSTAT.CKE=1; //1 = Data transmitted on rising edge of SCK
     SSPSTAT.UA=0;
     SSPCON.WCOL=0;
     SSPCON.SSPEN=1;
     SSPCON.SSPM3=0;  // adresse I2C 7 bits
     SSPCON.SSPM2=1;
     SSPCON.SSPM1=1;
     SSPCON.SSPM0=0


En revanche la fonction I2C_LCD_Init tu as fait un sacré nettoyage/changement :-D

D'avance merci.






@++

LCD I2C
paulfjujo
Avatar de l’utilisateur
Confirmé
Confirmé
Messages : 981
Âge : 67
Enregistré en : juillet 2015
Localisation : 01120
Contact :

#64 Message par paulfjujo » sam. 5 mai 2018 08:51 lien vers la Data-Sheet : Cliquez ici

bonjour,
SQA ne sert qu'a monter une sortie pour armer ma capture du dialogue I2C analyser logique.

le code en dessous de init I2C est
une surcouche d'init directe via les registres MSSP.
tu peux essayer de virer cette partie
idem pour SQA

LCD I2C
venom
Avatar de l’utilisateur
Passioné
Passioné
Messages : 360
Âge : 32
Enregistré en : avril 2016
Localisation : . <------ ici
Contact :

#65 Message par venom » sam. 5 mai 2018 09:21 lien vers la Data-Sheet : Cliquez ici

Bonjour,

Ah d'accord :-D merci







@++

[RESOLU] LCD I2C
venom
Avatar de l’utilisateur
Passioné
Passioné
Messages : 360
Âge : 32
Enregistré en : avril 2016
Localisation : . <------ ici
Contact :

#66 Message par venom » lun. 21 mai 2018 01:17 lien vers la Data-Sheet : Cliquez ici

Bonjour,

J'ai mis a jour le code fonctionnelle en page 1.
Merci au membres du forum. Et plus particulièrement a paulfjujo qui au final a tout fait. :sifflotte:






@++
Modifié en dernier par venom le lun. 21 mai 2018 20:43, modifié 1 fois.

[RESOLU] LCD I2C
Jérémy
Administrateur du site
Administrateur du site
Messages : 2044
Âge : 39
Enregistré en : juillet 2015
Localisation : Dans le sud
Contact :

#67 Message par Jérémy » lun. 21 mai 2018 10:23 lien vers la Data-Sheet : Cliquez ici

Félicitations !

Belle persévérance :bravo:
C'est en faisant des erreurs, que l'on apprend le mieux !!!


Retourner vers « Langage C »

Qui est en ligne

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