CE201 Embedded : 2022-23 / Mbed 2 deprecated Car

Dependencies:   mbed

Committer:
iainsc0574
Date:
Thu Feb 16 14:08:34 2017 +0000
Revision:
0:6bf5faf294b7
Child:
1:832c213480a8
code for frame work and addressing

Who changed what in which revision?

UserRevisionLine numberNew contents of line
iainsc0574 0:6bf5faf294b7 1 #include "mbed.h"
iainsc0574 0:6bf5faf294b7 2
iainsc0574 0:6bf5faf294b7 3
iainsc0574 0:6bf5faf294b7 4 #define MAX 0x0A
iainsc0574 0:6bf5faf294b7 5 DigitalOut led_1(LED1); //program running.
iainsc0574 0:6bf5faf294b7 6 DigitalOut led_2(LED2); //sensors operating.
iainsc0574 0:6bf5faf294b7 7 DigitalOut led_3(LED3); //is moving.
iainsc0574 0:6bf5faf294b7 8 DigitalOut led_4(LED4); //is complete.
iainsc0574 0:6bf5faf294b7 9 DigitalOut Bit1(p25);
iainsc0574 0:6bf5faf294b7 10 DigitalOut Bit2(p24);
iainsc0574 0:6bf5faf294b7 11 DigitalOut Bit3(p23);
iainsc0574 0:6bf5faf294b7 12
iainsc0574 0:6bf5faf294b7 13 int rawUS_data[5]={0,0,0,0,0}; //raw data{chan1,chan2,chan3,chan4,chan5}
iainsc0574 0:6bf5faf294b7 14 int US1_mean[MAX]={0,0,0,0,0,0,0,0,0,0};
iainsc0574 0:6bf5faf294b7 15 int US2_mean[MAX]={0,0,0,0,0,0,0,0,0,0};
iainsc0574 0:6bf5faf294b7 16 int US3_mean[MAX]={0,0,0,0,0,0,0,0,0,0};
iainsc0574 0:6bf5faf294b7 17 int US4_mean[MAX]={0,0,0,0,0,0,0,0,0,0};
iainsc0574 0:6bf5faf294b7 18 int US5_mean[MAX]={0,0,0,0,0,0,0,0,0,0};
iainsc0574 0:6bf5faf294b7 19
iainsc0574 0:6bf5faf294b7 20 void setActiveUS(int chan);
iainsc0574 0:6bf5faf294b7 21 int getPing(void);
iainsc0574 0:6bf5faf294b7 22
iainsc0574 0:6bf5faf294b7 23 int main() {
iainsc0574 0:6bf5faf294b7 24 int iCount = 0;
iainsc0574 0:6bf5faf294b7 25 int measured = 0;
iainsc0574 0:6bf5faf294b7 26 while(iCount <= 5){
iainsc0574 0:6bf5faf294b7 27 setActiveUS(iCount);
iainsc0574 0:6bf5faf294b7 28 measured = getPing();
iainsc0574 0:6bf5faf294b7 29 rawUS_data[iCount] = measured;
iainsc0574 0:6bf5faf294b7 30 }
iainsc0574 0:6bf5faf294b7 31 US1_mean[0]=rawUS_data[0];
iainsc0574 0:6bf5faf294b7 32 US2_mean[0]=rawUS_data[1];
iainsc0574 0:6bf5faf294b7 33 US3_mean[0]=rawUS_data[2];
iainsc0574 0:6bf5faf294b7 34 US4_mean[0]=rawUS_data[3];
iainsc0574 0:6bf5faf294b7 35 US5_mean[0]=rawUS_data[4];
iainsc0574 0:6bf5faf294b7 36
iainsc0574 0:6bf5faf294b7 37
iainsc0574 0:6bf5faf294b7 38 }
iainsc0574 0:6bf5faf294b7 39
iainsc0574 0:6bf5faf294b7 40 void setActiveUS(int chan){
iainsc0574 0:6bf5faf294b7 41 switch(chan){
iainsc0574 0:6bf5faf294b7 42 case 0:
iainsc0574 0:6bf5faf294b7 43 //ultrasonic 1
iainsc0574 0:6bf5faf294b7 44 break;
iainsc0574 0:6bf5faf294b7 45
iainsc0574 0:6bf5faf294b7 46 case 1:
iainsc0574 0:6bf5faf294b7 47 //ultrasonic 2
iainsc0574 0:6bf5faf294b7 48 break;
iainsc0574 0:6bf5faf294b7 49
iainsc0574 0:6bf5faf294b7 50 case 2:
iainsc0574 0:6bf5faf294b7 51 //ultrasonic 3
iainsc0574 0:6bf5faf294b7 52 break;
iainsc0574 0:6bf5faf294b7 53
iainsc0574 0:6bf5faf294b7 54 case 3:
iainsc0574 0:6bf5faf294b7 55 //ultrasonic 4
iainsc0574 0:6bf5faf294b7 56 break;
iainsc0574 0:6bf5faf294b7 57
iainsc0574 0:6bf5faf294b7 58 case 4:
iainsc0574 0:6bf5faf294b7 59 //ultrasonic 5
iainsc0574 0:6bf5faf294b7 60 break;
iainsc0574 0:6bf5faf294b7 61
iainsc0574 0:6bf5faf294b7 62 }
iainsc0574 0:6bf5faf294b7 63 }
iainsc0574 0:6bf5faf294b7 64
iainsc0574 0:6bf5faf294b7 65 int getPing(void){
iainsc0574 0:6bf5faf294b7 66 int result=0;
iainsc0574 0:6bf5faf294b7 67 //write ultrasonic code
iainsc0574 0:6bf5faf294b7 68 //return measured value
iainsc0574 0:6bf5faf294b7 69
iainsc0574 0:6bf5faf294b7 70
iainsc0574 0:6bf5faf294b7 71 return result;
iainsc0574 0:6bf5faf294b7 72 }