Aide: simuler F120 Cygnal dans Keil

S

sawaak

Guest
Salut,
J'ai du mal à simuler contrôleur F120 Cygnal dans Keil, il stucks dans la fonction Init_Device dans le fichier de configuration.Je joins mon fichier de configuration, la réponse plz ASAP.

mon programme coincé dans la fonction Oscillator_Init dans Init_Device à cette ligne.while ((PLL0CN & 0x10) == 0);Merci
sawaak
Désolé, mais vous avez besoin de connexion pour voir cette pièce jointe

 
Il semble être un bug de l'autre de simulation Keil.
Keil utilisé le SYSCLK pour déterminer la PLLLCK (PLL0CN.4) bits.(PLL devrait utiliser la sortie de l'horloge)
Vous avez donc pour changer de système d'horloge PLL Source d'avant de vérifier la PLLLCK.
Code:

__SIMULATION__ # Ifndef

# Define __SIMULATION__ 0 / / 1: simulation, 0: normal

# endif / / __SIMULATION__

...........

PLL0CN | = 0x02;

# Si __SIMULATION__

CLKSEL = 0x02;

# endif / / __SIMULATION__

while ((PLL0CN & 0x10) == 0);

CLKSEL = 0x02;
 
Yager a écrit:

Il semble être un bug de l'autre simulation de Keil.

Keil utilisé le SYSCLK pour déterminer la PLLLCK (PLL0CN.4) bits.
(PLL devrait utiliser la sortie de l'horloge)

Vous avez donc pour changer de système d'horloge PLL Source d'avant de vérifier la PLLLCK.Code:

__SIMULATION__ # Ifndef

# Define __SIMULATION__ 0 / / 1: simulation, 0: normal

# endif / / __SIMULATION__

...........

PLL0CN | = 0x02;

# Si __SIMULATION__

CLKSEL = 0x02;

# endif / / __SIMULATION__

while ((PLL0CN & 0x10) == 0);

CLKSEL = 0x02;
 
Cela signifie que la PLL n'est pas verrouillée.
Par votre code, vous souhaitez utiliser:
externe de la CVMO que source d'horloge PLL, 10MHz <f <= 30MHz, PLLICO pour 65 ~ 100MHz
à savoir la PLLLCK sera réglé si PLL Clock est plus 65MHz.
Alors, je me mis X'tal = 20MHz dans Keil C51 v8.05.Il travaille ainsi que le dessus de l'horloge PLL (sera 90MHz).
BTW, vous pouvez lancer la boîte de dialogue Boîte de contrôle de la CVMO pour vérifier les PLLLCK.EDIT:Eh bien, j'ai fait un projet comme le mentionne ci-dessus.Le seuil a été fixé après la ligne coincé.
Il suffit d'ouvrir et de le simuler.
Désolé, mais vous avez besoin de connexion pour voir cette pièce jointe

 
Salut,
Merci 4, la réponse, j'ai simulé votre projet, il a franchi la ligne correctement collé, mais il ne peut pas aller à la boucle while après la Init_Device () la fonction, j'ai fait un point d'arrêt à la boucle while et de simuler au-delà de votre point d'arrêt, il donne l' d'erreur suivant
violation d'accès "C: 0x7588: pas d'exécuter / autorisation de lecture"
comment faire pour supprimer cette erreur.Merci
sawaak

 
sawaak a écrit:

i simulée de votre projet, il a franchi la ligne correctement collé, mais il ne peut pas aller à la boucle while après la Init_Device () la fonction, j'ai fait un point d'arrêt à la boucle while et de simuler au-delà de votre point d'arrêt, il donne l'erreur suivante

violation d'accès "C: 0x7588: pas d'exécuter / autorisation de lecture"

comment faire pour supprimer cette erreur.
 
Salut,
Merci beaucoup beaucoup, son travail fin maintenant.Merci
sawaak

 

Welcome to EDABoard.com

Sponsor

Back
Top