Ch4 programmation Systèmes à Microprocesseurs Cycle Ingénieur Troisième Année Sébastien Bilavarn PoPlyotleyctehcNh ? iNceicSeoSpohpiahi-aD-pDt éInpgaértneimereientdEesleSctyrsotnèimquees-EUlencivtreornsiiqtéuedse- NUicneivSeorspithéiaCAôntetipdo ? Aliszu-
Systèmes à Microprocesseurs Cycle Ingénieur Troisième Année Sébastien Bilavarn PoPlyotleyctehcNh ? iNceicSeoSpohpiahi-aD-pDt éInpgaértneimereientdEesleSctyrsotnèimquees-EUlencivtreornsiiqtéuedse- NUicneivSeorspithéiaCAôntetipdo ? Aliszu-rS - SB ilBaivlavrnarn - - C ? Ch ?? Représentation de l ? information ? Ch ?? ARM Instruction Set Architecture ? Ch ?? Accès aux données ? Ch ?? Programmation structurée ? Ch ?? Cycle d ? exécution ? Ch ?? Codage binaire ? Ch ?? Microcontrôleur ARM Cortex-M Plan PoPlyotleyctehcNh ? iNceicSeoSpohpiahi-aD-pDt éInpgaértneimereientdEesleSctyrsotnèimquees-EUlencivtreornsiiqtéuedse- NUicneivSeorspithéiaCAôntetipdo ? Aliszu-rS - SB ilBaivlavrnarn - - CProgrammation structurée en assembleur ARM ? Appels de sous- programmes ? Structure de pile ? Mise en place d ? une pile ? Passage de paramètres PoPlyotleyctehcNh ? iNceicSeoSpohpiahi-aD-pDt éInpgaértneimereientdEesleSctyrsotnèimquees-EUlencivtreornsiiqtéuedse- NUicneivSeorspithéiaCAôntetipdo ? Aliszu-rS - SB ilBaivlavrnarn - - CNotions ? Sous-programme terme générique désignant un sous-ensemble d ? un programme ? Procédure un sous-programme qui ne renvoie pas de résultat ? Ex printf Hello world n ? Fonctions un sous-programme e ?ectuant un traitement sur des données et qui renvoie un résultat ? Ex c max a b ? Appel et retour de sous-programmes ? Un sous-programme doit mémoriser l ? adresse du code appelant pour poursuivre l ? exécution à l ? adresse de retour correspondante ? Mécanismes d ? échanges de données ? Passage de paramètre par valeur le code appelé dispose d ? une copie de la valeur ? Passage de paramètre par référence le code appelé dispose de l ? adresse du paramètre Il peut modi ?er sa valeur ? Valeur de retour d ? une fonction donnée fournie par le code appelé au code appelant PoPlyotleyctehcNh ? iNceicSeoSpohpiahi-aD-pDt éInpgaértneimereientdEesleSctyrsotnèimquees-EUlencivtreornsiiqtéuedse- NUicneivSeorspithéiaCAôntetipdo ? Aliszu-rS - SB ilBaivlavrnarn - - CAppel de sous-programmes ? Appel et retour de sous-programmes ? Pour appeler un sous programme ? Branch and Link BL label ? L ? exécution se poursuit à l ? instruction correspondant au label ? L ? adresse de retour est conservée dans le registre LR Link Register r ? Pour revenir d ? un sous- programme ? MOV PC LR équivalent à MOV r r ? L ? adresse de retour est récupérée dans LR ? L ? exécution se poursuit à l ? instruction qui suit l ? instruction d ? appel PoPlyotleyctehcNh ? iNceicSeoSpohpiahi-aD-pDt éInpgaértneimereientdEesleSctyrsotnèimquees-EUlencivtreornsiiqtéuedse- NUicneivSeorspithéiaCAôntetipdo ? Aliszu-rS - SB ilBaivlavrnarn - - CEncha? nement d ? appels ? Principe void main ? displayMenu ? void displayMenu displayStr New displayStr Load displayStr Save displayStr Quit void displayStr char str while str displayChar str str void displayChar char ch ? PoPlyotleyctehcNh ? iNceicSeoSpohpiahi-aD-pDt éInpgaértneimereientdEesleSctyrsotnèimquees-EUlencivtreornsiiqtéuedse- NUicneivSeorspithéiaCAôntetipdo ? Aliszu-rS - SB ilBaivlavrnarn - - CEncha? nement d ? appels ? Problème de la traduction en assembleur main ? BL displayMenu ? displayMenu ? BL displayStr ? BL displayStr ? BL displayStr ? BL displayStr MOV PC LR LR retour dans main PC displayMenu Traduction en assembleur Branchement temporaire BL displayMenu Dans la fonction main à l ? exécution de l ? instruction BL displayMenu -l ? adresse de retour adresse de l ? instruction BL displayMenu est sauvegardée dans
Documents similaires
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/11703116306onkdxtdttnwoewddxl2lfmflftvnxafkinwhod0ebopmyowxoraez39sww4ekkb6zcao63ithgvfhufcqyqhj8bm3wc9msnxjqis.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/11703150849zjriddzhu0yepw8ggleo3dvabaljb6wywzuiyimxrsua36pvpjk8glrhyhsajerbvkic7ef7xtchfmmrag5tbhis0rnutcj2bbae.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/11703058933grdxmw0siv6fsyvtbgqwar41sz6zjq53dnwytbxayjkzulq0tvhlq6phjgeg75o2rw3nrvm5zrebsqynpfqq4tnhldrj8ffefevd.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/11703288047k5plcezxl1ep0x4tsowko83eyvppqf6ifsdkdzx84fvhuz9gr1yzoojcesxepszp9cawyns7fyiedbsetwljaus1qvrmha8t0byz.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/zHZQLnn3hGZSyAIRjMsDG25gzh5WuEXsnAwivWPpMuf7F9jf3N6ah9BV2BLyQtvtnZewknYAOPFEKX5t58amyx6x.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/11703109986n2jwnj0zaln5thfjp3yrfztcacdeo32mffn5fvjohhzjjkdheifayhinm8ggsidydh9crfhc15lmqy1k0fulwzbsdjerjpjzht3q.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/11703025435fjgu8mrenhstkvqrgxoauzmie4scscw5q0dhxnuhj8vm6nlecn8lfdlm6ycm8qaiipnewgrgdd4swasbky7wqrmygoxrj6jogo22.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/zPo4Eldc1AbRbdBUk0kZla0TKhZ5zOSe5D8WhP4EIJw7zrMRd07WD6blzglOl6rVRLxHxGvCBsonE7Lou89kyYD1.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/lPvvGPtiEcckBvigP0a9TIIbI7DSaaFvPILWbuYkL9rPZv84ZKkFjQQ7e94AQK15TDhOFqtNbNvlgaqCLC2u6m4f.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/11703201749qo7pnvrfbge7l041ywy5isagtlzv7tjh3tw6sq7ab1nyelbhfrse2aedw78xlamro57iweufzlklwmddj0vgtt95egldalsnbb4d.png)
-
24
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Aucune attribution requise- Détails
- Publié le Nov 17, 2022
- Catégorie Literature / Litté...
- Langue French
- Taille du fichier 82kB