STM32 : Leçon 2 Blink leds avec la bibliothéque CMSIS

STM32 : Leçon 2 Blink leds avec la bibliothéque CMSIS


Dans ce deuxième tutoriel nous allons faire clignoter les Leds de la STM32F407VG avec la bibliothèque CMSIS.
CMSIS sont des méthodes niveau bas qui ont été mise au point par le vendeur (comme STMicrolelectronics) pour permettre d’accéder aux matériels des dispositifs ARM Cortex.
Voici les pins auxquels les leds sont connectées :








STM32 : Leçon 1 création d’un projet avec Keil µVision

STM32 : Leçon 1 création d’un projet avec Keil µVision

Dans la première après l’installation, nous commençons notre première leçon avec Keil.
Cette leçon décrit la création et la configuration d'un projet dans Keil UVision.
Ceci décrit comment connecter les bibliothèques CMSIS et StdPeriph. Nous allons utiliser tout au long des tutoriels STM, le STM32F407VG et l’outil de développement Keil µVision V4.74.






Lien de téléchargement de la première leçon de STM32:  https://www.4shared.com/folder/h0d6TSMK/Leon1_creation_dun_projet_STM3.html



SYSTEME DE SURVEILLANCE D'INCENDIE

SYSTEME DE SURVEILLANCE A DISTANCE D’INCENDIE
Cet exemple montre l’exemple d’un système automatisé, unifie et centralisé qui permet de suivre la température et l’humidité et qui peut détecter la fumée dans tous les zones de production, en visualisant les états en temps réel sur PC en les mémorisant dans une base de données.
Matériel requis
       ·      Carte Arduino MEGA
       ·      Capteur de température LM35
       ·      Capteur Gaz
       ·      Leds
       ·      LCD
       ·      Fils de raccordement
       ·      Shield Wifi
Simulation


Routage









Vous trouverez dans ce lien les fichiers nécessaire pour ce projet: 
https://www.4shared.com/folder/y8BzJRas/PROJET_INCENDIE.html


QUADRICOPTER

QUADRICOPTER
Cet exemple montre la réalisation d’un quadricopter tout en mettant en œuvre des compétences diverses : électronique , mécanique , informatique , physique et mathématiques.C’est un projet ambitieux, choisi en raison de sa complexité mais aussi de ses enjeux actuels.
Matériel requis
      ·      ATMEGA 328P
      ·      Module MPU6050 Gyro/Accélèromtre
      ·      Batterie Lipo 12V 5000mAh
      ·      4 Moteurs Brushless 1000kV
      ·      4 helices pour moteurs brushless
      ·      RC Turningy 9X
      ·      Fils de raccordement

Simulation
 Voici la simulation de la carte de commande de notre quadricopter.


Routage




Pour plus d'information et pour avoir le code veuillez me contacter par email : belghith.bessem@gmail.com





INSTALLATION XAMPP

INSTALLATION XAMPP POUR WINDOWS

Dans ce tutoriel nous allons apprendre à installer et configurer XAMPP.
XAMPP est un ensemble de logiciels libres. Le nom est un acronyme venant des initiales de tous les composants de cette suite. XAMPP réunit donc le serveur Web Apache, la base de données relationnelle et système d'exploitation MySQL ou MariaDB ainsi que les langages scripts Perl et PHP. L'initiale X représente tous les systèmes d'exploitation possibles, à savoir Linux, Windows et Mac OS X. Cette suite de logiciels est une boite à outils très pratiques pour exploiter WikiMedia, Joomla, Drupal ou encore Moodle sous Windows.
Etapes

1
Sélectionnez le site de téléchargement. Dans votre navigateur internet, inscrivez dans le moteur de recherche https://www.apachefriends.org/index.html.

2
Allez sur le lien de téléchargement. Une fois que vous êtes sur le site, cliquez sur le lien qui correspond à votre système d'exploitation pour télécharger XAMPP.

3
Téléchargez le logiciel. Appuyez sur le bouton pour votre système d'exploitation, puis attendez qu'il se télécharge sur votre ordinateur.


4
Lancez l'installation de XAMPP. Doublecliquez sur l'icône sur votre bureau pour que l'installation commence.


5
Suivez les recommandations. Une fois que le logiciel commence à s'installer, suivez les instructions et acceptez les différentes demandes du logiciel pour réaliser une installation standard de ce dernier. Il vous sera possible par la suite, si vous le souhaitez, de modifier les paramètres à votre guise.


6
Fermez la boite de dialogue. Une fois que l'installation est terminée, cliquez sur Finish pour fermer la fenêtre d'installation de XAMPP.


7
Ouvrez XAMPP Control Panel. Double cliquez sur l'icône XAMPP Control Panel pour ouvrir la fenêtre de contrôle de XAMPP.


8
Lancez Apache et MySQL. Dans le panneau de contrôle de XAMPP, appuyez sur Start pour Apache et MySQL pour les activer. Vous pouvez aussi lancer les autres éléments.


9
Contrôlez l'installation d'Apache. Appuyez sur le bouton Admin concernant Apache pour vérifier la bonne installation du logiciel.

10
Examinez l'installation de MySQL. Sélectionnez le bouton Admin de ce dernier pour vous assurer qu'il est bien installé.

 Site web référence: https://fr.wikihow.com/installer-XAMPP-pour-Windows

ARDUINO: Supervision Centrale électrique d’un Aéroport

Supervision Centrale électrique d’un Aéroport

