module ICS  09S08QG8 [Forums - HC908 et S08]
module ICS  09S08QG8 [Forums - HC908 et S08]
Pseudo Pass se souvenir de moi     Créer un compte
ARTICLES et TELECHARGEMENTS ~ FORUMS ~ LIENS  
 
             
 
Recherche
 
   
 

Parcourir ce sujet :   1 Utilisateur(s) anonymes





module ICS 09S08QG8
Nouveau
Inscrit:
20/09/2014 10:22
De 37130
Messages: 7
Hors Ligne
bonjour,

j'ai un véritable problème de compréhension au sujet du registre TRIM : ICSTRM
pourriez-vous m'aider à comprendre l'action de ce registre sur l'horloge de référence interne?

le mode utilisé est le mode par défaut FLL Engaged Internal (FEI)

le dataSheet indique que chaque bit est pondéré. Cependant comment peut-on calculer précisément la fréquence en fonction du contenu du registre ICSTRIM ?

D'autre part , les valeurs d'usine placées dans la flash que l'on peut recopier dans le registre ICSTRM fixent quelle fréquence ?
Des tests avec ces valeurs n'ont pas résolus.

Par exemple, pour une transmission série inférieure à 31250 bauds tout se passe correctement.
Mais à partir de cette vitesse de transmission ( ex : test interface MIDI) je dois placer dans le registre ICSTRM la valeur 128
( mov #128,ICSTRM ) pour obtenir une transmission à la bonne fréquence.. mais c'est par tâtonnement...
Celà m'étonne d'autant plus que cette fréquence est une partie entière de la fréquence de travail ( normalement fixée a 8Mhz )
calculé a partir de la formule bauds = FBus / ( N x 16). Cela donne la valeur : 8
soit dans les registres concernés de l'UART :
mov #$00, SCIBDH
mov #$08, SCIBDL

nota : j'ai beaucoup cherché ..mais pas trouvé ce qui bloque ma compréhension .. c'est certainement devant mes yeux ..mais je ne vois pas

merci de votre aide
ci_ joint mon fichier de test ( notepad++ ) portions concernée en couleur

cdl



Attacher un fichier:


txt hc08net_thb_17_2_2015.txt Taille: 11.66 KB; Hits: 157

Posté le : 17/02/2015 11:17
Transférer la contribution vers d'autres applications Transférer


Re: module ICS 09S08QG8
Modérateur
Inscrit:
24/09/2005 13:30
De 04110 - VACHERES- FRANCE
Messages: 1495
Hors Ligne
Bonjour,
Ce registre contient la valeur qui va servir à trimmer l'horloge interne.
Il est très généralement ajusté par le pod BDM, lors de la programmation.
Il consiste en deux registres : un en FLASH et un autre en RAM. C'est à toi de copier la valeur depuis le registre FLASH vers le registre a RAM au démarrage : la valeur en RAM étant celle qui est utilisée par le module horloge.

Si tu utilises HIWAVE (CW 6.3 donc), tu as une case à cocher qui permet de stocker en FLASH la valeur calculée dans la fenêtre "Advanced ..." (de tête).
Sous Eclipse, jamais fait...

Yvan

Posté le : 17/02/2015 11:24
Le houblon, c'est bon pour la récupération.
Transférer la contribution vers d'autres applications Transférer


Re: module ICS 09S08QG8
Pilier de la communauté
Inscrit:
09/10/2006 11:47
De Cambridge, Angleterre & Glasgow, Ecosse
Messages: 858
Hors Ligne
Bonjour,
Et pourquoi trimmer/étalonner?
Parce que les différents étapes de fabrication font que l'oscillateur interne n'a pas exactement la meme frequence qu'un autre micro de la meme reference.
Donc, on mesure la frequence reelle de l'horloge interne par rapport a une frequence connue (comme un quartz).
Ensuite on fait varier la valeur d'étalonnage pour que la fréquence d'horloge soit connue (et relativement stable a la meme temperature, tension d'alim).
Il n'est donc pas possible de donner une valeur idéale d'étalonnage pour tous les composants car elle varie d'un composant a un autre.
Un peu plus clair?
Alban

Posté le : 17/02/2015 11:30
Alban Rampon / 冉昂理 - blog
Transférer la contribution vers d'autres applications Transférer


Re: module ICS 09S08QG8
Nouveau
Inscrit:
20/09/2014 10:22
De 37130
Messages: 7
Hors Ligne
Merci pour ces réponses

Mais je ne pense pas avoir posé mon probleme correctement.. je vai donc reformuler ma question plus simplement.

Lorsque les valeurs factory sont placées dans les registres trim de l 'ICS .
Quelle est la frequence exacte de l'horloge de rèférence interne dans la plage 31.250 à 39.0625 khz ?
Ou bien ces valeurs factory d'ajustement servent elle uniquement a placer la fréquence quelque part dans cette plage
sans plus de precision ?


Merci
Thierry

Posté le : 17/02/2015 18:45
Transférer la contribution vers d'autres applications Transférer


Re: module ICS 09S08QG8
Pilier de la communauté
Inscrit:
09/10/2006 11:47
De Cambridge, Angleterre & Glasgow, Ecosse
Messages: 858
Hors Ligne
Bonjour Thierry,
La documentation donne que l'étalonnage d'usine est fait à 31.25 kHz pour VDD = 4.6V et à 25°C
Table A-8 donne la valeur.
Ensuite, c'est à toi de faire l'étalonnage si la précision est requise à une autre tension ou température.
Alban

Posté le : 17/02/2015 19:01

Edité par Alban sur 18/02/2015 01:54:24
Alban Rampon / 冉昂理 - blog
Transférer la contribution vers d'autres applications Transférer


Re: module ICS 09S08QG8
Nouveau
Inscrit:
20/09/2014 10:22
De 37130
Messages: 7
Hors Ligne
Bonjour Alban

effectivement voilà ce qui me manquait ...les caractéristiques électriques du produit.

Je ne pensais pas trouvé ça ici ...

désolé, je ferai attention maintenant a tout parcourir

Merci beaucoup

Thierry


Posté le : 18/02/2015 10:35
thb
Transférer la contribution vers d'autres applications Transférer


Re: module ICS 09S08QG8
Pilier de la communauté
Inscrit:
09/10/2006 11:47
De Cambridge, Angleterre & Glasgow, Ecosse
Messages: 858
Hors Ligne
Pas de problème Thierry.
Nous avons travaillé avec ces documents pendant des années, donc c'est facile pour nous !

Si c'est une petite réalisation et que le cout n'est pas primordial, mettre un quartz et travailler avec la PLL t'assurera une stabilité de la fréquence de bus quelque soit la tension d'alimentation et la température.
Ca te permettra d'éviter tout problème de synchronisation sur l'UART.

Tiens nous au courant !

Posté le : 18/02/2015 11:52
Alban Rampon / 冉昂理 - blog
Transférer la contribution vers d'autres applications Transférer


Re: module ICS 09S08QG8
Nouveau
Inscrit:
20/09/2014 10:22
De 37130
Messages: 7
Hors Ligne
oui effectivement tout redevient logique .. je préfère ça

mais je viens de retomber dans un piège...
en fait au moment du chargement du programme codeWarrior me met systematiquement le trim usine
De plus comme je laisse ma maquette alimentée , j'utilise le bouton reset ... mais là encore le reset n'affecte pas ( comme écrit dans la doc) les registre trim.

donc un coup sur deux ou trois ma transmission "foirait".. normal..je vais donc tenir compte de cela. voilà pourquoi lorsque je placais 0x80 dans le registre au reset, mon pb se résolvait .. mais maintenant grâce à vous je sais pourquoi.

pour le moment, je ne fabrique rien de particulier. En fait je me remet a programmer ces circuits a partir d'une maquette sur laquelle j'ai placé un afficheur graphique et des entrées sorties supplémentaire .. donc déjà gérer tout tout ça m'a bien remis sur les rails de la philosophie ex-motorola.

ci-joint la photo de ma maquette

merci encore
cdl



Posté le : 18/02/2015 12:16
Transférer la contribution vers d'autres applications Transférer



 Haut   Précédent   Suivant



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

module ICS 09S08QG8 [Forums - HC908 et S08]