Débugger un système embarqué, virtuel ou réel, au moyen de GDB et JTAG

Magazine
Marque
Hackable
Numéro
62
Mois de parution
septembre 2025
Spécialité(s)


Résumé

Nous explorons les divers outils permettant de sonder l’état de la mémoire de microcontrôleurs au cours de l’exécution d’un programme pour en identifier les dysfonctionnements ou suivre le statut des variables ou registres internes à l’unité arithmétique et logique. Ces explorations se feront soit sur matériel, soit dans le domaine virtuel des émulateurs, avec ou sans la supervision d’un système d’exploitation.


Je dois bien admettre faire partie de cette classe de développeurs plus ou moins bas niveau qui a toujours été satisfait avec printf() le long de ses programmes pour en tracer l’exécution, ayant appris très tôt à toujours fflush(stdout) après chaque printf() pour éviter que le message accumulé dans un tampon ne soit perdu lors d’un crash, induisant le risque d’identifier un point erroné de dysfonctionnement du programme en ayant perdu une partie des messages affichés.

Figure 1 : Plan de la présentation en deux épisodes déclinant le déverminage (debug en anglais) sur émulateur ou sur matériel en déclinant…
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)

Sonder un signal différentiel avec un oscilloscope

Magazine
Marque
Hackable
Numéro
61
Mois de parution
juillet 2025
Spécialité(s)
Résumé

Un signal différentiel est caractérisé par la propagation sur deux fils supposés proches, pour subir les mêmes perturbations électromagnétiques, de potentiels opposés pour propager une information, et ces potentiels ne sont pas référencés à une masse, mais l’un par rapport à l’autre. Un oscilloscope ne peut observer qu’un potentiel référencé à sa masse (puisque les normes interdisent « normalement » de déconnecter la masse de la terre pour la rendre flottante), et même si la solution de soustraire la mesure de deux voies pour analyser le signal différentiel est désormais disponible sur oscilloscopes numériques, d’énormes oscillations du secteur à 50 Hz polluent la mesure différentielle. Nous proposons un circuit dédié, à faible coût et facile à assembler, pour convertir le signal différentiel en signal référencé.

Mise en œuvre d’un serveur NTRIP pour la mesure de position centimétrique : qu’est-ce que l’altitude ?

Magazine
Marque
Hackable
Numéro
60
Mois de parution
mai 2025
Spécialité(s)
Résumé

Nous déployons notre propre serveur NTRIP fournissant les informations de référence pour le positionnement centimétrique par trilatération de signaux de navigation par satellite, avant de nous interroger sur la définition de l’altitude et en particulier de « au-dessus du niveau moyen de la mer ».

Programmation USB sous GNU/Linux : application du FX2LP pour un récepteur de radio logicielle dédié aux signaux de navigation par satellite (2/2)

Magazine
Marque
Hackable
Numéro
59
Mois de parution
mars 2025
Spécialité(s)
Résumé

Depuis que Tomoji Takasu, auteur de RTKLib, a publié à https://github.com/tomojitakasu/PocketSDR son récepteur de radio logicielle dédié aux constellations de navigation par satellite, nous rêvions d’en obtenir une copie. Indisponible commercialement, nous avons donc décidé d’en produire une déclinaison nous-mêmes, en respectant les préceptes de n’utiliser que des outils libres. Nous profiterons de cette nouvelle plateforme de travail pour étudier quelques aspects d’exploitation des signaux de navigation par satellite, de la détection de leurrage à l’asservissement d’un oscillateur à quartz sur la référence de temps produite par les horloges atomiques à bord des satellites, et ce, en tirant parti des connaissances acquises sur la programmation des interfaces USB, et des communications entre logiciels de PocketSDR, GNU Radio et gnss-sdr.

Conférence European GNU Radio Days 2024 : annonce de GNU Radio 4.0 et tutoriel sur les blocs de traitement Python

Magazine
Marque
Hackable
Numéro
57
Mois de parution
novembre 2024
Spécialité(s)
Résumé

Quelques retours sur la conférence européenne dédiée au logiciel libre de traitement de signaux radiofréquences échantillonnés en temps discret GNU Radio, et le développement de blocs Python dédiés au traitement du signal en flux tendu.

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