Hackable N°
Numéro
28

Utilisez la mémoire "secrète" de vos ESP8266 !

Temporalité
Janvier/Février/Mars 2019
Image v3
Utilisez la mémoire "secrète" de vos ESP8266 !
Article mis en avant

Résumé
Les cartes et modules à base d'ESP8266 ont grandement évolué depuis l'ESP-01 et ses malheureux 512 Ko de mémoire flash pour les programmes/croquis. On trouve à présent des cartes comme la NodeMCU ou le Wemos D1 pour quelques euros disposant de 4 Mo de flash. Pourtant seul 1 Mo est utilisable pour les croquis, ce qui est plus que suffisant. Voyons comment utiliser l'espace restant pour facilement stocker des données...

Dans ce numéro...


Le VPN. Une brique, rien de plus...
Un code comme un code d'entrée d'un hall d'immeuble, étant composé généralement de chiffres de 0 à 9 sur 4 positions, la réponse qu'on est tenté de donner est tout simplement 40000, car il faut saisir tous les codes de 0000 à 9999. Ce qui correspond à 10000 codes de 4 chiffres, soit 40000 pressions sur les touches. En réalité, 10003 pressions peuvent suffire si l'on utilise un mot de de Bruijn...
Quand on veut afficher une image sur un écran, on utilise généralement une carte SD pour stocker l’image et des librairies pour traiter les informations. Mais s’il s’agit d’un écran monochrome, alors il existe des astuces pour se passer de tout ça.
Lorsque vous bricolez, le premier défi est de trouver la meilleure approche avec le matériel adéquat, tout en minimisant le coût matériel et le développement logiciel. Si vous avez juste besoin de lire l'état de quelques interrupteurs, sans contrainte de temps réel forte, la solution se trouve probablement dans une brocante à un sou, ou dans votre carton d'antiquités qui ont échappé à la benne depuis 20 ans. En effet, quoi de plus commun, économique, simple et pratique qu'une bonne vieille souris à fil ?
Quel que soit le projet sur lequel on travaille, au final on ne fait que manipuler des octets et leur constituant, les bits. Il est fréquent, en raison de la facilité d'utilisation du langage Arduino, de perdre de vue qu'il ne s'agit, en réalité que de C/C++ étoffé de quelques fonctions et mécanismes livrés « clé en main ». Or justement, le C et le C++ sont ce qu'on appelle des langages de bas niveau en raison de leur proximité avec l'architecture matérielle. Et qui dit « proximité avec le matériel », dit forcément « bits » et « opérations binaires ».
En tant que bidouilleur, j’ai tendance à démonter pas mal d’objets soit pour les réparer soit pour en extraire certaines pièces. Mais c’est souvent insuffisant pour mener à bien un projet. C’est pour ça que je fais souvent appel à la modélisation 3D.
Dans le précédent article, nous avons fait connaissance avec le signal /WAIT et son utilité lorsqu'il est associé à une action découlant de l'inspection du signal /M1. Nous avons rapidement développé un croquis Arduino nous permettant de lier ces deux signaux et avons eu l'impression que ceci fonctionnait à merveille puisque l'exécution des instructions par le Z80 semblait effectivement ralentie. Faisons face ensemble à la triste réalité, aux limitations d'une carte comme l'Arduino UNO et surtout, à la façon de régler le problème...

Magazines précédents

Les derniers articles Premiums

Les derniers articles Premium

Cryptographie : débuter par la pratique grâce à picoCTF

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

L’apprentissage de la cryptographie n’est pas toujours évident lorsqu’on souhaite le faire par la pratique. Lorsque l’on débute, il existe cependant des challenges accessibles qui permettent de découvrir ce monde passionnant sans avoir de connaissances mathématiques approfondies en la matière. C’est le cas de picoCTF, qui propose une série d’épreuves en cryptographie avec une difficulté progressive et à destination des débutants !

Game & Watch : utilisons judicieusement la mémoire

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Au terme de l'article précédent [1] concernant la transformation de la console Nintendo Game & Watch en plateforme de développement, nous nous sommes heurtés à un problème : les 128 Ko de flash intégrés au microcontrôleur STM32 sont une ressource précieuse, car en quantité réduite. Mais heureusement pour nous, le STM32H7B0 dispose d'une mémoire vive de taille conséquente (~ 1,2 Mo) et se trouve être connecté à une flash externe QSPI offrant autant d'espace. Pour pouvoir développer des codes plus étoffés, nous devons apprendre à utiliser ces deux ressources.

Raspberry Pi Pico : PIO, DMA et mémoire flash

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Le microcontrôleur RP2040 équipant la Pico est une petite merveille et malgré l'absence de connectivité wifi ou Bluetooth, l'étendue des fonctionnalités intégrées reste très impressionnante. Nous avons abordé le sujet du sous-système PIO dans un précédent article [1], mais celui-ci n'était qu'une découverte de la fonctionnalité. Il est temps à présent de pousser plus loin nos expérimentations en mêlant plusieurs ressources à notre disposition : PIO, DMA et accès à la flash QSPI.

Body