Unstable experimental version of the Mbed interface

Fork of Sumo_v2 by Luiz Fernando Nobre

Files at this revision

API Documentation at this revision

Comitter:
lfsantarelli
Date:
Sat Apr 13 01:00:26 2013 +0000
Child:
1:b11f1623539d
Commit message:
.

Changed in this revision

Config.h Show annotated file Show diff for this revision Revisions of this file
RadioIn.lib Show annotated file Show diff for this revision Revisions of this file
Servo.lib Show annotated file Show diff for this revision Revisions of this file
main.cpp Show annotated file Show diff for this revision Revisions of this file
mbed.bld Show annotated file Show diff for this revision Revisions of this file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Config.h	Sat Apr 13 01:00:26 2013 +0000
@@ -0,0 +1,51 @@
+//Pino de Entrada do Switch
+#define pswitch p24
+
+//Pinos das saidas analogicas para SaberTooth
+#define psaber1 p26
+#define psaber2 p25
+
+//Pinos dos sensores de linha
+#define plFL p29
+#define plFR p30
+#define plRL p28
+#define plRR p27
+
+//Pinos dos sensores de distancia
+#define pd1 p20
+#define pd2 p19
+#define pd3 p18
+#define pd4 p17
+#define pd5 p16
+
+//Comunicacao serial
+Serial pc(USBTX,USBRX);
+
+//Saida dos LEDs
+DigitalOut led1(LED1);
+DigitalOut led2(LED2);
+DigitalOut led3(LED3);
+DigitalOut led4(LED4);
+
+//Entrada do Switch
+DigitalIn sSWITCH(pswitch);
+
+//Entradas dos sensores de linha
+DigitalIn slFL(plFL);
+DigitalIn slFR(plFR);
+DigitalIn slRL(plRL);
+DigitalIn slRR(plRR);
+
+//Entradas dos sensores de distancia
+DigitalIn sd1(pd1);
+DigitalIn sd2(pd2);
+DigitalIn sd3(pd3);
+DigitalIn sd4(pd4);
+DigitalIn sd5(pd5); 
+
+//Saidas analogicas para SaberTooth
+PwmOut saber1(psaber1);
+PwmOut saber2(psaber2);
+
+//Entrada de radio
+RadioIn radio;
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/RadioIn.lib	Sat Apr 13 01:00:26 2013 +0000
@@ -0,0 +1,1 @@
+http://mbed.org/users/lfsantarelli/code/RadioIn/#0c22ced44247
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Servo.lib	Sat Apr 13 01:00:26 2013 +0000
@@ -0,0 +1,1 @@
+http://mbed.org/users/simon/code/Servo/#36b69a7ced07
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Sat Apr 13 01:00:26 2013 +0000
@@ -0,0 +1,43 @@
+#include "Servo.h"
+#include "mbed.h"
+#include "RadioIn.h"
+#include "Config.h"
+
+void Drive(float m_esq, float m_dir){ // Valores de -1 a 1 em cada motor
+saber1.write((m_esq/2)+0.5);
+saber2.write((m_esq/2)+0.5);
+}
+
+void DriveRC(){
+            float trim=0; // Trim para casar o 0 da sabertooth com o PWM do Mbed
+            radio.Update();
+            saber1.write((radio.chan1+1)/2+trim);
+            saber2.write((radio.chan2+1)/2+trim);
+}
+
+
+float ReadRadio(int chan){  // Retorna o valor do canal entre -1 e 1
+radio.Update();
+if (chan==1){return radio.chan1;}
+if (chan==2){return radio.chan2;}
+if (chan==3){return radio.chan3;}
+else return 0;
+}
+
+
+// Melhor usar o V-Tail Mixer e fazer o mix via hardware
+void DriveMixedRC(){            
+            radio.Update();
+            saber1.write(((radio.chan1+radio.chan2)+1)/2);
+            saber2.write(((radio.chan1-radio.chan2)+1)/2);
+}
+
+int main()
+{
+saber1.period_us(5);
+saber2.period_us(5);
+radio.Init();
+while(1){
+         DriveMixedRC();
+        }
+}
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mbed.bld	Sat Apr 13 01:00:26 2013 +0000
@@ -0,0 +1,1 @@
+http://mbed.org/users/mbed_official/code/mbed/builds/5e5da4a5990b
\ No newline at end of file