![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
TP_presa
Dependencies: SRF08 Servo mbed
main.cpp
- Committer:
- Remi95
- Date:
- 2017-05-31
- Revision:
- 3:0b19b5b7c3a4
- Parent:
- 2:6d12c2d70f19
- Child:
- 4:aafb0016ed84
File content as of revision 3:0b19b5b7c3a4:
#include "mbed.h" char Adress = 128; //char Vit =50; //Address: 130 //Command : 0 //Data: 64 //Checksum: 66 //Checksum Putc((address + 0 + speed) & 127); Serial sbt(p9, p10); // tx, rx DigitalOut myled1(LED1); DigitalOut myled2(LED2); DigitalOut myled3(LED3); DigitalOut myled4(LED4); DigitalOut S2 (p11); int iCoefVirage=0.44; void Led (bool l1,bool l2,bool l3,bool l4){ //Fonction pour aider au debug avec les led myled1=l1; myled2=l2; myled3=l3; myled4=l4; } void emiss(char Code, char Vit){ sbt.putc(Adress); sbt.putc(Code); sbt.putc(Vit); sbt.putc((Adress+Code+Vit) & 127); } void forward(char Vit) { emiss(0,Vit); emiss(4,Vit); } void myVirageGauche (char Vit , char Ang){ emiss(1,Vit); emiss(4,Vit); wait((Ang*iCoefVirage)/Vit); //Le coeficient 0.5 est a réler en fonction de la batterie et de la voiture. emiss(1,0); emiss(4,0); } void myVirageDroite (char Vit , char Ang){ emiss(0,Vit); emiss(5,Vit); wait((Ang*iCoefVirage)/Vit); emiss(1,0); emiss(4,0); } void avancer(char Vit) { int i=0; for(i; i<Vit ; i=i+(Vit/5));{ emiss(0,i); emiss(4,i); wait(0.1); } } void arreter(char Vit){ int i=Vit; for(i ; i>0;i=i-(Vit/5)){ emiss(0,i); emiss(4,i); wait(0.1);} emiss(0,0); emiss(4,0); } void arret_urgence(void) { emiss(0,0); emiss(4,0); } void reculer(char Vit) { for(int i =0; i<Vit;i=i+5){ emiss(1,i); emiss(5,i); wait(0.1);} } void tourner_droite(char Vit) { emiss(0,Vit); emiss(5,Vit); wait(0.125); emiss(0,0); emiss(5,0); } void tourner_gauche(char Vit) { emiss(1,Vit); emiss(4,Vit); wait(0.125); emiss(1,0); emiss(4,0); } void demi_tour_droite(char Vit) { myVirageDroite(Vit,180); } void demi_tour_gauche(char Vit) { myVirageGauche(Vit,180); } int main (){ while (1){ Led (1,1,1,0); S2=0; wait(1); demi_tour_droite(100); Led (1,1,0,0); wait(1); demi_tour_gauche(70); } }