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
Fork of RCControlOOP by
Mousr.cpp
00001 #include "Mousr.h" 00002 00003 //Mousr::Mousr() : m1a(p24), m1b(p23), m2a(p22), m2b(p21) 00004 Mousr::Mousr() : mstby(p6), m_a1(p24), m_a2(p25), mpwma(p26), m_b1(p23), m_b2(p22), mpwmb(p21) 00005 { 00006 rotateSlowSpeed = 0.05; 00007 rotateSpeed = 0.1; 00008 rotateFastSpeed = 0.2; 00009 00010 // Parameters for Flip 00011 flip90Wait = 0.1; 00012 flip180Wait = 0.2; 00013 mpwma = 1; 00014 mpwmb = 1; 00015 mstby = 1; 00016 } 00017 00018 void Mousr::stop() 00019 { 00020 m_a1 = 0; m_a2 = 0; m_b1 = 0; m_b2 = 0; return; 00021 } 00022 00023 void Mousr::righttire(float speed) 00024 { 00025 if (speed > 0) 00026 { 00027 m_a1 = speed; m_a2 = 0; return; 00028 } 00029 else if (speed == 0) 00030 { 00031 m_a1 = 0; m_a2 = 0; return; 00032 } 00033 else 00034 { 00035 m_a1 = 0; m_a2 = abs(speed); return; 00036 } 00037 } 00038 00039 void Mousr::lefttire(float speed) 00040 { 00041 if (speed > 0) 00042 { 00043 m_b1 = speed; m_b2 = 0; return; 00044 } 00045 else if (speed == 0) 00046 { 00047 m_b1 = 0; m_b2 = 0; return; 00048 } 00049 else 00050 { 00051 m_b1 = 0; m_b2 = abs(speed); return; 00052 } 00053 } 00054 00055 void Mousr::left(float speed) 00056 { 00057 m_a1 = speed; m_a2 = 0; m_b1 = 0; m_b2 = speed; return; 00058 } 00059 00060 void Mousr::right(float speed) 00061 { 00062 m_a1 = 0; m_a2 = speed; m_b1 = speed; m_b2 = 0; return; 00063 } 00064 00065 void Mousr::left90() 00066 { 00067 left(rotateFastSpeed); 00068 wait(flip90Wait); 00069 stop(); 00070 return; 00071 } 00072 00073 void Mousr::left180() 00074 { 00075 left(rotateFastSpeed); 00076 wait(flip180Wait); 00077 stop(); 00078 return; 00079 } 00080 00081 void Mousr::right90() 00082 { 00083 right(rotateFastSpeed); 00084 wait(flip90Wait); 00085 stop(); 00086 return; 00087 } 00088 00089 void Mousr::right180() 00090 { 00091 right(rotateFastSpeed); 00092 wait(flip180Wait); 00093 stop(); 00094 return; 00095 }
Generated on Wed Jul 20 2022 17:06:22 by
