Majordhome V1.0

Dependencies:   MD25 TextLCD mbed HTU21D PixyLibrary VCNL40x0

Committer:
johnylafleur
Date:
Mon Mar 30 16:47:21 2015 +0000
Revision:
0:11ba3658cd5e
Child:
1:38ebbd3ed083
Majord'home V1.0 Moteur+lcd+Capteurarret+BoutonArret

Who changed what in which revision?

UserRevisionLine numberNew contents of line
johnylafleur 0:11ba3658cd5e 1 #include "mbed.h"
johnylafleur 0:11ba3658cd5e 2 #include "MD25.h"
johnylafleur 0:11ba3658cd5e 3 #include "mbed.h"
johnylafleur 0:11ba3658cd5e 4 #include "TextLCD.h"
johnylafleur 0:11ba3658cd5e 5 //100kHz clock, addr B0, reg 0=speedl, 1=speedr (0 (Full Reverse) 128 (Stop) 255 (Full Forward). 15=mode (set to 0 default)
johnylafleur 0:11ba3658cd5e 6
johnylafleur 0:11ba3658cd5e 7 MD25 i2c(PB_9, PB_8); //Dont forget the 2.5 k pullup on both wires when USB is not connected
johnylafleur 0:11ba3658cd5e 8 TextLCD lcd(D2, D3, D4, D5, D6, D7,TextLCD::LCD20x4); // rs, e, d4-d7
johnylafleur 0:11ba3658cd5e 9 //*** DEBUG CONSOLE PARAMETERS ***//
johnylafleur 0:11ba3658cd5e 10
johnylafleur 0:11ba3658cd5e 11 DigitalIn bouton (USER_BUTTON);
johnylafleur 0:11ba3658cd5e 12 DigitalIn cap_arret(PA_9);
johnylafleur 0:11ba3658cd5e 13
johnylafleur 0:11ba3658cd5e 14
johnylafleur 0:11ba3658cd5e 15 int main() {
johnylafleur 0:11ba3658cd5e 16 int flag=0;
johnylafleur 0:11ba3658cd5e 17 bouton.mode (PullUp);
johnylafleur 0:11ba3658cd5e 18
johnylafleur 0:11ba3658cd5e 19 Serial debug(USBTX,USBRX);
johnylafleur 0:11ba3658cd5e 20 debug.format(8,Serial::None,1);
johnylafleur 0:11ba3658cd5e 21 debug.baud(115200);
johnylafleur 0:11ba3658cd5e 22 i2c.setMode(0); // MODE 0, 0=marche arriere 128=stop 255=marche arriere vmax
johnylafleur 0:11ba3658cd5e 23 i2c.setCommand(32); // 0x20 reset encoders
johnylafleur 0:11ba3658cd5e 24 i2c.setCommand(50); // 0X32 Disable time out
johnylafleur 0:11ba3658cd5e 25 //i2c.setCommand(48); // 0X32 Disable speed regulation
johnylafleur 0:11ba3658cd5e 26 lcd.printf("Majord'home ON!\n");
johnylafleur 0:11ba3658cd5e 27 // while(PB_1==1){
johnylafleur 0:11ba3658cd5e 28 i2c.setSpeedRegisters(0,0);
johnylafleur 0:11ba3658cd5e 29
johnylafleur 0:11ba3658cd5e 30 //i2c.setCommand(32); // 0x20 reset encoders
johnylafleur 0:11ba3658cd5e 31
johnylafleur 0:11ba3658cd5e 32 //lcd.printf("Majord'home OFF!\n");
johnylafleur 0:11ba3658cd5e 33
johnylafleur 0:11ba3658cd5e 34
johnylafleur 0:11ba3658cd5e 35 //}
johnylafleur 0:11ba3658cd5e 36 while(flag==0) {
johnylafleur 0:11ba3658cd5e 37 cap_arret.read();
johnylafleur 0:11ba3658cd5e 38 if(cap_arret==0){
johnylafleur 0:11ba3658cd5e 39 i2c.stopMotors();
johnylafleur 0:11ba3658cd5e 40 lcd.printf("Arret ON");
johnylafleur 0:11ba3658cd5e 41 lcd.locate(0,0);
johnylafleur 0:11ba3658cd5e 42 }
johnylafleur 0:11ba3658cd5e 43 else if(bouton==0){
johnylafleur 0:11ba3658cd5e 44 i2c.stopMotors();
johnylafleur 0:11ba3658cd5e 45 lcd.printf("Arret ON");
johnylafleur 0:11ba3658cd5e 46 lcd.locate(0,0);
johnylafleur 0:11ba3658cd5e 47 flag=1;
johnylafleur 0:11ba3658cd5e 48 }
johnylafleur 0:11ba3658cd5e 49 else{
johnylafleur 0:11ba3658cd5e 50 i2c.setSpeedRegisters(60,60);
johnylafleur 0:11ba3658cd5e 51 lcd.printf("Arret OFF");
johnylafleur 0:11ba3658cd5e 52 lcd.locate(0,0);
johnylafleur 0:11ba3658cd5e 53 }
johnylafleur 0:11ba3658cd5e 54
johnylafleur 0:11ba3658cd5e 55
johnylafleur 0:11ba3658cd5e 56 }
johnylafleur 0:11ba3658cd5e 57 }