Vous êtes sur la page 1sur 5

TD PSoC N°1 Module Conception de cartes

TD PSoC N°1 Module Conception de Cartes (2 Heure)

1 - Première prise en main


2 - Raccordez le pod PSoc à la carte de test
3 - Lancez PSoc Designer (V3.21)
4 - Ouvrez le projet PSoc :
Example_8PWMs_28pin\example_8pwms_28pin.SOC (faites en une copie depuis le
réseau)
5 - Depuis le gestionnaire de fichiers ouvrez le
fichier main.asm (Sources Files)
 Le code principal démarre les 8 modules PWM
du design.
6 - Le fichier boot.asm défini le tableau
d’interruption et initialise les différents registres
du micro (analogiques et numériques)
7 - Ouvrez le fichier pwm8_1.h, on y trouve la liste
des fonctions (API) automatiquement générées
par l’outil PSoc Designer pour utiliser le module
PWM8_1 implanté dans le design

8 - Passez en mode Device Editor


Dans la fenêtre du haut de l’interface utilisateur on voit que 8 PWM8 ont été implantés
(PWM8_1…PWM8_8)
Dans le fenêtre Ressource Meter on voit que les 8 blocs logiques sont utilisés ainsi que
528 octets de ROM.
Pour afficher la documentation technique du User Module (UM) PWM8 cliquez sur un
des modules PWM_1 à 8. Le schéma bloc apparaît ainsi que toute la documentation
(vous pouvez la parcourir complètement ou accéder directement aux informations
voulues en cliquant sur les onglets appropriés sous la fenêtre).
 Dans la fenêtre verticale de gauche vous avez la liste complète des ressources
analogiques et numériques du PSoc que vous pouvez implanter dans le composant.

 Passez en mode User Module Placement View


Dans la partie inférieure droite on retrouve nos 8 modules PWM
implantés dans les 8 blocs logiques.

Cliquez sur le module PWM8_1, la fenêtre texte en bas à gauche vous permet de faire la
connexion des entrées sorties du module et de configurer les registres Period et Pulse
Width. Notez que l’entrée Clk est raccordée à l’horloge 24V2 du système
(=24V1(24MHz/16)/16 voir la fenêtre Global Ressources en haut à gauche)

4ème Année Polytech’Orléans, Filière ESI 1/5


TD PSoC N°1 Module Conception de cartes

 Passez en mode Pinout View


Dans la partie centrale de la fenêtre on trouve le composant 28
broches sélectionné pour le design. Les pins utilisées sont celles du port P2 qui sur la
carte de test sont raccordées aux led 3 à 10 du bargraph. Sur le schéma du composant
on voit que les pins P2(7) à P2(1) sont configurées en global out (strong). (Placez le
curseur au dessus d’une des pins pour voir apparaître sa configuration, vous pouvez
également les visualiser dans la fenêtre en bas à gauche).

 Passez en mode Debugger


Les fichiers (main.asm, boot.asm et pwm8_1.h) sont en mode
lecture seule.
Connectez l’émulateur et téléchargez le code.

 Le CPU est en mode Halt, utilisez la bar d’outil debugger pour lancer l’application. Les
led doivent s’allumer séquentiellement.

 Arrêtez le CPU (Halt), les


led continuent de fonctionner car la fonction PWM est implémentez en hard, pour arrêter
les User Modules il faudrait appeler les fonction PWM1_Stop … Si vous faites un restart
le système est réinitialiser et l’application s’arrête.

 Depuis la fenêtre des registres (en haut à droite), sélectionnez l’onglet BANK0. Le
registre PRT2DR (adresse 0x08, registre du PORT2) à la valeur 00, changez la valeur,
les led correspondantes aux bits à 1 de la valeur entrée s’allument.
Le registre PRT1DR à la valeur 0xEC (si tous les switchs sont sur OFF). Changez la
valeur d’un ou plusieurs switchs et faites un Refresh M8C View depuis le menu Debug.
La valeur du registre a pris la valeur des switchs.

 Dans la fenêtre main.asm mettez un point d’arrêt sur l’instruction


call PWM8_1_Start
Faites un Restart pour réinitialiser le micro. Placez la fenêtre registre BANK0 à l’adresse
0x22 (registre PWM8_1_PWIDTH_REG).
Lancez l’exécution, quand le programme s’arrête sur le point d’arrêt les valeurs des
registres ont été modifiées (périodes et pulses width définis au moment du design)
Faites un Step Over, la première led s’allume, au suivant la deuxième se met à
clignoter…(!!!! Les led ne sont pas synchronisées!!!!)

