Calcul des données à envoyer vers un PLL MB150x (1ou4)
d'après un script java de T.Yamazoe JR6BJI

Vous pouvez récupérer les docs de ces deux PLL ici


F_vco:VCO' fréquence d'entrée fin M : facteur de division de ref_OSC 
ref_OSC: oscillateur de référence F_ref = ref_OSC/M
F_ref: Fréquence boucle de phase F_vco = F_ref * N
N : Facteur de division

Compléter les cases ci-dessous Caractéristiques du Vco
PLL (1501/1504) MB
VCO (vcomax) MHz Kv(vco) x106 rad/v.s
VCO (vcomin) MHz Kphi (phase frequency detector) v/rad
(fmax) V K
(fmin) V
(PDH) V
(PDL) V
Fréquence Vco (fvco) MHz Rapport de division (N)
Oscillateur de référence(fosc) MHz Division oscillateur de référence(M)
Pas PLL (fref) KHz
Tableau 1


MB
Valeurs binaires
14bit (diviseur de référence 8 à 16383)
Prescaler : (MB1501 : 64 ou 128) (MB1504 : 32 ou 64) (SW)
Compteur programmable 11bit (16 à 2047) N
Swalow compteur 7bit (0 à 127)  A

Diviseur de référence + prescaler (sw)
<_E�r�b�g">C S1 S2 S3 S4 S5 S6 S7 S8 S9 S10 S11 S12 S13 S14 SW
 
Diviseur programmable
C
S1
S2
S3
S4
S5
S6
S7
S8
S9
S10
S11
S12
S13
S14
S15
S16
S17
S18
Retour menu
Control bit
<     Compteur swalow  A    >
<             Compteur programmable   N               >

Programme Pic16F84
Programme en Paralax, original de Victor F1BIU prévu pour un T7F, il semble qu'il y ait une erreur car le programme part du principe que le PLL verrouille sur la fréquence/2 qui est doublée ensuite pour obtenir 400Mhz or le retour sur 'fin' du PLL est bien du 400Mhz. De ce fait le PLL devrait se comporter comme avec un Vco 400Mhz.
Un autre exemple de programme pour piloter deux PLL MB1501 sur un Nokia620/TMF1/Talkman en utilisation simplex et décalage du vco Tx pour ne pas brouiller la réception.

Envoi du facteur de division :
    mov prediv_ref0,#b    ; division de ref_OSC par ,
    mov prediv_ref1,#00b    ; mot de 6bits, 2 lsb ignorés. (en bleu)

Caractéristiques d'une butée (haute ou basse) sur  la fréquence donnée au début de la page :
(toutes les valeurs sont en Hexadécimal sauf "N")

_A=   h         N = ,            Nmsb = h ,           Nlsb = h
Ces valeurs sont à récupérer pour modifier le programme de base au niveau des butées hautes et basses dans les routines d'incrémentation ainsi que dans le contenu de la eeprom.. Penser aussi à modifier le prescaler en conséquence suivant le PLL utilisé. (SW)

Structure des données enregistrées au départ dans la eeprom, Tx et Rx sur 400MHz :
 

eeorg  0
eedata 001h,0D9h,010h,004h,000h,000h,000h,000h,000h,000h  ;rx 189.3Mhz
eedata 001h,0F4h,000h,004h,000h,000h,000h,000h,000h,000h  ;tx 200 Mhz
       Nmsb,Nlsb, _A , C2 , C3 , C4 , C6 , C7 , C8 , C9

Les données C2 à C9 correspondent  à l'affichage lcd, C5 n'apparait pas mais correspond à la virgule les derniers caractères sont les suivants :
C10 : "M"
C11 : "h"
C12 : "z"
C13 : "  "
C14 : "T" ou "R"
C15 : "X"
 Ce qui donne :  400,0000Mhz RX




Retour menu