Salut rocky163,
Justement, comme tu fais référence a Code Composer Studio de chez Texas Instruments, tu peux très bien démarrer comme suit :
Etape 1 : Apprivoiser le micro et son fonctionnement
- Un MSP430 LaunchPad (10$) et l'IDE CCS (lite) qui est limité en optimisation du code.
- La datasheet du MSP430 (microcontrôleur 16bits) pour connaître les registres Timer, I2C, SPI, UART, ... et leurs configurations. Les datasheets sont complètes et on y trouve toutes les réponses et dans les détails, c'est le manuel d'utilisation.
Tu peux commencer à jouer avec les Timers dans tes programmes et faire des interruptions sur débordement.
Tu peux regarder dans quelle partie de la mémoire se situe une fonction interruption et quelle flag ou registre l'appelle.
Comprendre comment fonctionne la pile (stack quand tu créais une fonction).
Voir tes variables dans le tas (la mémoire RAM) en mode débug et pas à pas.
Tu pourras aussi comprendre comment fonctionne l'EEPROM (pour stocker des données) interne du MSP430 et la mémoire Flash où est stocker le programme.
En lisant la datasheet, on peut aller très loin et jusqu'au opcode/coompter programme etc...
Etape 2 : Accéder au monde extérieur
- Un (ou des) boosterpak, qui est (ou sont) un shield, qui s'embroche(nt) sur le MSP430 LaunchPad et tu as du choix sur le site de Texas.
- Une plaque d'essai, du fil, quelques composants traditionnels.
Tu peux câbler, sur la plaque d'essai, un composant du type MAX232 ou équivalent que tu relieras au MSP430 et qui te permettra de dialoguer avec le PC sur le port série via un hyperterminal.
Tu peux câbler un I/O expander qui est composant adressable en I2C et qui permet d'avoir de nouvelles entrées/sorties et parfois interruptibles. Avec de simple LED sur le I/O expander c'est très parlant.
Tu peux câbler un NE555 pour générer un signal carré que tu reliras sur une entrée interruptible sur front montant ou descendant du MSP430. De là, tu peux calculer la fréquence réelle que génére le NE555 et la comparer au calcul théorique du NE555.
Tu peux câbler un petit DAC (Digital Analogic Converter) en SPI que tu relieras au MSP430 pour générer des signaux (sinus, triangle, carré) et pour les visualiser tu peux très bien prendre un logiciel vieux comme le monde "Winoscillo" qui permet de visualiser comme sur un oscilloscope ce qui entre sur l'entrée micro de la carte son et toi tu auras pris soin de connecter la sortie de ton DAC à ta carte son en mettant les composants appropriés entre les 2 et qu'on trouve partout sur le net.
Tu pourras mettre en oeuvre ton ADC (Analogic Digital Converter) au quel tu auras relié par exemple la sorite audio d'un PC (grace au timer précédemment vu, tu pourras comprendre la notre de fréquence d'échantillonnage).
Etape 3 : Ajout d'une première couche logiciel -> Création de ton Framework perso ou bien utilisation de MSPWARE (panel de Librairie)
Tu peux te créer tes bibliothèque de fonctions pour faciliter ton developpement futur.
Ou utiliser les bibliothèques mise à disposition par TI, un peu comme par exemple "SD_write("salut")"
Etape 4 : Ajout d'une deuxième couche logiciel -> OS temps réel (FreeRtos)
Tu pourra voir l'impact d'un OS temps réel sur les temps de latence des interruptions (tu verras à ce moment là que aucun OS temps réel n'est jamais vraiment temps réel ! Et que pour des applications critiques en temps ça peut devenir problèmatique car un évenement peut arriver alors que tu es dans une autre tâche)
Etape 5 : On passe côté PC
Dans un premier temps tu peux très bien faire de l'acquisition analogique par le MSP430 puis lui demander d'envoyer ça sur le port série du PC afin que tu fasses du traitement logiciel (Le MSP430 échantillonnes le signal audio issu des enceintes puis il t'envoi les données brutes par le port série et tu les récupères côté PC pour tenter de le reconstruire et l'écouter afin de voir la qualité d'une numérisation)
Ensuite... il n'y a plus de limite
etc....
Je ne pense pas qu'un bouquin à lui seul puisse résumer ça par contre c'est faisable avec une bonne approche sans griller les étapes. Pour info, à l'époque où j'ai passé mon BTS électronique on apprennait la maîtrise d'un 68HC11 (Motorola ou Freescale maintenant) de cette manière, c'est à dire en mettant simplement en oeuvre tous les périphériques de la bestiole.
Si tu débutes complétement alors surement que plusieurs livres te seront nécessaires mais je pense qu'ils aborderont tous les choses de manière théorique (comme trop de bouquin sur le sujet, la mise en pratique n'est pas évidente.) Pour preuve, par exemple, beaucoup de livre qui traite de l'intégration d'un signal tu montres des équations mathématiques purement théoriques, qui de prime a bord apparaissent très compliqué a mettre en pratique, jusqu'au jour où l'on t'explique qu'il faut utiliser une simple approximation par la méthode de rectangle ou trapèze etc... mais ça et je n'ai jamais compris pourquoi, aucun livre ne te le dit !!!!!
A+
Partager