reciever code
Embed:
(wiki syntax)
Show/hide line numbers
main.cpp
00001 00002 #include "mbed.h" 00003 Serial pc(USBTX, USBRX); 00004 Serial device(p28, p27); 00005 DigitalOut m11(p21); 00006 DigitalOut m12(p22); 00007 DigitalOut relay_stepper(p23); 00008 DigitalOut stepper1(p24); 00009 DigitalOut stepper2(p23); 00010 DigitalOut laser(p25); 00011 int frame1,frame2,frame3,temp; 00012 00013 int main() {laser=0; 00014 char temp=NULL; 00015 stepper1=0; 00016 stepper2=0; 00017 00018 device.baud(2400); 00019 00020 while (1) { 00021 00022 //RF Receive Code 00023 if (device.readable()) { 00024 temp=device.getc(); 00025 00026 frame1=temp%4; 00027 temp=temp/4; 00028 frame2=temp%4; 00029 00030 frame3=temp/4; 00031 //pc.printf("\n\r%d %d %d %d %d",temp,frame1,frame2,frame3,x); 00032 00033 switch(frame1) 00034 { 00035 case 0: //left 00036 m11=0; // right motor on(p21) 00037 m12=1; // left motor off(p22) 00038 break; 00039 00040 case 1: // straight 00041 m11=0; // right motor on(p21) 00042 m12=0; // left motor on(p22) 00043 break; 00044 00045 case 2: // right 00046 m11=1; // right motor off(p21) 00047 m12=0; // left motor on(p22) 00048 break; 00049 } 00050 switch(frame2) 00051 { 00052 case 0: //left 00053 relay_stepper=!relay_stepper 00054 break; 00055 case 1: // right 00056 break; 00057 case 2: 00058 stepper1=!stepper1; 00059 stepper2=!stepper2; 00060 break; 00061 00062 } 00063 switch(frame3) 00064 { 00065 case 0: //left 00066 m11=1; 00067 m12=1; 00068 laser=0; 00069 break; 00070 00071 case 1: // right 00072 m11=1; 00073 m12=1; 00074 laser=1; 00075 break; 00076 00077 case 2: 00078 laser=0; 00079 break; 00080 00081 case 3: 00082 laser=1; 00083 break; 00084 } 00085 } 00086 pc.printf("\n\n\r%d %d %d",frame1,frame2,frame3); 00087 } 00088 }
Generated on Wed Jul 20 2022 06:44:36 by
1.7.2