Routine one Wire. [Forums - Mes premières expériences]
Routine one Wire. [Forums - Mes premières expériences]
Pseudo Pass se souvenir de moi     Créer un compte
ARTICLES et TELECHARGEMENTS ~ FORUMS ~ LIENS  
 
             
 
Recherche
 
   
 

Parcourir ce sujet :   1 Utilisateur(s) anonymes



(1) 2 »


Routine one Wire.
Nouveau
Inscrit:
18/07/2007 16:50
Messages: 4
Hors Ligne
Bonjour à tous,
Je ne suis pas vraiment expert en programmation.
Je souhaitais savoir ou je peux me procurer du code pour utiliser un capteur de température DS1820 sur µC MCS08QG8.
Bien Cordialement,

Vince.

Posté le : 19/07/2007 11:01
Transférer la contribution vers d'autres applications Transférer


Re: Routine one Wire.
Pilier de la communauté
Inscrit:
09/10/2006 11:47
De Cambridge, Angleterre & Glasgow, Ecosse
Messages: 858
Hors Ligne
Salut Vince,

Faut que tu 'y' (accent lyonnais) mettes un petit peu du tien...
Par exemple, inclure la datasheet du capteur ou le protocole qu'il utilise pourrait être utile.
J'veux dire que si j'ai rien du tout, j'vais même pas imaginer commencer à vouloir filer un coup de main. Et je ne suis pas le seul comme ça.

Bienvenue.
Alban.

Posté le : 19/07/2007 11:18
Alban Rampon / 冉昂理 - blog
Transférer la contribution vers d'autres applications Transférer


Re: Routine one Wire.
Nouveau
Inscrit:
18/07/2007 16:50
Messages: 4
Hors Ligne
Bonjour Alban et merci pour ta reponse,

J'ajoute donc le datasheet du capteur de température dallas 18B20+ mais ma question était plutôt de savoir s’il est possible de trouver du code que je pourrais utiliser ou dont je pourrais m'inspirer.

On peut trouver pas mal d'explications sur le 1 wire sur le NET. Comme j'ai trouvé facilement sur une routine test pour #.IC# (http://lolowebsite.free.fr/onewire/onewire2.html) je me suis dit que d'autres l'auraient peut être fait sur des µC freescale et mis en ligne quelques part.

Je souhaitais utiliser un µC MC9S08QG8. Je transmets également le datasheet.

En fait, je voudrais faire un capteur de température sur pile et je me disais que ce type de capteur devais être pas mal car je peux vraisemblablement l'alimenter avec une sortie logique. Mais je suis preneur de toutes autres solutions.
Je souhaite économiser un maximum d'énergie. Je souhaitais donc également faire dormir le µC pendant la période où le système ne fait pas de mesure.

Je pensais utiliser un MC9S08QG8. Je sais qu'il possède des modes stop qui consomme peut d'énergie et je pensais le réveiller périodiquement avec une RTI. Mais j'ai déjà des problèmes car je n'arrive pas à avoir une périodicité constante (J'ai utilisé un Bean RTIShared que j'ai trouvé dans Processor expert)





J'en profite pour poser une autre question sur la régulation :
Sur mon kit de développement DEMO9SO8QG8 il utilise un régulateur 3,3 V L4931CD33. (Je transmets également le datasheet). Dans cette doc, j'ai remarqué que le régulateur possède un courant de fuite de 0,6 mA. Je me disais donc que l'autonomie semble déjà réduite a cause du régulateur. Par exemple, comment fait on dans les télécommandes qui, il me semble on beaucoup plus d'autonomie , il n'y a pas de régulateur ?
Le µC MC9S08QG8 que je souhaite utiliser possède un régulateur interne. Est il suffisant si j'utilise une pile de lithium 3,6V (genre LS 14500) ?
Excuser poins pour cette parenthèse.

Vince.

Posté le : 19/07/2007 15:36
Transférer la contribution vers d'autres applications Transférer


Re: Routine one Wire.
Nouveau
Inscrit:
18/07/2007 16:50
Messages: 4
Hors Ligne

Posté le : 19/07/2007 15:42
Transférer la contribution vers d'autres applications Transférer


