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: mbed
main.cpp
- Committer:
- mazdo25
- Date:
- 2019-03-03
- Revision:
- 1:813f4b17ae65
- Parent:
- 0:f45212966fb1
- Child:
- 3:01b5e80d842d
File content as of revision 1:813f4b17ae65:
#define PI 3.141
#include "math.h"
#include "mbed.h"
#include "QEI.h"
#include "Encoder.h"
#include "P.h"
#include "Wheel.h"
#include "Robot.h"
#include "lineSensor.h"
//blue D8
//Green D9
//Red D5
Ticker sampler;
DigitalOut enable(PA_13);
DigitalOut led(PA_5);
Encoder* LE = new Encoder(PB_10,PB_4);
Encoder* RE = new Encoder(PB_3,PB_5);
Wheel* leftWheel = new Wheel(LE,PC_8,PA_9, PA_14);
Wheel* rightWheel = new Wheel(RE,PC_6,PA_8, PA_7);
Robot rbt(leftWheel, rightWheel);
//an array of lineSensor pointers params: lineSensor(PinName emitter Pin, PinName reciever Pin)
lineSensor* sensorArray[6] = {new lineSensor(D11,A0),new lineSensor(D7,A1),new lineSensor(D6,A2),new lineSensor(D5,A3),new lineSensor(D4,A4),new lineSensor(D3,A5)};
int i = 0;
void sensorReadings(void)
{
sensorArray[i]->takeReading();
if (sensorArray[i]->returnLineVoltage() >= 1.5f)
{
led.write(0);
} else { led.write(1);}
i++;
if (i == 6) {i=0;}
}
int main() {
enable.write(1);
leftWheel->init(1);
rightWheel->init(0);
sampler.attach(callback(sensorReadings),0.1);
while(1){}
}