Etude de la partie traitement de l'information
En sortie de la démodulation, sur la pin 13 du MC3362, on obtient des variations de tension qui vont être mises en forme par un comparateur.
La documentation technique du MC3362, précise que cette sortie DATA est limitée à 1200 Baud. Une valeur tout à fait satisfaisante puisque notre séquence PPM représente 8 bits sur une période d'environ 20ms soit 400 bits / seconde.
Il est de même indiqué que le comparateur forme une fonction de transfert en hystérésis uniquement si on ajoute une résistance d'au moins 120KW entre les pins 15 et 14 (réaction du comparateur).
Les variations de tension obtenues à la sortie du comparateur constituent un signal carré qui va commander le système de décodage.
Le décodeur PPM:
Comme nous l'avons décrit au début de notre dossier, le codage PPM est un principe qui existe depuis les prémices de la radiocommande. Son principe n'a pas évolué car il est le plus adapté aux demandes des équipements d'un modèle réduit.
Rappel: la séquence PPM est une suite d'impulsions dont le nombre dépend du nombre d'équipements (voies) de la radiocommande. Le temps séparant chaque impulsion constitue l'information utile.
Le principe du décodage PPM réside dans le placement, sur chacune des voies, d'une impulsion de durée égale à la durée séparant les impulsions de la séquence.
Pour réaliser simplement le décodage, on utilise un registre à décalage à base de bascules D.
L'entrée 'Séquence PPM' reçoit le signal PPM, dont les impulsions constituent un déclenchement de l'horloge (CLK) du registre. Cette même impulsion fait conduire le transistor qui devient passant et court-circuite le condensateur qui se décharge instantanément. Lorsque l'impulsion s'arrête, le transistor se bloque et le condensateur se charge au travers de R. La constante de temps de la charge est calculée pour que la tension aux bornes du transistor n'atteigne pas un seuil suffisant pour renvoyer un '1' sur l'entrée DATA. Seul le temps de synchronisation de la séquence pourra atteindre ce seuil et renvoyer un 1 sur l'entrée DATA.
Seuil de basculement = Vdd / 2
Temps de synchronisation = 8ms
Durée maximal par voie = 2ms
Soit Vdd/2 = Vdd + (0 Vdd) e-2E-3/t
Il faut donc que la constante de temps t soit supérieure à 2E-3/ ln 2 » 2.88E-3
Nous avons choisi R15 = 47K C20 =100nF pour obtenir t = 4.7E-3.
Chaque voie reçoit une impulsion, de durée comprise entre 1 et 2ms, toutes les 20ms.
Evolution des décodeurs:
F. Thobois dans une de ces études proposait ce qu'il appelle le décodeur de 3ème génération. C'est en fait un système qui permet de résoudre les problèmes de parasites greffés à la séquence PPM. En cas d'erreur de décodage, un ensemble à microcontrôleur prend le relais pour envoyer une séquence valide.
Ce système peut être intéressant, surtout dans le cas où le modèle réduit est sorti de la portée maximale, mais nécessite l'emploi d'un microcontrôleur.
Dans le cas d'utilisation d'un tel système, il est alors conseillé d'effectuer le décodage complet par le microcontrôleur ce qui permet de gagner un peu de place puisque le registre à décalage est retiré.
Etude de la partie circuits annexes
Synthèse de fréquence:
Définition: la synthèse de fréquence permet de disposer d'une fréquence stable et parfaitement connue sur un oscillateur peu fiable. Ce système est plus connu sous le nom de boucle à 'accrochage' ou 'verrouillage' de phase ou encore Phase Lock Loop (PLL).
Ce principe est utilisé dans des circuits où les quartz et autres résonateurs ne peuvent pas être utilisés.
En effet, il est parfois utile de pouvoir contrôler et faire varier la fréquence d'un oscillateur. Pour cela, le circuit oscillant le plus adapté est encore le circuit LC en parallèle, mais sa précision se limite à la tolérance des composants, et les dérives en fréquence les plus importantes sont dues aux variations de température.
Lorsque le cahier des charges d'un système impose les deux conditions "contrôle et modification de la fréquence reçue" et "stabilisation en fréquence", l'oscillateur contrôlé en tension (VCO: Voltage Control Oscillator) par une boucle à verrouillage de phase s'impose.
Dans notre récepteur la PLL permet non seulement une synthèse de fréquence du 1er oscillateur local, mais en plus de régler la fréquence de réception par un simple changement de programme.
Analyse d'une PLL:
Une PLL est un système asservi, c'est-à-dire qu'une correction est apportée à l'oscillateur contrôlé, par une tension proportionnelle à la comparaison grandeur de sortie / grandeur d'entrée.
Dans le cas d'une comparaison de phase:
Þ une avance sur le signal de référence peut se traduire par une impulsion négative.
Þ un retard sur le signal de référence peut se traduire par une impulsion positive.
Þ en phase avec le signal de référence peut se traduire par aucune variation de la tension de correction.
L'oscillateur à asservir est commandé par une tension continue qui est obtenue en intercalant un filtre passe-bas sur la sortie du comparateur de phase. Cette tension influe sur un composant dont la valeur varie en fonction de cette tension (exemple : Varicap).
Principe de la boucle à verrouillage de phase:
Le comparateur:
En général, les PLL sont conçues pour délivrer une tension proportionnelle au déphasage des deux fréquences d'entrée:
Vs = Kd (j ref - j in)
Kd coefficient de gain du comparateur, s'exprime en Volt / radian.
Le composant que nous avons choisi pour réaliser la boucle à verrouillage de phase (MC145170), possède une sortie (Pdout) qui, à la place de fournir une tension proportionnelle, délivre des impulsions à l'état haut ou à l'état bas, dont la durée est proportionnelle au déphasage entre les deux fréquences (cf. documentation constructeur MOTOROLA figure 17).
Dans notre montage, la fréquence à contrôler est de 30.400MHz et nous utilisons la fréquence stable issue du quartz à 10.245MHz.
La comparaison de phase doit se faire sur la même fréquence, c'est pour cela que le comparateur effectue une division de fréquence pour rabaisser les deux entrées sur une fréquence commune de 1KHz. Les valeurs de la division sont données au MC145170 par une séquence d'initialisation (cf. initialisation de la PLL).
Le VCO:
La variation de fréquence qu'il est possible d'obtenir avec le VCO est fonction de son gain K0:
f = f0 + K0.Vcorr
K0 = 100KHz / Volt =1E05 . p (P.Techer, RC-FM Receiver 41MHz)
Le filtre passe bas:
Le filtre
passe-bas, ajouté en sortie du comparateur, est prévu pour le
lissage de la tension délivrée au VCO. Il est appelé filtre à
avance de phase:
La fonction de transfert est donnée par :
F(p) = ( 1 + R2CP ) / ( 1 + (R1+R2)CP )
Son diagramme de bode est donné par:
Pour connaître la réaction de l'ensemble 'comparateur / filtre passe bas' nous avons simulé la sortie du comparateur :
En fonction des impulsions du comparateur, le filtre passe bas crée une valeur moyenne permettant de commander la varicap du VCO.
La synthèse de fréquence dans notre projet
Le MC145170 est un circuit intégré constituant un synthétiseur de fréquence. Il suffit pour le faire fonctionner de lui entrer un signal de référence (osc-in/osc-out) dont la fréquence est stable et connue, et le signal à contrôler (fin). Le composant est programmable et doit recevoir une séquence d'initialisation, puis les valeurs de ses 3 registres pour pouvoir fonctionner.
La séquence d'initialisation permet de garantir une mise sous tension correcte du MC145170. Cette séquence peut être évitée si on arrive à placer un état haute impédance sur l'entrée CLK du circuit lors de la mise sous tension. N'ayant pas cette possibilité, nous avons préféré faire cette initialisation par le programme. Elle se compose de 2 séquences définies I et II sur le graph ci-dessous et dans le programme:
Les 3 registres sont ensuite définis par :
Le registre d'état (C) permet de valider certaines fonctions du circuit, et en particulier l'état de la sortie lorsque la fréquence à contrôler est en avance ou en retard sur le signal de référence.
Nous avons choisi pour ce registre une séquence binaire correspondant à :
0 1 0 0 0 1 0 0
Les registres R et N permettent d'effectuer une division de la fréquence des signaux appliqués en entrée (respectivement signal de référence, signal à contrôler), et ceci dans le but de pouvoir les comparer sur une même fréquence appelée pas. Nous avons choisi ce pas à 1KHz soit une division par 10245 pour la fréquence de référence, puisque celle-ci vient du quartz de oscillateur local 2, et une division par 30300-30500 pour la fréquence à contrôler suivant la fréquence que l'on veut recevoir.
Contrôle automatique de gain:
Le contrôle automatique de gain est un dispositif qui permet de conserver, en sortie de l'étage détecteur, un niveau constant lorsque le signal d'entrée varie. En effet, à cause de la modification des conditions de propagation du signal ou bien à cause d'un changement de position ou de direction de l'antenne, l'amplitude du signal reçu fluctue. Ces variations sont d'autant plus nombreuses quand le récepteur, et dans notre cas le modèle réduit, est en mouvement.
Le principe du contrôle automatique de gain (CAG) est de compenser ses variations en agissant sur l'amplification d'entrée. La détection de ces variations se fait sur l'amplitude du signal de la porteuse qui doit rester, avec ce système, sensiblement constant. Ce principe permet ainsi d'améliorer la sensibilité du récepteur et d'éviter tous les problèmes dus aux produits d'intermodulation.
Au niveau de l'amplificateur d'entrée, il faut réduire le courant traversant le FET pour diminuer le gain.
Le courant envoyé sur l'entrée CAG fait varier le courant ID, agissant ainsi sur la transconductance (S) du transistor et donc sur son gain. L'amplificateur répond en effet aux équations:
Ce courant de correction, provenant de l'étage de démodulation du récepteur, est appelé RSSI. En fait le MC3362 délivre sur la pin 10 un courant proportionnel à l'amplitude de la porteuse su signal reçu:
(documentation
constructeur MC3362)
Ce courant, amplifié par les transistors T2 et T3, vient commander le courant traversant la résistance R2. Si le courant RSSI est fort, T3 est bloqué et la tension aux bornes de R2 est nulle. T1 fonctionne alors en atténuateur. De la même façon, sur un signal faible, T3 conduit et T1 amplifie. D'après F. Thobois, la dynamique du CAG serait de 10dB +10dB, soit une amplification variant de 1 à 100.
La stabilité de l'alimentation de notre récepteur semble être un paramètre important. En effet, une variation de la tension d'alimentation, sur un mouvement de servos par exemple, fait varier la tension de la varicap du 1er oscillateur local et donc la stabilité en fréquence n'est plus assurée. Cette même variation de tension peut aussi agir sur l'amplificateur d'entrée et donc sur la réception du signal.
Le montage complet ayant une consommation d'environ 10mA, et la tension délivrée par les accus, utilisés dans les modèles réduits, étant de 6 V, il nous fallait utiliser un régulateur à faible tension de déchet et à faible courant.
Le concepteur du RX21 indique, par contre, que l'ajout d'un régulateur dans un montage apporte toujours un bruit qui tend à se retrouver dans le signal. Un deuxième inconvénient du régulateur réside dans le fait qu'il faut toujours maintenir la tension de la batterie supérieure à celle de la tension régulée + la tension de déchet.
Choix du régulateur:
En suivant le montage de F. Thobois, nous avons choisi le LM 2931CM, version ajustable et CMS. Il permet un réglage de la tension de sortie entre 3 et 24V.
Calcul des composants permettant de régler la tension de régulation:
D'après la documentation constructeur:
Vout = Ref voltage * (R16 + R17) / (R16)
Avec une tension de référence, calculée sur les courbes de la documentation, égale à 2.19V.
Vout = 2.19 * (10000 + 27000) / 10000 = 4.4V
Les condensateurs C18 et C19 de 100n sont prévus pour le découplage de l'alimentation, tandis que C17, dont la valeur doit être inférieure à 100µF, est placé pour maintenir la stabilité.
Introduction :
La boucle à verrouillage de phase utilisée pour la synthèse de fréquence nécessite un intervenant externe pour être commandée. Le choix du composant vers lequel nous nous sommes orienté est le PIC 16C84. Celui-ci est peu coûteux, performant et suffisamment miniaturisé pour satisfaire les contraintes imposées.
Le programme à écrire doit être capable denvoyer par une procédure série la configuration des registres nécessaires au fonctionnement du MC 145170. Ce programme doit être modifiable afin de pouvoir changer la fréquence synthétisée par la PLL. La séquence denvoi des données naura lieu quune seule fois, au moment de lallumage du récepteur. Une fois lopération effectuée, le microcontrôleur devra se mettre automatiquement en veille, afin de diminuer sa consommation et de ne pas mobiliser la batterie inutilement.
Spécifications techniques :
Le PIC 16C84 utilise une technologie RISC, ayant pour principe la séparation du bus de donnée et du bus de contrôle. Ceci lui permet dutiliser des instructions étendues sur 14 bits, tout en préservant un bus de données sur 8 bits. Chacune des 35 instructions différentes qui lui sont envoyées sont traitées en un seul cycle dhorloge, exceptées les fonctions spéciales, qui en requièrent deux. Il dispose dune pile de 8 niveaux et de multiples sources dinterruptions aussi bien internes quexternes.
Il est doté dune mémoire RAM de 36 octets et dune EEPROM de 1024 octets, ce qui lui confère une capacité suffisante pour y faire tenir le programme. La mémoire et lunité de calcul sont cadencés à 800 KHz par un résonateur externe ; La PLL supportant un flux de donnés allant jusquà 185 MHz.
Travail à effectuer :
Dans un premier temps, nous devrons envoyer à la PLL une séquence permettant son initialisation. Cette séquence concernera les trois pins Din, CLK et ENB. Le diagramme suivant représente les trames successives à envoyer sur le port RA. Celui-ci étant sur 4 bits et fonctionnant en mode de transmission parallèle, nous nutiliserons que les 3 premiers bits.
RA1 est relié à CLK
RA2 est relié à ENB
Nous avons séparé la trame à envoyer en trois séquences, afin de simplifier lécriture et la compréhension du programme. Une fois lopération effectuée, il faut envoyer les trames de données.
Le but de la 4ème séquence est denregistrer ces trames dans le registre W, et de les stocker en mémoire, à laide du pointeur fsr. Cest à cet endroit que les valeurs définissant le mode de fonctionnement de la PLL sont passées en mémoire.
La 5ème séquence envoie les données dinitialisation contenu dans la mémoire sur le port RA. A la suite de cet envoi, la PLL est initialisée et prête à recevoir les données destinées aux registres C, N et R. Le problème réside dans le fait que les bits de poids les plus significatifs (msb) doivent être envoyés avant les bits de poids les plus faibles (lsb).
La 6ème séquence a pour but dinverser les bits de C.
Programme :
Port equ H05 Attribue ladresse 05 au port RA sur 4 bits
Status equ H03 Attribue le label status à ladresse 03
Fsr equ H04 Attribue le label Fsr à ladresse 04
Indf equ H00 Attribue le label Indf à ladresse 00
Stock equ H08 Attribue le label Stock à ladresse 08
C equ H0B Attribue le label C à ladresse 0B
Rmsb equ H0C Attribue le label Rmsb à ladresse 0C
Rlsb equ H0D Attribue le label Rlsb à ladresse 0D
Nmsb equ H0E Attribue le label Nmsb à ladresse 0E
Nlsb equ H0F Attribue le label Nlsb à ladresse 0F
Org 55 place le début du prog. à ladresse 55
Enreg macro i,adr déclaration de la macro enregistrement des
données de ladresse adr
Movlw adr déplace adr dans le registre W
Movwf fsr déplace le contenu de W dans fsr
Movlw 0 initialise W à la valeur 0
Movwf indf place le contenu de W à ladresse indf
Movlw i place i dans le registre W
Movwf indf place le contenu de W à ladresse indf
Adr++ incrémente Adr de 1
Endm Fin de la macro
Lect macro adr déclaration de la macro lecture en
mémoire et sortie sur le port
Movlw adr déplace adr dans le registre W
Movwf fsr déplace le contenu de W dans fsr
Movf indf,0 initialise indf à 0
Movwf port déplace le contenu de W vers le port
Adr++ incrémente Adr de 1
Endm Fin de la macro
Lectreg macro déclaration de la macro de lecture de
Stock et de son envoi sur le port
Movlw stock déplace stock dans le registre W
Movwf fsr déplace le contenu de W dans fsr
Movf indf,0 initialise indf à 0
Movwf port envoie stock (contenu dans W) sur le port
Iorlw b0010 envoie un 1 logique sur CLK
Movwf port
Endm Fin de la macro
Movlw 0 initialise le registre W à 0
Tris port permet dinitialiser le port en sortie
Début du programme principale
J=0 1ère séquence dinitialisation
Adr = H10 initialise adr à ladresse 10
While j<4 début de la boucle
I=b0100 initialise I à 0100
Enreg i,adr lance la macro Enreg (mise en mémoire)
I=b0110 initialise I à 0110
Enreg i,adr lance la macro Enreg (mise en mémoire)
J++ incrémente J
Endw fin de la boucle (après 4 cycles)
2ème séquence
I=b0100 initialise I à 0100
Enreg i,adr lance la macro Enreg (mise en mémoire)
K=0 K=0
While k<3 début de la boucle
I=b0000 initialise I à 0000
Enreg i,adr lance la macro Enreg (mise en mémoire)
I=b0010 initialise I à 0010
Enreg i,adr lance la macro Enreg (mise en mémoire)
K++ incrémente K de 1
Endw fin de la boucle (après 3 cycles)
3ème séquence
I=b0001 même principe que précédemment pour
Enreg i,adr différentes valeurs de I
I=b0011
Enreg i,adr
I=b0000
Enreg i,adr
I=b0010
Enreg i,adr
I=b0000
Enreg i,adr
I=b0100
Enreg i,adr
Adr = H0B initialise adr à ladresse 0B
4ème séquence
I = b11000100 mémorisation du registre C (PLL)
Enreg i,adr
I = b00101000 mémorisation du registre R MSB
Enreg i,adr
I = b00000101 mémorisation du registre R LSB
Enreg i,adr
I = b01110110 mémorisation du registre N MSB
Enreg i,adr
I = b01011100 mémorisation du registre N LSB
Enreg i,adr
5ème séquence
Adr = H10 initialise adr à ladresse 10
While adr < H25 début de la boucle
Lect adr lance la macro lect
Endw fin de la boucle (après 25 cycles)
Adr H '23'
Lect adr mise à 0 de /ENB
6ème séquence
J=0
While j<8 début de la boucle
Clrf stock initialise le registre stock à 0
Bcf status,0 initialise le bit 0 du registre status à 0
Rlf c,1 décalage de C vers la gauche
Movlw b0001 met 0001 dans W
Btfsc status,0 saute linstruction suivante si bit 0 à 0
Movwf stock envoie le contenu de W dans stock
Lectreg exécute la macro lectreg
J++ incrémente la variable J de 1
Endw Fin de la boucle
Adr H '24'
Lect adr mise à 1 de /ENB
Adr H '23'
Lect adr mise à 0 de /ENB
7ème séquence
J=0
While j<8 début de la boucle
Clrf stock initialise le registre stock à 0
Bcf status,0 initialise le bit 0 du registre status à 0
Rlf rmsb,1 décalage de rmsb vers la gauche
Movlw b0001 met 0001 dans W
Btfsc status,0 saute linstruction suivante si bit 0 à 0
Movwf stock envoie le contenu de W dans stock
Lectreg exécute la variable lectreg
J++ incrémente J de 1
Endw Fin de la boucle
8ème séquence
J=0
While j<8 même principe avec rlsb
Clrf stock
Bcf status,0
Rlf rlsb,1
Movlw b0001
Btfsc status,0
Movwf stock
Lectreg
J++
Endw
Adr H '24'
Lect adr mise à 1 de /ENB
Adr H '23'
Lect adr mise à 0 de /ENB
9ème séquence
J=0
While j<8 même principe avec nmsb
Clrf stock
Bcf status,0
Rlf nmsb,1
Movlw b0001
Btfsc status,0
Movwf stock
Lectreg
J++
Endw
10ème séquence
J=0
While j<8 même principe avec nlsb
Clrf stock
Bcf status,0
Rlf nlsb,1
Movlw b0001
Btfsc status,0
Movwf stock
Lectreg
J++
Endw
Adr H '24'
Lect adr mise à 1 de /ENB
Sleep fin du programme et de lenvoie des
End données, passage en mode veille
Détail du fonctionnement des macros :
Macro Enreg :
Cest un sous-programme permettant, grâce à un passage par valeur des arguments i et adr, le stockage en mémoire de la valeur i sur 8 bits à ladresse adr. Une incrémentation de ladresse est effectuée pour que le pointeur mémoire se place immédiatement à ladresse suivante.
Macro Lect :
Sous-programme de lecture de la valeur pointée par adr. La valeur sur 4 bits lue est envoyée sur le port RA0 RA3.
Macro Lectreg :
Effectue la même tâche que la macro Lect, mais lit les valeurs dans le registre stock, les envoie sur le port RA0 et envoie un 1 logique sur le port RA1. En effet, un front montant doit être envoyé sur la borne CLK du MC145170, pour que les données envoyées sur Din soient prisent en compte. Le niveau haut sur la sortie CLK est effectué par un OU logique entre la valeur de STOCK et la valeur binaire 0010.
Plan doccupation de la zone mémoire :
Changement des paramètres du programme:
Afin d'éviter d'avoir à changer de quartz, comme sur un récepteur de radiocommande normal, le programme et le montage ont été conçus de façon à pouvoir modifier rapidement et simplement la fréquence de réception.
Cette modification se fait au niveau soft, au sein du programme assembleur, aux lignes :
[ .]
adr = H'B'
;************************************************************************
;* Les valeurs de registres sont modifiables dans cette partie du programme*
;************************************************************************
;********** registre c *****************************
i = b'11000100'
enreg i,adr
;********** registre R = 10245 *********************
i = b'00101000' ;registre R MSB
enreg i,adr
i = b'00000101' ;registre R LSB
enreg i,adr
;*********** registre N = 30300 ********************
i = b'01110110' ;registre N MSB
enreg i,adr
i = b'01011100' ;registre N LSB
enreg i,adr
[ .]
Remarque : les valeurs modifiables sont les valeurs en gras et correspondent à la fréquence de référence pour le registre R, et à la fréquence contrôlée pour le registre N. Le registre C est le registre d'état du MC145170. (cf documentation constructeur MOTOROLA MC145170).
Utilisation du logiciel MPLAB:
Pour modifier le programme, il faut utiliser le logiciel MPLAB, conçu pour la programmation de PIC, de la façon suivante:
Remarque : la fonction TRIS est marqué par un warning lors de la compilation. Cette fonction permet de donner une direction aux ports d'entrées/sorties et est donc indispensable au programme. Lors de l'utilisation ce warning ne gêne en rien le fonctionnement.
Test du programme :
Aucun moyen d'émulation n'est fourni avec le logiciel MPLAB, et l'ensemble PICSTART PLUS. De ce fait, le seul moyen de tester le programme est de le faire fonctionner sur la plaque de test et de vérifier si la dernière séquence, qui doit encore se trouver sur le port de sortie, correspond à la dernière séquence du programme.
En l'occurrence, la dernière séquence attendue dans notre programme est :
1 0 0 sur les pins PA2, PA1, PA0 du microcontrôleur.
Afin de tester l'efficacité des bobines proposées par P. Techer, nous avons réalisé en milieu d'année une première plaque regroupant toute la partie Hautes Fréquences en partant de l'antenne jusqu'à la démodulation.
Cette plaque était basée sur le schéma de principe suivant:
La partie amplification était réalisée par un FET J310 en grille commune et la partie pré-filtrage réalisée à l'aide de 2 circuits LC parallèles avec une TOKO 2K509 comme inductance.
Le premier changement de fréquence se faisait à partir d'un oscillateur LC à la fréquence de résonance du circuit soit 30.400MHZ. L'inductance utilisée était une nouvelle fois une TOKO 2K509 avec laquelle nous n'avons pas réussi à faire osciller le circuit à plus de 27MHz.
Le deuxième changement de fréquence était réalisé à l'aide d'un quartz oscillant à 10.245MHz. Ce circuit fonctionnait parfaitement et représentait pour nous une référence pour savoir si le MC3362 fonctionnait encore.
La partie démodulation enfin, était réalisée par une inductance variable 4102 (inductance généralement utilisée pour la démodulation 455KHz), mais n'a pas pu être testée à cause du 1er oscillateur local qui ne fonctionnait pas.
Plaque d'essais de la synthèse de fréquence
Afin de tester notre programme d'initialisation du MC145170, nous devions réaliser une plaque regroupant la synthèse de fréquence avec son microcontrôleur.
Cette plaque a tout d'abord été testée à l'aide du logiciel fourni par MOTOROLA qui envoi par le port parallèle d'un PC les signaux nécessaires à la configuration du MC 145170.
Remarque : ce logiciel ne peut être utilisé que par le mode MS DOS du PC, car le système d'exploitation Windows NT ne permet pas l'accès aux port.
Par la suite, une fois que le programme a été réalisé, nous avons pu tester la plaque en insérant sur la fréquence de référence un signal à 10.245MHz, puis un signal à contrôler de 30.300MHz à l'aide d'un GBF et du générateur RF.
Le programme a été créé de sorte que si la fréquence de l'oscillateur local à contrôler est trop haute, le système délivre une tension moyenne inférieure à 2.5V. Inversement, la tension moyenne de sortie est supérieure à 2.5V si la fréquence est trop faible.
Défaut du programme : nous avons constaté que si nous mettions un 1 sur le MSB d'un registre celui n'était pas pris en compte correctement et pouvait être pris pour 11 par le circuit de PLL.