Nucléo – Utiliser des LEDs RGB pilotables indépendamment

LEDs RGB Pilotables LED WS2812 Les LEDs de type WS2812 sont la combinaison de 3 LEDs trichromes (rouge, verte et bleue) et d’un circuit de commande numérique (registres à décalage et PWM pour chacune des couleurs). Elles se pilotent donc

Nucléo – Générer un signal rectangulaire

Comment générer un signal rectangulaire ? NIVEAU 1 Objectifs Pré-requis Déboguer son programme et utiliser l’affichage série Modulation de largeur d’impulsions Principe La modulation en largeur d’impulsions (MLI ou PWM – Pulsed Witdh Modulation – en anglais) est une méthode

Nucleo / Trucs et astuces

I2C et interruptions (Ticker) L’utilisation du protocole I2C sous MBED / Keil Studio empêche le fonctionnement normal des interruptions lorsque vous souhaitez écrire ou lire des données sur une liaison I2C à l’intérieur d’une fonction d’interruption. Cette limitation est due

Python / PySerial / Premier script

Pour pouvoir tester les exemples de ces tutoriels, vous devez installer la bibliothèque PySerial. Sa documentation complète est disponible en ligne : https://pypi.org/project/pyserial/ PySerial est une bibliothèque Python permettant d’ouvrir et de transférer des données par l’intermédiaire des liaisons séries

Python / Interfaçage et affichage

Dans cette section, vous allez découvrir : Interface graphique avec PySide / PyQT Interfaçage d’une carte d’acquisition avec PySerial Dans cette section, nous allons voir comment mettre en place une application permettant de transférer des données entre une carte d’acquisition

Nucleo – Trouver des informations dans la documentation

Comment trouver des informations dans la documentation technique ? NIVEAU 1 Objectifs Trouver l’information sur les différentes fonctions disponibles en ligne Importer de nouvelles bibliothèques de fonctions Comprendre la structure simplifiée d’un microcontroleur Pré-requis Déboguer son programme et utiliser l’affichage

Nucleo – Utiliser des bibliothèques externes

Comment utiliser des bibliothèques externes ? NIVEAU 1 Objectifs Utiliser des bibliothèques existantes (proposées par la communauté MBED) Pré-requis Trouver des informations dans la documentation Attention ! Cette page n’est pas encore modifiée pour KEIL STUDIO ! Les informations qu’elle

[MInE] PIMS21-22 Vision industrielle

[MInE] PIMS21-22 Vision industrielle

Ce projet a donné lieu à un banc de démonstration/formation utilisé lors de la formation SC19 – Vision Industrielle, du catalogue de la formation continue de l’IOGS. Il a également donné lieu à des sujets de projets en première et

Nucléo – Stocker des données sur une carte SD en SPI

Comment stocker des données sur une carte SD en SPI ? NIVEAU 3 Objectifs Ajouter de l’espace mémoire à l’aide d’une carte SD en SPI Créer et lire des fichiers ASCII sur une carte SD (système de fichier FAT) Pré-requis

Nucleo – Déboguer son programme et utiliser l’affichage Série

Comment déboguer son programme ?Comment utiliser l’affichage Série ? NIVEAU 1 Objectifs Pré-requis Piloter une LED Débogage Lorsqu’on développe une application “standard” sur un ordinateur, il est facile de rajouter des lignes supplémentaires pour afficher des informations de débogage :

Nucleo – Piloter une LED

Comment piloter une LED ? NIVEAU 1 – Notion obligatoire pour la suite Objectifs Pré-requis Tester ma première application Sorties numériques Bon, c’est bien beau tout ça, mais comment spécifier dans le compilateur que je veux utiliser telle broche en

Nucleo – Tester ma première application

Comment tester ma première application sur Nucléo ? Notion obligatoire pour la suite Objectifs Pré-requis Créer un projet sous MBED N.B. Ce tutoriel peut être complété par la page suivante, Découvrir les microcontrôleurs des cartes Nucléo, qui fournit des compléments

Nucleo – Créer un projet sous MBED

Comment créer un projet sous MBED ? Notion obligatoire pour la suite Objectifs Pré-requis Qu’est-ce qu’un IDE ? Un IDE, pour integrated development environment, ou EDI en français (Environnement de Développement Intégré) est un ensemble d’outils proposés pour aider les

Nucleo / Bibliothèques de fonctions

L’ensemble des bibliothèques développées par le LEnsE pour MBED6 est disponible à l’adresse suivante : https://iogs-lense-ressources.github.io/mbed6-libraries/ (CHANGEMENT D’ADRESSE !!) Il est possible de faire une copie de ce dépôt GIT dans votre propre espace de travail afin d’accéder à l’ensemble

