différencesignalnumériqueetunsignalanalogique:Unsignalnumériquenepeutprendrequedeuxvaleurssignificatives (V≤VL)ou1(V≥VH)alorsqu'un signal analogique peut prendre dans l'absoluuneinfinitédevaleurs.Pourexploiterlessignauxanalogiquesonutiliseunconvertisseuranalogique/numériquequifournituneapproximationdeleurvaleur.Leprototyped’unefonctiond’exceptionest:voidnomDeLaFontion(void).Pourquoitypevoidetleparamètrevoid?Lesexceptionssontlaréponseduprocesseuràdesévénementsasynchronesparrapportauflotduprogramme.Iln’estpaspossibled’anticiperl’arrivéedecesévénementsetdoncdepréparerunpassagedeparamètre,demêmequ’iln’estpaspossiblederécupérerunevaleurderetouréventuelled’oùleprototypeutilisé.Apartirdequelcontrôleurpeut-onautoriserlesexceptions?LesexceptionssontautoriséesdemanièregénéraleauniveauducontrôleurNVICencomplémentdelavalidationgénéraledesinterruptionsmasquablesdansleregistrePSR.DonnerlenuméroetlerôleduregistreLRdansleCPUduSTM32.LeregistreLR(R14)estleregistredelien:Ilcontientl'adresse de retour lors de l'appeld'un sous-programme
(instruction BL : Branch and Link)
Donner la signification de l'acronymeSRAM.StaticRandomAccesMemory (mémoirestatiqueàaccèsaléatoire:ils'agit
d'unemémoirevolatile).Barrerci-dessouslesélémentsdeprogrammesnesetrouvantpasdanscetypedemémoire:Codebarrer;Variable;ConstantesbarrerDansquelleconditionuneexceptionpeut-elleprendrelepassuruneautreexception.Ilfautqu’ellesoitplusprioritaire (valeurdeprioritéplusfaible)etbiensûrqu’ellesoitautorisée.LeSTM32estunmicrocontrôleur:32bitsQuelélémentduprocesseurestutilisépourlequalifier?LatailledubusdedonnéesDonnerlasignificationdel'acronyme ROM.
Read Only Memory
Barrer ci-dessous le ou les éléments de programmes ne se trouvant pas dans ce
type de mémoire.
CODE, VARIABLES barrer, CONSTANTES
Donner deux cas de figures d'erreursdeprogrammationpouvantgénéreruneexceptiondeprogrammation.Ladivisionpar0etlatentatived'exécution d'unCOPinvalideQuelssontlesregistresdespériphériquesàparamétrerpourpouvoirobteniruneinterruptionprovenantdel'évènement UIF du timer 3?
Il faut tout d'abordautoriserlesinterruptionsmasquablesauniveauduCPU(registrePPRIMASKbit0=0)ensuiteilfautvaliderl'interruption timer3 au
niveau du contrôleur NVIC (registre NVIC_ISER correspondant à l'interruptiontimer3)etenfinvaliderl'interruption provenant du bit UIF dans le registre
DIER du timer 3.
Le prototype d'unefonctiond'interruption est le suivant :
void ma_fonction_it (void). Expliquez pourquoi utiliser cette définition.
Car une fonction d'interruptionestgénéréeleplussouventparunévénementasynchroneparrapportaudéroulementduprogramme.Lesévénementsnesontpasprévisiblecequiempêchelepassagedeparamètresetlarécupérationdevaleursenretour.Aquoisertlatabledesvecteursd'exception ?
La table des vecteurs d'exceptionestunespaceréservédansleplanmémoiredumicroprocesseurdanslequelsontstockéeslesadressesdesfonctionsd'exceptions (ou interruptions). Lorsqu'unévénementgénérantunedemanded'exception de priorité supérieure à celle en cours se déclenche, le processeur
va terminer l'instructiondel'instruction en cours, sauvegarder le contexte
d'exécutionpuisilvachercherdanslatabledesvecteursd'exception (à
l'emplacementréservéàl'évènement) l'adressedelafonctionqu'il
doit traiter.
A quoi correspond la table des vecteurs d’exception ?
Il s’agit d’un espace (table) contenant les adresses des différentes fonctions
d’exceptions (fonctions automatiquement exécutées en cas d’exception).
La première case contient la valeur initiale du pointeur de pile et la seconde
l’adresse de démarrage du programme (ces deux éléments se trouvent
obligatoirement en mémoire non volatile).
Quand utilise-t-on le transfert DMA pour les échanges avec les périphériques ?
Lorsque le volume d'informationséchangéesentrelecontrôleurdepériphériqueetleCPUestimportant.Eneffetcetyped'échange est dans cette condition
plus efficace que l'échangesousinterruption.Iléconomiselesphasesdedécodaged'instruction, de calculs de boucles et de sauvegarde et restitution
des registres.
During your visit to our site, NumWorks needs to install "cookies" or use other technologies to collect data about you in order to:
Ensure the proper functioning of the site (essential cookies); and
Track your browsing to send you personalized communications if you have created a professional account on the site and can be contacted (audience measurement cookies).
With the exception of Cookies essential to the operation of the site, NumWorks leaves you the choice: you can accept Cookies for audience measurement by clicking on the "Accept and continue" button, or refuse these Cookies by clicking on the "Continue without accepting" button or by continuing your browsing. You can update your choice at any time by clicking on the link "Manage my cookies" at the bottom of the page. For more information, please consult our cookies policy.