Outils pour utilisateurs

Outils du site


start:stm32

STM32

STM32 NUCLEO 144

Debuter avec la carte STM32 Nucleo F334R8

Connexion à la carte

Via un câble USB connecté sur CN1

Logiciel

Arduino IDE2

Ajouter la bibliothèque de cartes complémentaires dans “préférences” Ajouter ce lien dans “Additional Boards Managers URLs”:

https://github.com/stm32duino/BoardManagerFiles/raw/main/package_stmicroelectronics_index.json

Télécharger et installer Cube32Programmer

Au 21/01/2024, note de JPD : Il existe peut être une autre méthode pour transférer un programme fait depuis Arduino IDE dans la carte STM32 nucléo, mais à aujourd’hui, je n’ai essayé qu’avec l’upload via STM32CubeProgrammer.

Cette application est très probablement utilisée en arrière plan pour compiler et/ou transférer le programme. C’est masqué, il suffit juste d’installer STM32CubeProg sur le PC où Arduino IDE est utilisé. Attention à bien l’installer à l’emplacement par défaut, sinon j’ai cru lire qu’il fallait ajouter manuellement le lien dans un fichier (lequel ??).

Pour télécharger STM32CubeProg.

Configuration Arduino IDE 2 pour programmer F334R8

Dans Arduino IDE2, choisir la carte et vérifier les méthodes d’UpLoad :

Choisir Generic STM32F3Series dans Board :

Dans les nouveaux sous-menu dans Tools, Choisir la carte F334R8Tx :

Dans Upload method : “STM32CubeProgrammer (SWD)”

Caracteristiques de la carte F334R8

Vue d'ensemble

Broche GPIO Pinout

Pour piloter la led intégrée qui est connue comme “D13” sur Arduino, il faut sur la carte STM32334R8, piloter la sortie “PA5”, ou “PA_5” comme illustré dans le tableau de correspondance ci-dessous :

Numérotation des broches et fonctionnalités

/!\ Dans le programme il faut spécifier uniquement les noms de broches inscrites en Bleu/blanc dans les figures ci-dessus.
Alimentation de la carte

L'alimentation électrique est fournie soit par le PC hôte via le câble USB, soit par une source externe.

source externe : broches d'alimentation VIN (de 7 V à 12 V), E5V (5 V) ou +3,3V sur CN6 ou CN7. Dans le cas où VIN, E5V ou +3.3V est utilisé pour alimenter la carte STM32 Nucleo, l'utilisation d'un bloc d'alimentation externe ou d'un équipement auxiliaire est nécessaire.

d'alimentation externe ou d'un équipement auxiliaire, cette source d'alimentation doit être conforme à la norme EN-60950-1 : 2006+A11/2009, et doit être de type Safety Extra Low Voltage (SELV) avec une capacité de puissance limitée.

Exemple programme “faire clignoter la led intégrée”
exempleLed.ino
/*
  Blink without Delay
 
  Turns on and off a light emitting diode (LED) connected to a digital pin,
  without using the delay() function. This means that other code can run at the
  same time without being interrupted by the LED code.
 
  The circuit:
  - Use the onboard LED.
  - Note: Most Arduinos have an on-board LED you can control. On the UNO, MEGA
    and ZERO it is attached to digital pin 13, on MKR1000 on pin 6. LED_BUILTIN
    is set to the correct LED pin independent of which board is used.
    If you want to know what pin the on-board LED is connected to on your
    Arduino model, check the Technical Specs of your board at:
    https://www.arduino.cc/en/Main/Products
 
  created 2005
  by David A. Mellis
  modified 8 Feb 2010
  by Paul Stoffregen
  modified 11 Nov 2013
  by Scott Fitzgerald
  modified 9 Jan 2017
  by Arturo Guadalupi
 
  This example code is in the public domain.
 
  https://www.arduino.cc/en/Tutorial/BuiltInExamples/BlinkWithoutDelay
*/
 
// constants won't change. Used here to set a pin number:
const int ledPin = PA5;  // the number of the LED pin OR PA_5
 