Nucleo / Communiquer sans fil entre deux systèmes

Il existe plusieurs méthodes pour transmettre des informations entre deux systèmes distants. Parmi ces méthodes, nous allons détailler ici les suivantes : Utilisation du composant nRF24L01 (module Olimex MOD24NRF et bibliothèque MBED – ) Utilisation du composant RN42 (module VP)

KiCAD – Librairies d’empreintes / PCB

Version 5.1.4 / Windows Empreintes de composants standards Connecteurs Connector_PinHeader_2.54mm / Connecteurs males Connector_PinSocket_2.54mm / Connecteurs femelles

Visualiser un signal à l’oscilloscope

Principe de fonctionnement Un oscilloscope est un instrument de mesure permettant de visualiser un signal électrique, souvent une différence de potentiel, en fonction du temps. Il possède au moins une voie d’entrée et un écran en 2D possédant des axes

Générer des tensions stabilisées

Une alimentation stabilisée est un instrument de laboratoire permettant d’assurer l’alimentation d’un circuit à l’aide d’une tension continue. Ces alimentations possèdent souvent plusieurs canaux, réglables en tension, indépendamment. Se documenter Les alimentations disponibles en salle des TP d’ETI de l’Institut

Arduino / Installer et lancer le logiciel Arduino

Comment installer et lancer le logiciel Arduino ? Notion obligatoire pour la suite Le développement d’une application embarquée nécessite : du matériel spécifique, ici une carte Arduino (et d’autres composants qui seront ajoutés au fur et à mesure des tutoriels)

Développer des systèmes autour des Raspberry Pi

Les cartes de développement Raspberry Pi sont des mini-ordinateurs, basés sur des microcontroleur ARM (les mêmes que ceux qu’on retrouve dans les téléphones portables). Ces cartes ont la particularité de proposer l’accès à une série d’entrées-sorties numériques que l’on peut

Câbler sur une platine de prototypage

Les platines de prototypage, appelées également breadboard, permettent de réaliser des montages électroniques sans soudure à l’aide de composant traversant. Chaque ligne horizontale numérotée (sur l’image précédente) représente un équipotentiel où il est possible d’insérer les broches des composants. Des

Arduino – Logiciel / Carte de développement

Logiciel / Carte de développement Etapes de conception Lorsqu’on souhaite développer un programme embarqué, par exemple sur une carte de développement de type Arduino Uno, quelques étapes de développement sont nécessaires : Lister les entrées / sorties du système Rédiger

Arduino – Structure d’un programme

Structure d’un programme Voici un exemple de code pour Arduino. Nous décomposerons chacune des parties par la suite. #include LiquidCrystal lcd(12, 11, 5, 4, 3, 2);int led = 13;int bp = 6;void setup() { // initialize the digital pin as

Arduino – Structures conditionnelles

Structures conditionnelles Afin de rendre certaines parties du code exécutable sous certaines conditions, il est possible d’ajouter des conditions logiques.Il en existe de 3 sortes. Structure SI / SINON La première permet d’exécuter un bloc d’instructions si une condition logique

Arduino – Moniteur Série / Débogage

Débogage Sur un système embarqué, il est difficile de connaître l’état d’avancement du programme puisque, par défaut, il ne possède pas d’écran de visualisation.Pour remédier à ceci, il existe (au moins) deux solutions : utiliser une broche de sortie, connectée

Arduino – Entrées / Sorties Numériques

Entrées / Sorties Numériques La carte Arduino Uno permet d’interagir avec son environnement et ainsi piloter des systèmes comportant des capteurs (analogiques ou numériques) et des actionneurs. Nous allons voir dans cette section comment la carte peut interagir avec des

Arduino – Sorties Modulées

Sorties Modulées Afin de piloter certains actionneurs “lents” à l’aide d’une tension continue, on peut appliquer le principe de la modulation de largeur d’impulsions (ou PWM – Pulse Width Modulation). Principe Cette méthode consiste à appliquer un signal rectangulaire de

Arduino – Entrées Analogiques

Entrées Analogiques La carte Arduino Uno possède 6 entrées analogiques, reliées à un convertisseur analogique/numérique qui renvoie un code numérique sur 10 bits, soit une valeur comprise entre 0 et 1023. La pleine échelle est de 5V, c’est à dire

Microcontrôleurs / Comment se programme un microcontroleur ?

Etapes de programmation Ecriture du code source Tout comme les processeurs généralistes (qui équipent la plupart des ordinateurs), les microcontrôleurs ne comprennent que du langage de bas niveau, encore appelé assembleur. Cependant, ces langages étant difficiles à comprendre et à

