Assembleur sur ARM Cortex-M : technique, mais pas si difficile...

Magazine
Marque
Hackable
Numéro
39
Mois de parution
octobre 2021
Spécialité(s)


Résumé

Choisir un langage pour un projet est une question d'équilibre entre confort et rapidité de développement d'une part et performance de l'autre. C'est précisément là la raison pour laquelle des langages comme C, C++ et depuis peu, Rust sont omniprésents, dès lors qu'on parle d'embarqué et de microcontrôleur. Aux deux extrémités du spectre des langages, nous avons JS ou Python d'un côté et l'incontournable assembleur de l'autre. Celui-là même dont nous allons nous occuper ici...


Beaucoup considèrent l'assembleur comme quelque chose d'un autre âge, celui de la programmation des Atmel AVR avec trop peu de SRAM pour supporter un développement C ou encore des MicroChip PIC comme le 16F84. Il n'y a rien de plus faux, car la judicieuse utilisation d'un langage ne se définit pas en termes temporels, mais en fonction des avantages, des besoins et des contraintes. Même si aujourd'hui, il serait impensable d'utiliser ce langage pour développer tout un projet sur une plateforme disposant de centaines de kilooctets de RAM et de flash, l'assembleur est toujours présent et apparaît comme une évidence, pour peu que l'on se rapproche du matériel. Qu'il s'agisse de bootloader, de vecteur d'initialisation, de CRT ou de routines nécessitant des performances accrues, le langage d'assemblage n'est pas un choix, c'est une nécessité.

Comme nous allons le voir, les langages de plus haut niveau, ainsi que les bibliothèques qui les accompagnent facilitent…

La suite est réservée aux abonnés. Il vous reste 98% à découvrir.
  • Accédez à tous les contenus de Connect en illimité
  • Découvrez des listes de lecture et des contenus Premium
  • Consultez les nouveaux articles en avant-première
Envie de lire la suite ? Rejoignez Connect
Je m'abonne maintenant


Article rédigé par

Par le(s) même(s) auteur(s)

Édito : L'IA passe avant !

Magazine
Marque
Hackable
Numéro
64
Mois de parution
janvier 2026
Résumé

Ce n'est pas moi qui le dis, c'est ce qu'annonce à demi-mots le communiqué du 3 décembre dernier de Micron Technology [1] qui, en 2024, était décrit comme le troisième acteur du domaine de la RAM/DRAM, derrière Samsung et Hynix, avec quelque 22 % de part de marché.

Créons un périphérique « maison » pour notre SoC LiteX

Magazine
Marque
Hackable
Numéro
64
Mois de parution
janvier 2026
Spécialité(s)
Résumé

J'ai, à de nombreuses reprises, détaillé en quoi implémenter un SoC sur mesure sur un FPGA présentait de nombreux avantages. En particulier lorsque cela est aussi facile qu'avec le framework LiteX où, avec un minimum de code Python, cela se transforme en un simple jeu de construction. Mais utiliser les périphériques déjà disponibles, même s'ils sont nombreux et variés, ne représente qu'une petite partie des bénéfices de l'exercice. Là où cela devient réellement magique, c'est lorsqu'il s'agit de créer ses propres périphériques, et c'est précisément ce que nous allons voir ici.

Colorlight 5A-75B : développement FPGA avec LiteX et petits hacks

Magazine
Marque
Hackable
Numéro
64
Mois de parution
janvier 2026
Spécialité(s)
Résumé

Dans le petit monde des cartes et des équipements initialement destinés à une tout autre utilisation, mais pouvant faire office de très sympathiques plateformes de développement FPGA, la famille « Colorlight » est presque un classique. Ce matériel, initialement prévu pour être une carte de pilotage de panneaux à LED interfacée en Ethernet, a déjà été évoqué dans les pages de ce magazine, dans un excellent article de Fabien Marteau il y a quelques années [1]. Nous revenons ici sur le sujet, avec une approche différente et, surtout, une modification matérielle permettant d'en tirer vraiment le maximum...

Les listes de lecture

Communications satellites

7 article(s) - ajoutée le 01/07/2020
La SDR permet désormais de toucher du doigt un domaine qui était jusqu'alors inaccessible : la réception et l'interprétation de signaux venus de l'espace. Découvrez ici différentes techniques utilisables, de la plus simple à la plus avancée...

Rétrocomputing : résurrection de matériel

8 article(s) - ajoutée le 01/07/2020
Au-delà de l'aspect nostalgique, le rétrocomputing est l'opportunité unique de renouer avec les concepts de base dans leur plus simple expression. Vous trouverez ici quelques-unes des technologies qui ont fait de l'informatique ce qu'elle est aujourd'hui.

Outils et matériel pour la SDR

9 article(s) - ajoutée le 01/07/2020
S'initier à la SDR est une activité financièrement très accessible, mais devant l'offre matérielle il est parfois difficile de faire ses premiers pas. Découvrez ici les options à votre disposition et les bases pour aborder cette thématique sereinement.
Plus de listes de lecture