// Variables will change:
int ledState = LOW;  // ledState used to set the LED
 
// Generally, you should use "unsigned long" for variables that hold time
// The value will quickly become too large for an int to store
unsigned long previousMillis = 0;  // will store last time LED was updated
 
// constants won't change:
const long interval = 1000;  // interval at which to blink (milliseconds)
 
void setup() {
  // set the digital pin as output:
  pinMode(ledPin, OUTPUT);
}
 
void loop() {
  // here is where you'd put code that needs to be running all the time.
 
  // check to see if it's time to blink the LED; that is, if the difference
  // between the current time and last time you blinked the LED is bigger than
  // the interval at which you want to blink the LED.
  unsigned long currentMillis = millis();
 
  if (currentMillis - previousMillis >= interval) {
    // save the last time you blinked the LED
    previousMillis = currentMillis;
 
    // if the LED is off turn it on and vice-versa:
    if (ledState == LOW) {
      ledState = HIGH;
    } else {
      ledState = LOW;
    }
 
    // set the LED with the ledState of the variable:
    digitalWrite(ledPin, ledState);
  }
}

A SUIVRE

Debuter avec le STM32 144 NUCLEO-F429ZI

-1-Dans l IDE arduino version 2.x.x, inserer les deux lignes suivantes :

  http://dan.drown.org/stm32duino/package_STM32duino_index.json
  https://github.com/stm32duino/BoardManagerFiles/raw/main/package_stmicroelectronics_index.json

-2- Dans le gestionaire de carte installer toutes les cartes STM32

-3- Dans “Outils” –> “Carte” choisir “STM32 MCU Based Board” et “Nucleo 144”

-4- Dans l'option “Board part number” choisir ; “Nucleo F429ZI”

-5- On peut pour tester la carte , envoyer le programme exemple : “RGB_LED_TLC59731” ou le programme “Blink”

comment_programmer_et_deboguer_le_stm32_a_l_aide_de_l_ardui._led.pdf

Debuter avec Un STM32 144 NUCLEO-L4P5ZG

Carte Pour l'instant … non comparible IDE arduino

Suivez la séquence ci-dessous pour configurer la carte Nucleo-144 et lancer la démonstration application (pour l'emplacement des composants, reportez-vous à la Figure 4 : Disposition du dessus de la carte STM32 Nucleo-144).

  1. -. Vérifiez la position du cavalier sur la carte : JP1 (PWR-EXT) OFF (voir Section 5.5.1 : Entrée d'alimentation de ST-LINK/V2-1 USB connecteur pour plus de détails) JP6 (source d'alimentation) côté STLK (pour plus de détails, voir le tableau 7 : cavalier lié à l'alimentation) JP5 (IDD) ON (pour plus de détails, voir Section 5.8 : JP5 (IDD))CN4 ON sélectionné (pour plus de détails, voir Tableau 4 : états CN4 des cavaliers).
  2. -. Pour l'identification correcte des interfaces de l'appareil à partir du PC hôte et avant connectant la carte, installez le pilote Nucleo USB disponible sur le Site Web www.st.com/stm32nucleo.
  3. -. Pour alimenter la carte, connectez la carte STM32 Nucleo-144 à un PC avec un port USB de type A. au câble Micro-B’ via le connecteur USB CN1 sur le ST-LINK. En conséquence, le les LED vertes LD6 (PWR) et LD4 (COM) s'allument et la LED rouge LD3 clignote.
  4. -. Appuyez sur le bouton B1 (bouton gauche).
  5. -. Observez que la fréquence de clignotement des trois LED LD1 à LD3 change, en cliquant sur sur le bouton B1.
  6. -. La démonstration du logiciel et les nombreux exemples de logiciels, qui permettent à l'utilisateur de utiliser les fonctions Nucleo, sont disponibles sur la page Web www.st.com/stm32nucleo.
  7. -. Développez une application en utilisant les exemples disponibles.

Flipper zero

/home/chanteri/www/fablab37110/data/pages/start/stm32.txt · Dernière modification : 2024/01/23 10:49 de gerardadmin