Microcontroleurs / Qu’est-ce qu’un microcontroleur ?

Qu’est-ce qu’un microcontroleur ? Un microcontroleur est un composant électronique actif (c’est à dire nécessitant une alimentation externe) permettant de faire du traitement numérique de l’information de manière embarquée. Ils peuvent se présenter sous différents formats selon leurs applications. Structure

Microcontrôleurs

Généralités sur les microcontroleurs Qu’est-ce qu’un microcontroleur ? Comment se programme un microcontroleur ? Qu’est-ce qu’un registre ? (A finir) Quelle est la structure d’un programme embarqué ? (A compléter) En résumé : Micronctroleurs (2016 – JV) Cartes de prototypage

Microcontrôleurs / Qu’est-ce qu’un registre ?

Organisation de la mémoire d’un microcontroleur Mémoire programme Mémoire données Différents registres Les registres sont des espaces mémoires adressables indépendamment par le microcontroleur. Selon les registres, ils sont soient à : usage général : permettant ainsi de stocker des données

Microcontrôleurs / Quelle est la structure d’un programme embarqué ?

L’exemple de cette page se base sur un microcontroleur PIC16F Quelques règles de base Ressources limitées Les microcontroleurs sont des calculateurs simplifiés et dont la principale préoccupation est de répondre le plus rapidement possible à une sollicitation extérieure. Ainsi, tout

Microchip PIC16F / Matériels et logiciels nécessaires

Cette page et ses descendantes sont encore en cours de construction… Les microcontroleurs PIC16F Les éléments indispensables pour programmer Le logiciel MPLABX Le compilateur XC8 Le programmateur/debogueur ICD3 Le microcontroleur PIC16F1503/1509 La carte d’étude Pour pouvoir travailler de manière plus

Microchip PIC16F / Prise en main de l’IDE / MPLABX

Cette page et ses descendantes sont encore en cours de construction… L’environnement L’environnement de développement MPLABX ainsi que toutes les étapes pour la création d’un projet et le téléversement sur la cible microcontrôleur de votre programme sont décrits dans cette page.

Microchip PIC16F / Structure interne PIC16F150x

Cette page et ses descendantes sont encore en cours de construction… Structure interne du PIC16F150x Les microcontroleurs de type PIC16F150x, de la société Microchip, sont des unités de calculs embarquées sur 8 bits prévues pour des utilisations industrielles et cadencées

Microchip PIC16F / Registres internes PIC16F150x

Cette page et ses descendantes sont encore en cours de construction… Organisation de la mémoire du PIC16F150x Les microcontroleurs PIC16F possèdent deux espaces mémoires distincts : l’un pour le programme, l’autre pour les données. On parle alors d’une architecture Harvard

Microchip PIC16F / Entrées-Sorties Numériques

Cette page et ses descendantes sont encore en cours de construction… Les broches du PIC16F1509 Les microcontroleurs de la famille des PIC16F possèdent des broches spécifiques d’entrées/sorties regroupées dans des ports d’entrées/sorties. Ces ports sont nommés PORTx (où x est

Microchip PIC16F / Utiliser une liaison SPI / PIC16F1509

Introduction Le protocole de communication SPI (Serial Peripheral Interface) permet d’établir une liaison de transmission de données série synchrone entre un maître et plusieurs esclaves. La liaison se fait à l’aide de 4 fils (voir schéma suivant – vu du maître) :

Microchip PIC16F / Utiliser une mémoire RAM / MCP 23 LCV1024 / PIC16F15xx

Introduction Le composant 23LCV1024 de Microchip (documentation) est une mémoire à accès aléatoire, c’est à dire volatile – perte de l’information lorsqu’elle n’est plus alimentée – de type statique, c’est à dire sans nécessité de rafraîchir les données régulièrement. Elle peut

Nucléo – Configurer une communication point à point de type RS232

Comment configurer une communication point à point de type RS232 ? NIVEAU 2 Objectifs Pré-requis Faire communiquer deux systèmes ensemble 1 Protocole RS232 Utilisation et définition Le protocole RS232 a longtemps été utilisé pour piloter des périphériques d’ordinateur (Modem, GBF,

Nucléo – Echanger des données entre un PC et un uC

Ou échanger des données entre deux microcontroleurs par l’intermédiaire d’un protocole “bas niveau” existant (SPI, I2C ou RS232 par exemple). Comment échanger des données entre deux systèmes communicants ? NIVEAU 3 Objectifs Etablir un protocole de communication de haut niveau