Re: Routine one Wire.
Pilier de la communauté
Inscrit:
09/10/2006 11:47
De Cambridge, Angleterre & Glasgow, Ecosse
Messages: 858
Hors Ligne
Salut Vince,

Merci, là y'a la totale et on peu vor que t'as bossé dessus ;)

Je ne connaissais pas ce protocole, mais il est tout à fais implementable avec un TIMER.
Je n'ai pas bien lu les routines du P_IC car elles sont en ASM, donc non portables. Mais le code semble bien commenté.

Je n'ai pas de code pour toi, mais ai des idées comment l'implanter de manière efficace.
J'm'explique.
Le timer peut être configurer pour faire des interruptions sur front. LA longueur entre deux fronts te donnes soit un "zéro", soit un "un" en comparant la difference de comptage par rapport au temps d'un 1.
D'après
Open in new window
Tu connais la vitesse de bus et la vitesse du compteur libre du timer (par les diviseurs), donc tu connais le temps qu'un "1" doit prendre.
Si le temps est deux fois plus long, ça veut dire que tu as un zéro.
C'est le mode Input Capture.

Pour la génération, tu utilises le principe avec Output Compare.

Pour les autres questions, peux-tu créer un nouveau sujet par question, sinon l'enfilade (thread) va partir dans tous les sens et c'est pas simple à suivre.

Cheers,
Alban.

Posté le : 19/07/2007 15:55
Alban Rampon / 冉昂理 - blog
Transférer la contribution vers d'autres applications Transférer


Re: Routine one Wire.
Pilier de la communauté
Inscrit:
09/10/2006 11:47
De Cambridge, Angleterre & Glasgow, Ecosse
Messages: 858
Hors Ligne
Eh Vince...

De la page que tu indiques, j'ai lu au sujet de l'AN126 de Maxim.
Cette Application Note te donnes le code en C !!!

Donc tu peux l'utiliser qusi direct sur CodeWarrior...
http://pdfserv.maxim-ic.com/en/an/AN126.pdf

Ton boulot est tout mâché maintenant
Alban.

Posté le : 19/07/2007 16:03
Alban Rampon / 冉昂理 - blog
Transférer la contribution vers d'autres applications Transférer


Re: Routine one Wire.
Nouveau
Inscrit:
18/07/2007 16:50
Messages: 4
Hors Ligne
Merci Beaucoup Alban pour ton aide et ta perspicacité.

Vince.


Posté le : 19/07/2007 16:34
Transférer la contribution vers d'autres applications Transférer


Re: Routine one Wire.
Pilier de la communauté
Inscrit:
09/10/2006 11:47
De Cambridge, Angleterre & Glasgow, Ecosse
Messages: 858
Hors Ligne
J'attends les autres problèmes avec impatience !

:fou: :content:

Posté le : 19/07/2007 16:43
Alban Rampon / 冉昂理 - blog
Transférer la contribution vers d'autres applications Transférer


Re: Routine one Wire.
Guest_
Bonjour,

C'est peut être une remarque/question bête, mais il me semble qu'au détour d'une datasheet (QG8?), il me semble que le module SCI pourvait être configuré en "single wire opération" (ch . 14.4.4) si c'est le cas, il y a peut être un AN de fSL.

th.

Posté le : 21/07/2007 20:32
Transférer la contribution vers d'autres applications Transférer


Re: Routine one Wire.
Pilier de la communauté
Inscrit:
09/10/2006 11:47
De Cambridge, Angleterre & Glasgow, Ecosse
Messages: 858
Hors Ligne
Salut Thierry,

Le probleme avec un SCI est que tu ne peux pas faire varier facilement la largeur d'un bit.

Ici, le bit est code en largeur. Long ou court et non pas haut ou bas.
C'est pour cela que je pense que le timer est plus adapte.

Cheers,
Alban.

Posté le : 21/07/2007 20:52
Alban Rampon / 冉昂理 - blog
Transférer la contribution vers d'autres applications Transférer



 Haut   Précédent   Suivant
(1) 2 »



Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

[Recherche avancée]


Powered by XOOPS© The XOOPS Project
Contacter les administrateurs

Routine one Wire. [Forums - Mes premières expériences]