Créons un « pilote » bare metal pour une interface série

Magazine
Marque
Hackable
Numéro
63
Mois de parution
novembre 2025
Spécialité(s)


Résumé

Durant mes pérégrinations dans le petit monde du développement FPGA avec LiteX s'est posée une problématique intéressante, consistant à devoir écrire un support pour une interface série (UART) en n’ayant à disposition rien d'autre qu'une poignée de registres où lire ou écrire. Cet exercice, pour moi, était une phase préalable à l'implémentation d'un pilote pour un système d'exploitation, mais serait transposable à n'importe quel type d'interface reposant sur des mécanismes similaires, et ce, sur n'importe quel MCU ou SoC, actuel ou ancien. Faisons donc connaissance avec l'UART LiteX, voulez-vous ?


Le contexte évoqué ici concerne initialement du développement C bare metal pour un SoC softcore RISC-V produit par le framework LiteX, couvert par ailleurs dans quelques articles précédents de la publication. Il ne s'agit pourtant pas d'un article sur LiteX et, même s'il est toujours intéressant de reproduire les manipulations avec du matériel physique, n'est pas réellement en lien avec un quelconque MCU ou SoC. L'objet est simplement de voir comment, à partir de quelques registres, nous pouvons créer un support simplifié pour un port série en programmation bare metal (sans OS). Ceci sera donc, dans une certaine mesure, facilement adaptable à tout type de situations similaires. Le mot « pilote » utilisé dans le titre est donc à prendre au sens large du terme, puisqu'il s'agit davantage d'un « morceau de code » plutôt que d'un pilote pour système comme Linux, FreeRTOS, Zephyr, etc.

Néanmoins, le scénario présent étant…

La suite est réservée aux abonnés. Il vous reste 95% à 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)

Proxmark 3 Easy et Chameleon Ultra : la guerre des clones, ou pourquoi « se mettre au NFC » n'a jamais été aussi peu cher

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

Il y a un peu plus de deux ans, je vous parlais du Chameleon Ultra, et il y a plus longtemps encore du Proxmark 3. Mais depuis ces temps anciens, les choses ont bien changé. Ce qui était alors et est toujours, selon où l'on s'équipe, du matériel nécessitant un budget relativement sérieux se décline désormais à des tarifs défiant toute concurrence. Ainsi, un Proxmark 3 Easy ne vous coûtera que quelque 30 € et un Chameleon Ultra moins de 20 €. Il ne s'agit, bien entendu, pas de versions officielles, mais pour moins d'une cinquantaine d'euros, on peut disposer d'un équipement réellement viable. Voyons cela de plus prè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.

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