Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: SRF08 Servo mbed
CAR.cpp
00001 #include "mbed.h" 00002 #include "CAR.h" 00003 00004 00005 #define Adress 128 00006 DigitalOut myled1(LED1); 00007 DigitalOut myled2(LED2); 00008 DigitalOut myled3(LED3); 00009 DigitalOut myled4(LED4); 00010 //DigitalOut S2 (p11); 00011 00012 //Serial bt(p13,p14); 00013 Serial sbt(p9, p10); // tx, rx 00014 //AnalogIn btri (p28); 00015 00016 //char action; 00017 int iCoefVirage=0.44; 00018 //string sprintf; 00019 00020 CAR::CAR(PinName TX, PinName RX) { 00021 Serial sbt (TX ,RX ); 00022 } 00023 //CAR::~CAR() { 00024 00025 //} 00026 void CAR::Led (bool l1,bool l2,bool l3,bool l4) //Fonction pour aider au debug avec les led 00027 { 00028 myled1=l1; 00029 myled2=l2; 00030 myled3=l3; 00031 myled4=l4; 00032 } 00033 00034 void CAR::emiss(char Code, char Vit) 00035 { 00036 sbt.putc(Adress); 00037 sbt.putc(Code); 00038 sbt.putc(Vit); 00039 sbt.putc((Adress+Code+Vit) & 127); 00040 } 00041 void CAR::myVirageGauche (char Vit , char Ang) 00042 { 00043 emiss(1,Vit); 00044 emiss(4,Vit); 00045 wait(0.792); //Remplacer par (Ang*iCoefVirage)/Vit 00046 emiss(1,0); 00047 emiss(4,0); 00048 } 00049 void CAR::myVirageDroite (char Vit , char Ang) 00050 { 00051 emiss(0,Vit); 00052 emiss(5,Vit); 00053 wait(0.792); 00054 emiss(0,0); 00055 emiss(5,0); 00056 } 00057 void CAR::avancer(char Vit) 00058 { 00059 emiss(0,Vit); 00060 emiss(4,Vit); 00061 } 00062 void CAR::reculer(char Vit) 00063 { 00064 emiss(1,Vit); 00065 emiss(5,Vit); 00066 } 00067 void CAR::arreter(void) 00068 { 00069 emiss(0,0); 00070 emiss(4,0); 00071 } 00072 void CAR::tourner_droite(char Vit) 00073 { 00074 emiss(0,Vit); 00075 emiss(5,Vit); 00076 wait(0.250); 00077 emiss(0,0); 00078 emiss(5,0); 00079 } 00080 void CAR::tourner_gauche(char Vit) 00081 { 00082 emiss(1,Vit); 00083 emiss(4,Vit); 00084 wait(0.250); //0.125 00085 emiss(1,0); 00086 emiss(4,0); 00087 } 00088 void CAR::demi_tour_droite(char Vit) 00089 { 00090 myVirageDroite(Vit,180); 00091 } 00092 void CAR::demi_tour_gauche(char Vit) 00093 { 00094 myVirageGauche(Vit,180); 00095 } 00096 00097 00098
Generated on Wed Jul 20 2022 12:27:19 by
1.7.2