Précédent   Forum FS Generation > Futura-Techno : les forums de l'informatique et des technologies > Électronique
Mot de passe oublié ? Inscrivez-vous !


Réponse
 
Outils de la discussion Modes d'affichage
Vieux 14/12/2006, 19h31   #1
 
Date d'inscription: juin 2003
Messages: 553
boussole électronique

bonjour

Je souhaite réaliser un boussole électronique avec le module CMPSO3. J'utilise pour le développement la plaque EASYPICS 3 (http://www.lextronic.fr/mikro/PP2.htm) et pour écrire et compiler mon programme mikroC (version de démo téléchargeable http://www.mikroe.com/en/compilers/mikroc/pic/)
le microcontroleur est le pic18f252, j'utilise le module en I2C, j'ai créé le programme je le compil, ok, je le charge dans le pic, ok, mais je n'ai rien en retour.
voilà le programme:

unsigned char cap_hex;

void main (void)
{
//TRISC = 0;
TRISC.F2 = 0;
TRISC.F1 = 0;
PORTC.F2 = 1;
PORTC.F1 = 0;
Lcd_Init(&PORTB); //initialisation du port B pour l'afficheur LCD
Lcd_Out(1,1,"Cap:"); //ecrire cap sur le LCD ligne 1 colone 1
I2C_Init(10000); //initialisation du protocole I2C
while (1)
{
I2C_Start(); //début de l'I2C
I2C_Wr(0xc0); //envoi de l'adresse de la boussole
I2C_Wr(1); //on dit que l'on veut lire le registre 1
I2C_Start();
I2C_Wr(0xc1); //envoi de la commande de lecture
cap_hex=I2C_Rd(0); //lecture avec un ACK
I2C_Stop(); //arret du protocole I2C
if (cap_hex > 127)
{
Lcd_Out(1,5,"1000");
}
else
{
Lcd_OUT(1,5,"56");
}
}
}

Est ce quelqu'un voit une erreur, un problème?
merci @+
nanard est déconnecté   Réponse avec citation
Alt Aujourd'hui
Publicité

Beitrag Liens sponsorisés

   
Vieux 16/12/2006, 10h59   #2
 
Date d'inscription: juin 2003
Messages: 553
Re : boussole électronique

personne ne peut m'aider? mon programme vous semble t il bon?
merci @+
nanard est déconnecté   Réponse avec citation
Vieux 21/12/2006, 10h28   #3
 
Date d'inscription: juin 2003
Messages: 553
Re : boussole électronique

bonjour

J'ai toujours mon problème et j'ai remarqué que lorsque j'alimante mon module cmpso3 il émet un son comme une sorte de vibration est ce normal?
merci @+
nanard est déconnecté   Réponse avec citation
Vieux 21/12/2006, 22h58   #4
 
Date d'inscription: août 2006
Localisation: France
Âge: 52
Messages: 1 866
Re : boussole électronique

Apparement peu de gens connaissent ce circuit...

Si l'on regarde leur doc;
http://www.robot-electronics.co.uk/files/cmps03_lcd03.c
Il y a des temps d'attente assez long au debut deja , ce que ne fait pas ton prog.
Ensuite entre chaque mesure.

Après il faut déterminer ce qui fonctionne ou pas ,
le LCD fonctionne t il ?
La lecture avec ack est elle bloquante?
__________________
A+, pat
freepicbasic est déconnecté   Réponse avec citation
Vieux 24/12/2006, 16h37   #5
 
Date d'inscription: juin 2003
Messages: 553
Re : boussole électronique

désolé de répondre que maintenant ms avec les fêtes!

Oui la partie LCD fonctionne très bien, là où je me pose des questions c'est sur la partie I²C je ne sais pas si elle fonctionne. Je ne sais pas si l'ack est bloquante car j'utilise les librairies internes et dans la notice il nous donnes que la manière de les utiliser et pas comment cela fonctionne.
J'ai toujours ce bruit est ce normal?
j'ai mis des pauses comme on le voit sur le prog du lien de freepicbasic mais sa ne fonctionne pas.

