Annexe: Programme Du Microcontrôleur
Annexe: Programme Du Microcontrôleur
void loop() {
Programme du microcontrleur :
//////////////////////// test des boutons
#include <LiquidCrystal.h>
Testbouton();
LiquidCrystal lcd(12,11, 5, 4, 3, 2);
float periode=500;
//////////////////////// les modes de
float alpha=0; fonctionement
float alpha2=0; switch (mode) {
float valeur=0; //////////////////////// etat initiale
float Ton=0; case 0: {
int mode=0; if(digitalRead(STOP)==1){
int STOP=13; sensdirect();
int sensdirectbtn=7; }
int sensinversebtn=6; else{
int plus=15; mode=0;
int moins=14; lcd.clear();
void setup() { stopmoteur();}}
// put your setup code here, to run once: break;
lcd.begin(16, 4); //////////////////////// mode direct
pinMode(9,OUTPUT); case 1: {
pinMode(8,OUTPUT); if(digitalRead(STOP)==1){
pinMode(6,INPUT); sensdirect(); }
pinMode(7,INPUT); else{ mode=0;
pinMode(14,INPUT); Ton=0;
pinMode(15,INPUT); lcd.clear();
digitalWrite(9,LOW); stopmoteur();}}
digitalWrite(8,LOW); break;
Serial.begin(9600);}
//////////////////////// mode direct digitalWrite(9, HIGH);
sensinverse(); delay(periode-Ton);
} Testbouton();
else{ }
mode=0; }
stopmoteur();}} lcd.clear();
}} lcd.print("Sens inverse");
lcd.clear(); alpha=alpha2/10;
valeur=alphabtn(valeur); lcd.print(alpha);
alpha=alpha2/10; delay(Ton);
lcd.setCursor(1,2); delay(periode-Ton);
lcd.setCursor(7, 2); }}
lcd.print(alpha);
void stopmoteur(){
digitalWrite(8,LOW);
digitalWrite(9,LOW);
lcd.setCursor(0,0);
lcd.print("Stop");
delay(1000);
if(digitalRead(moins)==0){
if(a>0){a=a-1;}
if(digitalRead(plus)==0){
if(a<10){a=a+1;}
return a;
void Testbouton(){
if(digitalRead(sensdirectbtn)==0){
delay(200);
mode=1;
if(digitalRead(sensinversebtn)==0){
delay(200);
mode=2;