Est-ARM7 aussi fiable que n'importe quelle autre famille?

T

T

Guest
Je suis la migration de 8051 à ARM7.J'ai lu sur le problème de fausse interruption sur ARM7.Est-ce un problème.Il ya tellement de documents à confusion actuelle sur le web.J'utilise LPC2136 et que vous voulez savoir avec des mots simples qui
1.Quel est ce problème.
2.Est-ce une source de préoccupation en termes de fiabilité
3.Comment peut-elle être traitée simplement.

 
Salut,

aussi simple que je peux le décrire:
La migration d'un 8051 à une ARM7 offrira beaucoup de possibilités et certains défis.
Le régime d'interruption fourni par l'ARM7 original a exactement deux interrompre options, un soi-disant IRQ = requête d'interruption et un soi-disant FIQ = interrompre rapidement la demande.Si votre demande est en mesure de traiter avec seulement deux niveaux d'interruptions, vous ne serez pas dans toutes les questions à tous.Gardez à l'esprit que vos gestionnaires d'interruption vont être beaucoup plus rapide que ce qu'ils étaient pour la 8051, afin que vous puissiez attendre une routine d'interruption à la fin au lieu de l'interrompre à nouveau (appelé interruptions imbriqués).
Si vous utilisez les interruptions imbriquées s'il vous plaît lire la note de la demande sur le site de Philips:
http://www.standardics.philips.com/support/documents/microcontrollers/pdf/an10381.pdf
"AN10381 nidification d'interruptions dans la LPC2000"

Les interruptions sur un ARM7 sont n'est pas une préoccupation en termes de fiabilité car ils ont été utilisés dans plusieurs milliers d'applications dans le monde.

Manipulation simple est de nidification de limiter les interruptions et avoir un gestionnaire par défaut installé comme décrit dans cet UNE
http://www.standardics.philips.com/support/documents/microcontrollers/pdf/an10414.pdf
Intitulé "Gestion des interruptions parasites dans l'LPC2000"

Un chapitre:
«2.3 Traitement des interruptions parasites
Comme mentionné ci-dessus, le CIV devrait fournir à la valeur de l'adresse par défaut Vector Le CIV
enregistrer sur le PC lorsque survient une fausse interruption.Durant l'initialisation du CIV, avec
fournir une adresse de recherche internationale au registre d'adresses VIC Vecteur, s'il vous plaît programmer un
appropriées dans le gestionnaire d'adresses par défaut VIC registre de vecteur pour l'entretien d'un parasite
interrompre.Dans ce gestionnaire, les dispositions suivantes doivent être prises:
1.Trouver la source de l'interruption (s'il existe plusieurs sources d'interruptions).
2.Clairement la source d'interruption (en option comme le montre le cas UART).
3.Mettre à jour la CIV par écrit au registre d'adresses VIC Vector.
Envisager cette routine comme une routine régulière rapport de recherche internationale IRQ car le noyau sera encore en IRQ
mode quand le faux interruption est desservi.Alors s'il vous plaît utiliser le compilateur approprié
directives pour classer cette fonction en tant que gestionnaire d'interruption IRQ.

Hope this helps, Robert

 
Merci pour les éclaircissements.

Pouvez-vous s'il vous plaît mettre un peu de code C standard pour la recherche internationale qui prend soin de ce que vous avez décrite.En supposant que je n'utilise pas les interruptions imbriquées.

 
Salut

Voici un peu de code C pour LPC213x Arm & 214x pilote de base

Hope son aide

All the best

Bobi
Désolé, mais vous devez vous loguer pour voir cette pièce jointe

 

Welcome to EDABoard.com

Sponsor

Back
Top