Vous pouvez créer une Datasheet de votre design en cliquant le bouton Datasheet de la
barre d’outil.

4ème Année Polytech’Orléans, Filière ESI 2/5


TD PSoC N°1 Module Conception de cartes

9 - Création d’un projet


 Depuis le menu File->New Project->Create New
(reportez vous à la doc Cypress pour les modes Clone…)

Choisissez le répertoire de travail (un sous répertoire avec le nom du projet sera créé
dans le répertoire choisi)

Sélectionnez le composant désiré:


CY8C26443-24PI en 28 broches

Choisissez le langage pour la synthèse


automatique des fichiers sources
(Attention l’assembleur est gratuit, le
compilateur inclus dans le système est
payant et nécessite une clé utilisateur)

 L’environnement ouvre le DEVICE


EDITOR
en mode User Module Selection View

 Le schéma à implémenter sur la carte test est celui


de la figure ci contre.
 Dans la fenêtre des ressources PSoc, sélectionnez
l’onglet Amplifier puis double cliquez sur le User Module
PGA_A .

Le module apparaît dans la liste des ressources


utilisées et le Ressource Meter affiche que 1 bloc analogique sur 12 est utilisé,
renommer le module en Ampli . Dans l’onglet MUX sélectionnez le User Module
RefMux.

 Passez en mode User Module Placement View. L’outil vous propose le bloc continu
ACA00 pour le PGA_A.
 Pour chercher la prochaine place possible, cliquez le bouton Next Allowed Placement
de la barre d’outil.

 Si vous cliquez plusieurs fois, le User Module va parcourir les 4 blocs


continues ACA00, ACA01, ACA02 et AC03.

Sur la carte de test l’entrée analogique est connectée au port P0.0,
la sortie est connectée au port P0.2.

 Sélectionnez le bloc continu approprié. Pour validez la position cliquez le bouton Place
User Module

 Choisissez le gain de l’amplificateur, et raccordez ses entrées sorties.

 Placez ensuite le module Refmux pour mettre la pin P0.4 à la masse AGND.
 Passez en mode Pinout View, configurez et connectez les pins P0.0, P0.2 et P0.4.

4ème Année Polytech’Orléans, Filière ESI 3/5


TD PSoC N°1 Module Conception de cartes

 Il est temps de faire une sauvegarde de votre projet.

 Il reste à générer les codes sources de votre design. Cliquez le bouton Generate
Application.

 A l’invitation choisissez le mode Application Editor.

 Ouvrez le fichier main.c et insérez la fonction de démarrage des modules Ampli et


RefMux en mode HighPower (vous pouvez éditer le fichier ampli.h et refmux.h pour
trouver les prototypes des fonctions et vous reporter à la documentation des modules en
repassant en mode Device Editor)

 Faites un Build du projet.


 Passez en mode Debugger
 Téléchargez votre code dans le micro, puis lancez l’application.
 Contrôlez le fonctionnement de l’ampli avec un scope en un générateur.

 Modifier le gain de l’ampli en changeant directement la valeur des registres.

 Faites un code C changeant le gain de l’ampli en fonction de l’état du switch1.

4ème Année Polytech’Orléans, Filière ESI 4/5


TD PSoC N°1 Module Conception de cartes

10 - Autres exercices sur les ressources.

Créez un nouveau projet avec un


amplificateur en gain 1 (In en P0.0), et
20
un filtre passe bas (sortie en P0.2). Il 100 1000 10000 100000 1000000
faudra penser à polariser le pied de la 0
résistance branchée en P0.4 à AGND.
-20

Pour le filtre entrée les valeurs:


-40
• C1 = 1
• C2 = 1 -60
• C3 = 2
• C4 = 31 -80

• CA = 32
-100
• CB = 32
• Pour les ressources globales mettez:
• CPU_CLK à 24MHz,
• 24V1 : 14
• 24V2 : 3 (24V2 = 24MHz/24)

Pour plus d’information reportez-


vous à la documentation du LPF2
ainsi qu’au fichier Excel:
C:\Program Files\Cypress
MicroSystems\Psoc Designer\
Documentation\FilterDesign\LPF2
Design.xls

Créez un nouveau projet avec un DAC6 sortie en P0.2.


Dans le programme principal générez un signal rampe.
Changer la fréquence de la rampe sur changement d’état du switch1.

4ème Année Polytech’Orléans, Filière ESI 5/5

Vous aimerez peut-être aussi