Cet exemple montre l’exemple d’un système de supervision d’une centrale d’un aéroport. Le projet consiste à mettre en place un serveur web afin de visualiser en temps réel la température dans une centrale d’un aéroport. Si la température ou le gaz dépasse la limite une alerte s’affiche sur notre pas web et allume la led rouge sinon une led verte est allumée. La communication peut être établie via Wifi ou via Ethernet. La température est affichée en permanence sur un LCD.
Matériel requis
      ·      Carte Arduino Yun
      ·      Capteur de température LM35
      ·      Capteur Gaz
      ·      Leds
      ·      LCD
      ·      Fils de raccordement
Simulation


Routage
Code
/ *
      DIY Electronics par Bessem BELGHITH 
      Supervision centrale d'un aéroport 
 
* / 

//adresse 192.168.0.224/arduino/test
#include <Bridge.h>
#include <YunServer.h>
#include <YunClient.h>
#include <Process.h>
#include <LiquidCrystal.h>

// Listen on default port 5555, the webserver on the Yun
// will forward there all the HTTP requests for us.
YunServer server;

// declaration des pins
//pins led
int ledvert=8;
int ledrouge=9;
// PINS LCD
// initialize the library with the numbers of the interface pins
LiquidCrystal lcd(7, 6, 5, 4, 3, 2);
int val;
const int tempPin = A1;
//float analogInPin = A5;
int sensorValue = 0;        // value read from the sensor
int cel;
String msg1,msg2;
//constantes
char c;
int b=0;

int GASdigital=10;
void setup() {
 lcd.clear();
   // Affichage Message d'entrée " projet SUPERVISION CENTRALE"
  lcd.clear();
  lcd.begin(16, 2);
  lcd.setCursor(0,0);
  lcd.print("PROJET CONTROL   ");
  lcd.setCursor(0,1);
  lcd.print("   CENTRALE   ");
  delay(2500);
  lcd.clear();
  
  Serial.begin(9600);

  // Bridge startup
  pinMode(13,OUTPUT);
 digitalWrite(13, LOW);
  Bridge.begin();
  digitalWrite(13, HIGH);

  // Listen for incoming connection only from localhost
  // (no one from the external network could connect)
 // server.listenOnLocalhost();
  server.begin();
 
 pinMode(tempPin,INPUT);
  pinMode(GASdigital,INPUT);
// pinMode(analogInPin,INPUT);
 pinMode(ledvert,OUTPUT);
  pinMode(ledrouge,OUTPUT);
 pinMode(A0, OUTPUT);
  pinMode(A2, OUTPUT);
  digitalWrite(A0, HIGH);
  digitalWrite(A2, LOW);
  digitalWrite(ledrouge, LOW);  
    digitalWrite(ledvert, LOW);
   // analogReference(DEFAULT);
}

void loop() {

val = analogRead(tempPin);
float mv = ( val/1024.0)*5000;
float cel = mv/10;
delay(500);
 if (cel > 21)
    {
   digitalWrite(ledvert, LOW);   // sets the LED on
   digitalWrite(ledrouge, HIGH);   // sets the LED on
    msg1="ALERTE CHAUFFAGE CENTRALE";
  
   }
   else{
     digitalWrite(ledvert, HIGH);   // sets the LED on
   digitalWrite(ledrouge, LOW);   // sets the LED on
   msg1="";
     }
// Affichage Message
lcd.clear();
lcd.setCursor(0,0);
lcd.print("TEMPERATURE = ");
lcd.setCursor(3,1);
lcd.print(cel);
lcd.print("*C");
//lcd.setCursor(0,1);
//lcd.print("GAZ = ");
//lcd.print(sensorValue);

//sensorValue = analogRead(analogInPin);


  // Get clients coming from server
  YunClient client = server.accept();

  // There is a new client?
  if (client) {
    // Process request
  
  /////////////////////////////////////////////////////////////////
          // Enable HTML
          client.println("TEST PAGE HTML ");
          client.println("BY BESSEM BELGHITH");
          client.println();

           //Show UI
           client.println("<HTML>");
           client.println("<HEAD>");
           client.println("<meta name='apple-mobile-web-app-capable' content='yes' />");
           client.println("<meta name='apple-mobile-web-app-status-bar-style' content='black-translucent' />");
           client.println("<link rel='stylesheet' type='text/css' href='http://randomnerdtutorials.com/ethernetcss.css' />");
           client.println("<TITLE>Projet Supervision Centrale Aeroport de Monastir </TITLE>");
           client.println("</HEAD>");
           client.println("<BODY>");
           client.println("<H1>PROJET SUPERVISION CENTRALE AEROPORT MONASTIR</H1>");
           client.println("<hr />");
           client.println("<br />"); 
           client.print("<H2>TEMPERATURE EN °C:  <H2>");
           client.print(cel);
           client.print("<br>");
            client.println("<br />"); 
           client.print(msg1);
            client.print("<br>");
            client.println("<br />"); 
           client.print(msg2);
         
           client.print("<br>");
           client.println("<br />");
           client.println("<p>Réalisé par Bessem BELGHITH</p>"); 
           client.println("<br />");
           client.println("</BODY>");
           client.println("</HTML>");
           client.print("<head>");
           client.print("<meta http-equiv=\"refresh\" content=\"1\">");
           client.print("</head>");
  
    int value = client.parseInt();
    Serial.println(value); 
   

    // Close connection and free resources.
    client.stop();
  }
  delay(50); // Poll every 50ms
if (digitalRead(GASdigital) == HIGH)
{
  msg2="ALERTE GAZ DANS LA CENTRALE";
}
 else{
   msg2="";
 }
}