unsigned char cap_hex;

void main (void)
{
TRISC.F2 = 0;
TRISC.F1 = 0;
PORTC.F2 = 1;
PORTC.F1 = 0;
Lcd_Init(&PORTB); //initialisation du port B pour l'afficheur LCD
Lcd_Out(1,1,"Cap:"); //ecrire cap sur le LCD ligne 1 colone 1
I2C_Init(100000); //initialisation du protocole I2C
while (1)
{
I2C_Start(); //début de l'I2C
Delay_ms(1000); //pause de 100 ms
I2C_Wr(0xc0); //envoi de l'adresse de la boussole
Delay_ms(1000); //pause de 100 ms
I2C_Wr(1); //on dit que l'on veut lire le registre 1
Delay_ms(1000); //pause de 100 ms
I2C_Start();
Delay_ms(1000); //pause de 100 ms
I2C_Wr(0xc1); //envoi de la commande de lecture
Delay_ms(1000); //pause de 100 ms
cap_hex=I2C_Rd(0); //lecture avec un ACK
Delay_ms(1000); //pause de 100 ms
I2C_Stop(); //arret du protocole I2C
if (cap_hex > 127)
{
Lcd_Out(1,5,"1000");
}
else
{
Lcd_OUT(1,5,"56");
}
}
}
@+
nanard est déconnecté   Réponse avec citation
Vieux 24/12/2006, 18h03   #6
 
Date d'inscription: août 2006
Localisation: France
Âge: 52
Messages: 1 866
Re : boussole électronique

tu devrais profiter du LCD comme il fonctionne pour mettre des lignes de debug afin de déterminer ou ça bloque
Lcd_Out(1,5,"I2CSTART");
'
'

Lcd_Out(1,5,"I2CWR");

etc...


Si tes procedures son buggués tu peut utiliser le fichier I2CM.asm de mon compilateur , il est dans le zip
__________________
A+, pat
freepicbasic est déconnecté   Réponse avec citation
Vieux 27/12/2006, 12h03   #7
 
Date d'inscription: juin 2003
Messages: 553
Re : boussole électronique

j'ai mis des ligne de débug et j'ai vu que sa bloque à l'envoi de l'adresse. Pour l bruit j'ai demandé à une personne qui connais le module et il m'a dit que se n'ai pas normal je vais donc en commander un autre.
Je vous tiens au courant.
@+
nanard est déconnecté   Réponse avec citation






Réponse

Tags
electronique, boussole

Outils de la discussion
Modes d'affichage

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are non
Pingbacks are non
Refbacks are non

Discussions similaires
Discussion Auteur Forum Réponses Dernier message
boussole affolée catuf Physique 1 05/06/2007 20h32
boussole electronique thierryriri Électronique 3 13/04/2007 08h22
Création d'un système lumineux basé sur une boussole electronique. Youk Électronique 31 13/07/2006 09h00
Boussole!!!! NGC 1232 Physique 5 25/11/2005 11h14
Boussole electronique manscan2002 Électronique 2 16/05/2003 17h07


Les dernières actualités
15/10 17:58 - Etude Interphone : le téléphone portable serait peut-être cancérigène
15/10 16:27 - Le retour du podcast Futura : à télécharger sans modération
15/10 15:31 - En vidéo : le joystick vocal pour piloter un ordinateur
15/10 14:33 - En bref : Apple renouvelle sa gamme de portables MacBook
15/10 13:33 - Bientôt des cellules électriques artificielles inspirées de l'anguille ?
15/10 11:34 - Feux de forêt : l'Homme en déclenche plus que la nature depuis deux siècles
15/10 09:34 - Calvitie : de nouveaux gènes identifiés

Fuseau horaire GMT +2. Il est actuellement 22h59.


Édité par : vBulletin®
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd. Tous droits réservés.