Changed directory structure and added doxygen doku

This commit is contained in:
Fenoglio 2018-11-12 13:52:47 +01:00
parent 335f21c27a
commit e7af8d57d3
264 changed files with 9158 additions and 181 deletions

View file

@ -1,181 +0,0 @@
#include <CodeRacer.h>
/*
Video: https://www.youtube.com/watch?v=oCMOYS71NIU
Based on Neil Kolban example for IDF: https://github.com/nkolban/esp32-snippets/blob/master/cpp_utils/tests/BLE%20Tests/SampleNotify.cpp
Ported to Arduino ESP32 by Evandro Copercini
Create a BLE server that, once we receive a connection, will send periodic notifications.
The service advertises itself as: 6E400001-B5A3-F393-E0A9-E50E24DCCA9E
Has a characteristic of: 6E400002-B5A3-F393-E0A9-E50E24DCCA9E - used for receiving data with "WRITE"
Has a characteristic of: 6E400003-B5A3-F393-E0A9-E50E24DCCA9E - used to send data with "NOTIFY"
The design of creating the BLE server is:
1. Create a BLE Server
2. Create a BLE Service
3. Create a BLE Characteristic on the Service
4. Create a BLE Descriptor on the characteristic
5. Start the service.
6. Start advertising.
In this example rxValue is the data received (only accessible inside that function).
And txValue is the data to be sent, in this example just a byte incremented every second.
*/
#include <BLEDevice.h>
#include <BLEServer.h>
#include <BLEUtils.h>
#include <BLE2902.h>
#define LED_VORWAERTS 26 // Pin an dem die VORWÄRTS LED angeschlossen ist. 'GPIO' muss man weglassen -> also z.B. nicht GPIO88 sondern nur 88.
#define LED_STOP 25 // Pin an dem die STOP LED angeschlossen ist. 'GPIO' muss man weglassen -> also z.B. nicht GPIO88 sondern nur 88.
#define LED_LINKS 27 // Pin an dem die LINKS LED angeschlossen ist. 'GPIO' muss man weglassen -> also z.B. nicht GPIO88 sondern nur 88.
#define LED_RECHTS 33
BLECharacteristic *pCharacteristic;
bool deviceConnected = false;
uint8_t txValue = 0;
char CRstatus = 0;
// See the following for generating UUIDs:
// https://www.uuidgenerator.net/
#define SERVICE_UUID "6E400001-B5A3-F393-E0A9-E50E24DCCA9E" // UART service UUID
#define CHARACTERISTIC_UUID_RX "6E400002-B5A3-F393-E0A9-E50E24DCCA9E"
#define CHARACTERISTIC_UUID_TX "6E400003-B5A3-F393-E0A9-E50E24DCCA9E"
class MyServerCallbacks: public BLEServerCallbacks {
void onConnect(BLEServer* pServer) {
deviceConnected = true;
};
void onDisconnect(BLEServer* pServer) {
deviceConnected = false;
}
};
class MyCallbacks: public BLECharacteristicCallbacks {
void onWrite(BLECharacteristic *pCharacteristic) {
std::string rxValue = pCharacteristic->getValue();
if (rxValue.length() > 0) {
Serial.println("*********");
Serial.print("Received Value: ");
for (int i = 0; i < rxValue.length(); i++)
{
CRstatus = rxValue[i];
Serial.print(CRstatus);
};
Serial.println();
Serial.println("*********");
}
}
};
CodeRacer coderacer;
void setup() {
Serial.begin(115200);
/*
pinMode(LED_VORWAERTS, OUTPUT); // LED Vorwärts ist ein Ausgang
pinMode(LED_STOP, OUTPUT); // LED Stop ist ein Ausgang
pinMode(LED_LINKS, OUTPUT); // LED Links ist ein Ausgang
pinMode(LED_RECHTS, OUTPUT); // LED Rechts ist ein Ausgang
// alle LEDS aus
digitalWrite(LED_VORWAERTS, LOW);
digitalWrite(LED_STOP, LOW);
digitalWrite(LED_LINKS, LOW);
digitalWrite(LED_RECHTS, LOW);
*/
// CodeRacer initialisieren
coderacer.begin();
coderacer.servo_mitte();
coderacer.motor_einstellungen(255,255,200,200);
// Create the BLE Device
BLEDevice::init("UART Service");
// Create the BLE Server
BLEServer *pServer = BLEDevice::createServer();
pServer->setCallbacks(new MyServerCallbacks());
// Create the BLE Service
BLEService *pService = pServer->createService(SERVICE_UUID);
// Create a BLE Characteristic
pCharacteristic = pService->createCharacteristic(
CHARACTERISTIC_UUID_TX,
BLECharacteristic::PROPERTY_NOTIFY
);
pCharacteristic->addDescriptor(new BLE2902());
BLECharacteristic *pCharacteristic = pService->createCharacteristic(
CHARACTERISTIC_UUID_RX,
BLECharacteristic::PROPERTY_WRITE
);
pCharacteristic->setCallbacks(new MyCallbacks());
// Start the service
pService->start();
// Start advertising
pServer->getAdvertising()->start();
Serial.println("Waiting a client connection to notify...");
}
void loop() {
switch (CRstatus) {
case '0': //
Serial.println("STOP");
//digitalWrite(LED_STOP, HIGH);
coderacer.anhalten();
break;
case '1':
Serial.println("VOR");
//digitalWrite(LED_VORWAERTS, HIGH);
coderacer.vorwaerts();
break;
case '2':
Serial.println("LINKS");
//digitalWrite(LED_LINKS, HIGH);
coderacer.links_dreh();
break;
case '3':
Serial.println("RECHTS");
//digitalWrite(LED_RECHTS, HIGH);
coderacer.rechts_dreh();
break;
case '4':
Serial.println("ZURUECK"); // hier gibt es keine LED
coderacer.rueckwaerts();
break;
//default:
//Serial.println("Kommando unbekannt");
}
//if (deviceConnected) {
// Serial.printf("*** Sent Value: %d ***\n", txValue);
// pCharacteristic->setValue(&txValue, 1);
// pCharacteristic->notify();
// txValue++;
//}
delay(100);
/*
digitalWrite(LED_VORWAERTS, LOW);
digitalWrite(LED_STOP, LOW);
digitalWrite(LED_LINKS, LOW);
digitalWrite(LED_RECHTS, LOW);
*/
}

View file

Before

Width:  |  Height:  |  Size: 412 KiB

After

Width:  |  Height:  |  Size: 412 KiB

View file

Before

Width:  |  Height:  |  Size: 65 KiB

After

Width:  |  Height:  |  Size: 65 KiB

View file

Before

Width:  |  Height:  |  Size: 5.7 KiB

After

Width:  |  Height:  |  Size: 5.7 KiB

View file

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 14 KiB

View file

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 14 KiB

View file

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 14 KiB

View file

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 14 KiB

View file

Before

Width:  |  Height:  |  Size: 139 KiB

After

Width:  |  Height:  |  Size: 139 KiB

View file

Before

Width:  |  Height:  |  Size: 435 KiB

After

Width:  |  Height:  |  Size: 435 KiB

View file

Before

Width:  |  Height:  |  Size: 134 KiB

After

Width:  |  Height:  |  Size: 134 KiB

View file

Before

Width:  |  Height:  |  Size: 101 KiB

After

Width:  |  Height:  |  Size: 101 KiB

View file

Before

Width:  |  Height:  |  Size: 355 KiB

After

Width:  |  Height:  |  Size: 355 KiB

View file

Before

Width:  |  Height:  |  Size: 248 KiB

After

Width:  |  Height:  |  Size: 248 KiB

View file

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB

View file

Before

Width:  |  Height:  |  Size: 656 KiB

After

Width:  |  Height:  |  Size: 656 KiB

View file

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 25 KiB

View file

Before

Width:  |  Height:  |  Size: 182 KiB

After

Width:  |  Height:  |  Size: 182 KiB

View file

Before

Width:  |  Height:  |  Size: 303 KiB

After

Width:  |  Height:  |  Size: 303 KiB

View file

Before

Width:  |  Height:  |  Size: 153 KiB

After

Width:  |  Height:  |  Size: 153 KiB

View file

Before

Width:  |  Height:  |  Size: 97 KiB

After

Width:  |  Height:  |  Size: 97 KiB

View file

Before

Width:  |  Height:  |  Size: 76 KiB

After

Width:  |  Height:  |  Size: 76 KiB

View file

Before

Width:  |  Height:  |  Size: 286 KiB

After

Width:  |  Height:  |  Size: 286 KiB

View file

Before

Width:  |  Height:  |  Size: 561 KiB

After

Width:  |  Height:  |  Size: 561 KiB

View file

Before

Width:  |  Height:  |  Size: 415 KiB

After

Width:  |  Height:  |  Size: 415 KiB

View file

Before

Width:  |  Height:  |  Size: 415 KiB

After

Width:  |  Height:  |  Size: 415 KiB

View file

Before

Width:  |  Height:  |  Size: 415 KiB

After

Width:  |  Height:  |  Size: 415 KiB

View file

Before

Width:  |  Height:  |  Size: 416 KiB

After

Width:  |  Height:  |  Size: 416 KiB

View file

Before

Width:  |  Height:  |  Size: 164 KiB

After

Width:  |  Height:  |  Size: 164 KiB

View file

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB

View file

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

View file

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

View file

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

View file

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 13 KiB

View file

Before

Width:  |  Height:  |  Size: 175 KiB

After

Width:  |  Height:  |  Size: 175 KiB

View file

Before

Width:  |  Height:  |  Size: 181 KiB

After

Width:  |  Height:  |  Size: 181 KiB

View file

Before

Width:  |  Height:  |  Size: 168 KiB

After

Width:  |  Height:  |  Size: 168 KiB

View file

Before

Width:  |  Height:  |  Size: 245 KiB

After

Width:  |  Height:  |  Size: 245 KiB

View file

Before

Width:  |  Height:  |  Size: 122 KiB

After

Width:  |  Height:  |  Size: 122 KiB

View file

Before

Width:  |  Height:  |  Size: 155 KiB

After

Width:  |  Height:  |  Size: 155 KiB

View file

Before

Width:  |  Height:  |  Size: 133 KiB

After

Width:  |  Height:  |  Size: 133 KiB

View file

Before

Width:  |  Height:  |  Size: 97 KiB

After

Width:  |  Height:  |  Size: 97 KiB

BIN
Doku/Doxygen/html/bc_s.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 676 B

BIN
Doku/Doxygen/html/bdwn.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 147 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 132 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 248 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

View file

@ -0,0 +1,157 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Arduino {code}racer API: Getters</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../jquery.js"></script>
<script type="text/javascript" src="../../dynsections.js"></script>
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../resize.js"></script>
<script type="text/javascript" src="../../navtreedata.js"></script>
<script type="text/javascript" src="../../navtree.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
</script>
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../search/searchdata.js"></script>
<script type="text/javascript" src="../../search/search.js"></script>
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="../../coderace_logo.JPG"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Arduino {code}racer API
</div>
<div id="projectbrief">... better know the details.</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</script>
<script type="text/javascript" src="../../menudata.js"></script>
<script type="text/javascript" src="../../menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('../../',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('d0/d0a/group__lowerleveldrivesgetters.html','../../');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">Getters<div class="ingroups"><a class="el" href="../../d6/d98/group__lowerleveldrives.html">Lower level drives methods and getters</a></div></div> </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga09359a792e3299b1c20f6b99939ea7b3"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d0a/group__lowerleveldrivesgetters.html#ga09359a792e3299b1c20f6b99939ea7b3">CodeRacer::drive_right_speed</a> ()</td></tr>
<tr class="memdesc:ga09359a792e3299b1c20f6b99939ea7b3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the setting for the speed of the right side drive. <a href="#ga09359a792e3299b1c20f6b99939ea7b3">More...</a><br /></td></tr>
<tr class="separator:ga09359a792e3299b1c20f6b99939ea7b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga804a45724f3788fd2fdb9631c66d1377"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d0a/group__lowerleveldrivesgetters.html#ga804a45724f3788fd2fdb9631c66d1377">CodeRacer::drive_left_speed</a> ()</td></tr>
<tr class="memdesc:ga804a45724f3788fd2fdb9631c66d1377"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the setting for the speed of the left side drive. <a href="#ga804a45724f3788fd2fdb9631c66d1377">More...</a><br /></td></tr>
<tr class="separator:ga804a45724f3788fd2fdb9631c66d1377"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<h2 class="groupheader">Function Documentation</h2>
<a id="ga09359a792e3299b1c20f6b99939ea7b3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga09359a792e3299b1c20f6b99939ea7b3">&#9670;&nbsp;</a></span>drive_right_speed()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t CodeRacer::drive_right_speed </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the setting for the speed of the right side drive. </p>
<dl class="section return"><dt>Returns</dt><dd>Speed of the right side drive </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html#l00994">994</a> of file <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html">CodeRacer.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00994"></a><span class="lineno"> 994</span>&#160; {</div><div class="line"><a name="l00995"></a><span class="lineno"> 995</span>&#160; <span class="keywordflow">return</span> _drive_right_speed;</div><div class="line"><a name="l00996"></a><span class="lineno"> 996</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="ga804a45724f3788fd2fdb9631c66d1377"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga804a45724f3788fd2fdb9631c66d1377">&#9670;&nbsp;</a></span>drive_left_speed()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t CodeRacer::drive_left_speed </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the setting for the speed of the left side drive. </p>
<dl class="section return"><dt>Returns</dt><dd>Speed of the left side drive </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html#l01001">1001</a> of file <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html">CodeRacer.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>&#160; {</div><div class="line"><a name="l01002"></a><span class="lineno"> 1002</span>&#160; <span class="keywordflow">return</span>(_drive_left_speed);</div><div class="line"><a name="l01003"></a><span class="lineno"> 1003</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
</ul>
</div>
</body>
</html>

View file

@ -0,0 +1,5 @@
var group__lowerleveldrivesgetters =
[
[ "drive_right_speed", "d0/d0a/group__lowerleveldrivesgetters.html#ga09359a792e3299b1c20f6b99939ea7b3", null ],
[ "drive_left_speed", "d0/d0a/group__lowerleveldrivesgetters.html#ga804a45724f3788fd2fdb9631c66d1377", null ]
];

View file

@ -0,0 +1,3 @@
<map id="Getters" name="Getters">
<area shape="rect" id="node1" href="$d6/d98/group__lowerleveldrives.html" title="Lower level drives\l methods and getters" alt="" coords="5,5,151,47"/>
</map>

View file

@ -0,0 +1 @@
27209861500fd81db6dccdd2984f5d4a

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

View file

@ -0,0 +1,496 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Arduino {code}racer API: Methods</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../jquery.js"></script>
<script type="text/javascript" src="../../dynsections.js"></script>
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../resize.js"></script>
<script type="text/javascript" src="../../navtreedata.js"></script>
<script type="text/javascript" src="../../navtree.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
</script>
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../search/searchdata.js"></script>
<script type="text/javascript" src="../../search/search.js"></script>
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="../../coderace_logo.JPG"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Arduino {code}racer API
</div>
<div id="projectbrief">... better know the details.</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</script>
<script type="text/javascript" src="../../menudata.js"></script>
<script type="text/javascript" src="../../menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('../../',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('d1/d8a/group__lowerleveldrivesmeths.html','../../');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">Methods<div class="ingroups"><a class="el" href="../../d6/d98/group__lowerleveldrives.html">Lower level drives methods and getters</a></div></div> </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga5812df751da5b480240ccd633c515b83"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d8a/group__lowerleveldrivesmeths.html#ga5812df751da5b480240ccd633c515b83">CodeRacer::drives_settings</a> (uint8_t drive_left_speed, uint8_t drive_right_speed, unsigned long turn_left_ms, unsigned long turn_right_ms)</td></tr>
<tr class="memdesc:ga5812df751da5b480240ccd633c515b83"><td class="mdescLeft">&#160;</td><td class="mdescRight">Overwrites some drive settings. This will replace the defaults set by the values in the header file. <a href="#ga5812df751da5b480240ccd633c515b83">More...</a><br /></td></tr>
<tr class="separator:ga5812df751da5b480240ccd633c515b83"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga61ed9e0415a62a290cc5c59a0f740304"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d8a/group__lowerleveldrivesmeths.html#ga61ed9e0415a62a290cc5c59a0f740304">CodeRacer::set_drives_stop_left_right</a> ()</td></tr>
<tr class="memdesc:ga61ed9e0415a62a290cc5c59a0f740304"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stopps both drives. <a href="#ga61ed9e0415a62a290cc5c59a0f740304">More...</a><br /></td></tr>
<tr class="separator:ga61ed9e0415a62a290cc5c59a0f740304"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga802d2646d9cc0d766e1ac799c7917fa8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d8a/group__lowerleveldrivesmeths.html#ga802d2646d9cc0d766e1ac799c7917fa8">CodeRacer::set_drives_states_left_right</a> (drivestate stateleft, drivestate stateright)</td></tr>
<tr class="memdesc:ga802d2646d9cc0d766e1ac799c7917fa8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets both of the drives to a specified drivestate (DRIVESTOP, DRIVEFRWD, DRIVEBACK) <a href="#ga802d2646d9cc0d766e1ac799c7917fa8">More...</a><br /></td></tr>
<tr class="separator:ga802d2646d9cc0d766e1ac799c7917fa8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1eeb3cb47503c3011562f9c42828fab9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d8a/group__lowerleveldrivesmeths.html#ga1eeb3cb47503c3011562f9c42828fab9">CodeRacer::set_drive_left_state</a> (drivestate state)</td></tr>
<tr class="memdesc:ga1eeb3cb47503c3011562f9c42828fab9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the left side drive to the specified drivestate (DRIVESTOP, DRIVEFRWD, DRIVEBACK) <a href="#ga1eeb3cb47503c3011562f9c42828fab9">More...</a><br /></td></tr>
<tr class="separator:ga1eeb3cb47503c3011562f9c42828fab9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1b34ec9cee1f21cd15db310167a2faa5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d8a/group__lowerleveldrivesmeths.html#ga1b34ec9cee1f21cd15db310167a2faa5">CodeRacer::set_drive_right_state</a> (drivestate state)</td></tr>
<tr class="memdesc:ga1b34ec9cee1f21cd15db310167a2faa5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the right side drive to the specified drivestate (DRIVESTOP, DRIVEFRWD, DRIVEBACK) <a href="#ga1b34ec9cee1f21cd15db310167a2faa5">More...</a><br /></td></tr>
<tr class="separator:ga1b34ec9cee1f21cd15db310167a2faa5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3b69cf4a718c842fbe758d3f4267214e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d8a/group__lowerleveldrivesmeths.html#ga3b69cf4a718c842fbe758d3f4267214e">CodeRacer::set_drive_state</a> (drivestate state, uint8_t frwdpin, uint8_t backpin)</td></tr>
<tr class="memdesc:ga3b69cf4a718c842fbe758d3f4267214e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the specified drivestate for the drive connected to the sepecified pins (DRIVESTOP, DRIVEFRWD, DRIVEBACK) <a href="#ga3b69cf4a718c842fbe758d3f4267214e">More...</a><br /></td></tr>
<tr class="separator:ga3b69cf4a718c842fbe758d3f4267214e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3d3ffb41783d34589e33cf61fed46c70"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d8a/group__lowerleveldrivesmeths.html#ga3d3ffb41783d34589e33cf61fed46c70">CodeRacer::set_drives_speed_left_right</a> (uint8_t speedleft, uint8_t speedright)</td></tr>
<tr class="memdesc:ga3d3ffb41783d34589e33cf61fed46c70"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the speed for both of the drives. <a href="#ga3d3ffb41783d34589e33cf61fed46c70">More...</a><br /></td></tr>
<tr class="separator:ga3d3ffb41783d34589e33cf61fed46c70"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1ee3da20ec98a821ab97ced070974861"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d8a/group__lowerleveldrivesmeths.html#ga1ee3da20ec98a821ab97ced070974861">CodeRacer::set_drive_left_speed</a> (uint8_t speed)</td></tr>
<tr class="memdesc:ga1ee3da20ec98a821ab97ced070974861"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the speed for the left side drive. <a href="#ga1ee3da20ec98a821ab97ced070974861">More...</a><br /></td></tr>
<tr class="separator:ga1ee3da20ec98a821ab97ced070974861"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf8805d0d620a2fb78c576f36a2c81073"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d8a/group__lowerleveldrivesmeths.html#gaf8805d0d620a2fb78c576f36a2c81073">CodeRacer::set_drive_right_speed</a> (uint8_t speed)</td></tr>
<tr class="memdesc:gaf8805d0d620a2fb78c576f36a2c81073"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the speed for the right side drive. <a href="#gaf8805d0d620a2fb78c576f36a2c81073">More...</a><br /></td></tr>
<tr class="separator:gaf8805d0d620a2fb78c576f36a2c81073"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5d67c84606d5b39996a99fcd6e7eb314"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d8a/group__lowerleveldrivesmeths.html#ga5d67c84606d5b39996a99fcd6e7eb314">CodeRacer::set_drive_speed</a> (uint8_t speed, uint8_t enablepin)</td></tr>
<tr class="memdesc:ga5d67c84606d5b39996a99fcd6e7eb314"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the speed for the drive of the enable pin connected to the specified pin. <a href="#ga5d67c84606d5b39996a99fcd6e7eb314">More...</a><br /></td></tr>
<tr class="separator:ga5d67c84606d5b39996a99fcd6e7eb314"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<h2 class="groupheader">Function Documentation</h2>
<a id="ga5812df751da5b480240ccd633c515b83"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga5812df751da5b480240ccd633c515b83">&#9670;&nbsp;</a></span>drives_settings()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void CodeRacer::drives_settings </td>
<td>(</td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>drive_left_speed</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>drive_right_speed</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned long&#160;</td>
<td class="paramname"><em>turn_left_for_ms</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned long&#160;</td>
<td class="paramname"><em>turn_right_for_ms</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Overwrites some drive settings. This will replace the defaults set by the values in the header file. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">drive_left_speed</td><td>Speed of the left side drive </td></tr>
<tr><td class="paramname">drive_right_speed</td><td>Speed of the right side drive </td></tr>
<tr><td class="paramname">turn_left_for_ms</td><td>Time in ms the racer will turn to the left around its center if turn_left() is called </td></tr>
<tr><td class="paramname">turn_right_for_ms</td><td>Time in ms the racer will turn to the right around its center if turn_right() is called </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>nothing </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html#l00878">878</a> of file <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html">CodeRacer.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00879"></a><span class="lineno"> 879</span>&#160;{</div><div class="line"><a name="l00880"></a><span class="lineno"> 880</span>&#160; _drive_left_speed = drive_left_speed;</div><div class="line"><a name="l00881"></a><span class="lineno"> 881</span>&#160; _drive_right_speed = drive_right_speed;</div><div class="line"><a name="l00882"></a><span class="lineno"> 882</span>&#160; _turn_left_for_ms = turn_left_for_ms;</div><div class="line"><a name="l00883"></a><span class="lineno"> 883</span>&#160; _turn_right_for_ms = turn_right_for_ms;</div><div class="line"><a name="l00884"></a><span class="lineno"> 884</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="ga61ed9e0415a62a290cc5c59a0f740304"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga61ed9e0415a62a290cc5c59a0f740304">&#9670;&nbsp;</a></span>set_drives_stop_left_right()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void CodeRacer::set_drives_stop_left_right </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Stopps both drives. </p>
<dl class="section return"><dt>Returns</dt><dd>nothing </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html#l00889">889</a> of file <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html">CodeRacer.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00889"></a><span class="lineno"> 889</span>&#160; {</div><div class="line"><a name="l00890"></a><span class="lineno"> 890</span>&#160; set_drive_left_state(DRIVESTOP);</div><div class="line"><a name="l00891"></a><span class="lineno"> 891</span>&#160; set_drive_right_state(DRIVESTOP);</div><div class="line"><a name="l00892"></a><span class="lineno"> 892</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="ga802d2646d9cc0d766e1ac799c7917fa8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga802d2646d9cc0d766e1ac799c7917fa8">&#9670;&nbsp;</a></span>set_drives_states_left_right()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void CodeRacer::set_drives_states_left_right </td>
<td>(</td>
<td class="paramtype">drivestate&#160;</td>
<td class="paramname"><em>stateleft</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">drivestate&#160;</td>
<td class="paramname"><em>stateright</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets both of the drives to a specified drivestate (DRIVESTOP, DRIVEFRWD, DRIVEBACK) </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">stateleft</td><td>drivestate to set for the left side drive </td></tr>
<tr><td class="paramname">stateright</td><td>drivestate to set for the right side drive </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>nothing </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html#l00899">899</a> of file <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html">CodeRacer.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00899"></a><span class="lineno"> 899</span>&#160; {</div><div class="line"><a name="l00900"></a><span class="lineno"> 900</span>&#160; set_drive_left_state(stateleft);</div><div class="line"><a name="l00901"></a><span class="lineno"> 901</span>&#160; set_drive_right_state(stateright);</div><div class="line"><a name="l00902"></a><span class="lineno"> 902</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="ga1eeb3cb47503c3011562f9c42828fab9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga1eeb3cb47503c3011562f9c42828fab9">&#9670;&nbsp;</a></span>set_drive_left_state()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void CodeRacer::set_drive_left_state </td>
<td>(</td>
<td class="paramtype">drivestate&#160;</td>
<td class="paramname"><em>state</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets the left side drive to the specified drivestate (DRIVESTOP, DRIVEFRWD, DRIVEBACK) </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">state</td><td>drivestate to set for the left side drive </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>nothing </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html#l00908">908</a> of file <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html">CodeRacer.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00908"></a><span class="lineno"> 908</span>&#160; {</div><div class="line"><a name="l00909"></a><span class="lineno"> 909</span>&#160; set_drive_state(state, _drive_left_frwd_pin, _drive_left_back_pin);</div><div class="line"><a name="l00910"></a><span class="lineno"> 910</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="ga1b34ec9cee1f21cd15db310167a2faa5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga1b34ec9cee1f21cd15db310167a2faa5">&#9670;&nbsp;</a></span>set_drive_right_state()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void CodeRacer::set_drive_right_state </td>
<td>(</td>
<td class="paramtype">drivestate&#160;</td>
<td class="paramname"><em>state</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets the right side drive to the specified drivestate (DRIVESTOP, DRIVEFRWD, DRIVEBACK) </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">state</td><td>drivestate to set for the right side drive </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>nothing </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html#l00916">916</a> of file <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html">CodeRacer.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00916"></a><span class="lineno"> 916</span>&#160; {</div><div class="line"><a name="l00917"></a><span class="lineno"> 917</span>&#160; set_drive_state(state, _drive_right_frwd_pin, _drive_right_back_pin);</div><div class="line"><a name="l00918"></a><span class="lineno"> 918</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="ga3b69cf4a718c842fbe758d3f4267214e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga3b69cf4a718c842fbe758d3f4267214e">&#9670;&nbsp;</a></span>set_drive_state()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void CodeRacer::set_drive_state </td>
<td>(</td>
<td class="paramtype">drivestate&#160;</td>
<td class="paramname"><em>state</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>frwdpin</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>backpin</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets the specified drivestate for the drive connected to the sepecified pins (DRIVESTOP, DRIVEFRWD, DRIVEBACK) </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">state</td><td>drivestate to set for the connected drive </td></tr>
<tr><td class="paramname">frwdpin</td><td>Pin the forward signal of the drive device driver is connected at </td></tr>
<tr><td class="paramname">backpin</td><td>Pin the backward signal of the drive device driver is connected at </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>nothing </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html#l00926">926</a> of file <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html">CodeRacer.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00926"></a><span class="lineno"> 926</span>&#160; {</div><div class="line"><a name="l00927"></a><span class="lineno"> 927</span>&#160; <span class="keywordflow">switch</span> (state) {</div><div class="line"><a name="l00928"></a><span class="lineno"> 928</span>&#160; <span class="keywordflow">case</span> DRIVESTOP:</div><div class="line"><a name="l00929"></a><span class="lineno"> 929</span>&#160; digitalWrite(frwdpin, LOW);</div><div class="line"><a name="l00930"></a><span class="lineno"> 930</span>&#160; digitalWrite(backpin, LOW);</div><div class="line"><a name="l00931"></a><span class="lineno"> 931</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00932"></a><span class="lineno"> 932</span>&#160; <span class="keywordflow">case</span> DRIVEFRWD:</div><div class="line"><a name="l00933"></a><span class="lineno"> 933</span>&#160; digitalWrite(frwdpin, HIGH);</div><div class="line"><a name="l00934"></a><span class="lineno"> 934</span>&#160; digitalWrite(backpin, LOW);</div><div class="line"><a name="l00935"></a><span class="lineno"> 935</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00936"></a><span class="lineno"> 936</span>&#160; <span class="keywordflow">case</span> DRIVEBACK:</div><div class="line"><a name="l00937"></a><span class="lineno"> 937</span>&#160; digitalWrite(frwdpin, LOW);</div><div class="line"><a name="l00938"></a><span class="lineno"> 938</span>&#160; digitalWrite(backpin, HIGH);</div><div class="line"><a name="l00939"></a><span class="lineno"> 939</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00940"></a><span class="lineno"> 940</span>&#160; }</div><div class="line"><a name="l00941"></a><span class="lineno"> 941</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="ga3d3ffb41783d34589e33cf61fed46c70"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga3d3ffb41783d34589e33cf61fed46c70">&#9670;&nbsp;</a></span>set_drives_speed_left_right()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void CodeRacer::set_drives_speed_left_right </td>
<td>(</td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>speedleft</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>speedright</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets the speed for both of the drives. </p>
<p>The drive will run with that speed afterwards. The direction of the drive has to be specfied with one of the set_drive_state methods before </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">speedleft</td><td>speed of the left side drive. 0&lt;=speed&lt;=255 </td></tr>
<tr><td class="paramname">speedright</td><td>speed of the right side drive. 0&lt;=speed&lt;=255 </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>nothing </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html#l00950">950</a> of file <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html">CodeRacer.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00950"></a><span class="lineno"> 950</span>&#160; {</div><div class="line"><a name="l00951"></a><span class="lineno"> 951</span>&#160; set_drive_left_speed(speedleft);</div><div class="line"><a name="l00952"></a><span class="lineno"> 952</span>&#160; set_drive_right_speed(speedright);</div><div class="line"><a name="l00953"></a><span class="lineno"> 953</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="ga1ee3da20ec98a821ab97ced070974861"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga1ee3da20ec98a821ab97ced070974861">&#9670;&nbsp;</a></span>set_drive_left_speed()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void CodeRacer::set_drive_left_speed </td>
<td>(</td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>speed</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets the speed for the left side drive. </p>
<p>The drive will run with that speed afterwards. The direction of the drive has to be specfied with one of the set_drive_state methods before </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">speed</td><td>speed of the left side drive. 0&lt;=speed&lt;=255 </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>nothing </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html#l00961">961</a> of file <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html">CodeRacer.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00961"></a><span class="lineno"> 961</span>&#160; {</div><div class="line"><a name="l00962"></a><span class="lineno"> 962</span>&#160; set_drive_speed(speed, _drive_left_enable_pin);</div><div class="line"><a name="l00963"></a><span class="lineno"> 963</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="gaf8805d0d620a2fb78c576f36a2c81073"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaf8805d0d620a2fb78c576f36a2c81073">&#9670;&nbsp;</a></span>set_drive_right_speed()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void CodeRacer::set_drive_right_speed </td>
<td>(</td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>speed</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets the speed for the right side drive. </p>
<p>The drive will run with that speed afterwards. The direction of the drive has to be specfied with one of the set_drive_state methods before </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">speed</td><td>speed of the right side drive. 0&lt;=speed&lt;=255 </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>nothing </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html#l00971">971</a> of file <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html">CodeRacer.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00971"></a><span class="lineno"> 971</span>&#160; {</div><div class="line"><a name="l00972"></a><span class="lineno"> 972</span>&#160; set_drive_speed(speed, _drive_right_enable_pin);</div><div class="line"><a name="l00973"></a><span class="lineno"> 973</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="ga5d67c84606d5b39996a99fcd6e7eb314"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga5d67c84606d5b39996a99fcd6e7eb314">&#9670;&nbsp;</a></span>set_drive_speed()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void CodeRacer::set_drive_speed </td>
<td>(</td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>speed</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>enablepin</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets the speed for the drive of the enable pin connected to the specified pin. </p>
<p>The drive will run with that speed afterwards. The direction of the drive has to be specfied with one of the set_drive_state methods before </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">speed</td><td>speed of the drive. 0&lt;=speed&lt;=255 </td></tr>
<tr><td class="paramname">enablepin</td><td>Pin the drives device driver enable pin is connected at </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>nothing </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html#l00982">982</a> of file <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html">CodeRacer.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00982"></a><span class="lineno"> 982</span>&#160; {</div><div class="line"><a name="l00983"></a><span class="lineno"> 983</span>&#160; _analog_write(enablepin, (<span class="keywordtype">int</span>)speed);</div><div class="line"><a name="l00984"></a><span class="lineno"> 984</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
</ul>
</div>
</body>
</html>

View file

@ -0,0 +1,13 @@
var group__lowerleveldrivesmeths =
[
[ "drives_settings", "d1/d8a/group__lowerleveldrivesmeths.html#ga5812df751da5b480240ccd633c515b83", null ],
[ "set_drives_stop_left_right", "d1/d8a/group__lowerleveldrivesmeths.html#ga61ed9e0415a62a290cc5c59a0f740304", null ],
[ "set_drives_states_left_right", "d1/d8a/group__lowerleveldrivesmeths.html#ga802d2646d9cc0d766e1ac799c7917fa8", null ],
[ "set_drive_left_state", "d1/d8a/group__lowerleveldrivesmeths.html#ga1eeb3cb47503c3011562f9c42828fab9", null ],
[ "set_drive_right_state", "d1/d8a/group__lowerleveldrivesmeths.html#ga1b34ec9cee1f21cd15db310167a2faa5", null ],
[ "set_drive_state", "d1/d8a/group__lowerleveldrivesmeths.html#ga3b69cf4a718c842fbe758d3f4267214e", null ],
[ "set_drives_speed_left_right", "d1/d8a/group__lowerleveldrivesmeths.html#ga3d3ffb41783d34589e33cf61fed46c70", null ],
[ "set_drive_left_speed", "d1/d8a/group__lowerleveldrivesmeths.html#ga1ee3da20ec98a821ab97ced070974861", null ],
[ "set_drive_right_speed", "d1/d8a/group__lowerleveldrivesmeths.html#gaf8805d0d620a2fb78c576f36a2c81073", null ],
[ "set_drive_speed", "d1/d8a/group__lowerleveldrivesmeths.html#ga5d67c84606d5b39996a99fcd6e7eb314", null ]
];

View file

@ -0,0 +1,3 @@
<map id="Methods" name="Methods">
<area shape="rect" id="node1" href="$d6/d98/group__lowerleveldrives.html" title="Lower level drives\l methods and getters" alt="" coords="5,5,151,47"/>
</map>

View file

@ -0,0 +1 @@
f031a65379fe10c49a2f5864707d7064

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

View file

@ -0,0 +1,595 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Arduino {code}racer API: Methods</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../jquery.js"></script>
<script type="text/javascript" src="../../dynsections.js"></script>
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../resize.js"></script>
<script type="text/javascript" src="../../navtreedata.js"></script>
<script type="text/javascript" src="../../navtree.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
</script>
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../search/searchdata.js"></script>
<script type="text/javascript" src="../../search/search.js"></script>
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="../../coderace_logo.JPG"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Arduino {code}racer API
</div>
<div id="projectbrief">... better know the details.</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</script>
<script type="text/javascript" src="../../menudata.js"></script>
<script type="text/javascript" src="../../menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('../../',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('d2/d40/group__higherlevelmeths.html','../../');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">Methods<div class="ingroups"><a class="el" href="../../d9/d80/group__higherlevel.html">Higher level methods, setters and getters</a></div></div> </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga71df7ac5e41ae776a6c786d3dc36f35a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d2/d40/group__higherlevelmeths.html#ga71df7ac5e41ae776a6c786d3dc36f35a">CodeRacer::stop_driving</a> ()</td></tr>
<tr class="memdesc:ga71df7ac5e41ae776a6c786d3dc36f35a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stops the racer and sets status LEDs. <a href="#ga71df7ac5e41ae776a6c786d3dc36f35a">More...</a><br /></td></tr>
<tr class="separator:ga71df7ac5e41ae776a6c786d3dc36f35a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8be6a850099812153dcf5768d7fc8b8c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d2/d40/group__higherlevelmeths.html#ga8be6a850099812153dcf5768d7fc8b8c">CodeRacer::drive_forward</a> ()</td></tr>
<tr class="memdesc:ga8be6a850099812153dcf5768d7fc8b8c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the speed and the directions of both drives so that it will move forward. <a href="#ga8be6a850099812153dcf5768d7fc8b8c">More...</a><br /></td></tr>
<tr class="separator:ga8be6a850099812153dcf5768d7fc8b8c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaae6fc379ec43cbe2cb2f63fbd12dbe0d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d2/d40/group__higherlevelmeths.html#gaae6fc379ec43cbe2cb2f63fbd12dbe0d">CodeRacer::drive_forward</a> (uint8_t left_speed, uint8_t right_speed)</td></tr>
<tr class="memdesc:gaae6fc379ec43cbe2cb2f63fbd12dbe0d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the speed as specified for both drives and the directions of both drives so that it will move forward. <a href="#gaae6fc379ec43cbe2cb2f63fbd12dbe0d">More...</a><br /></td></tr>
<tr class="separator:gaae6fc379ec43cbe2cb2f63fbd12dbe0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga98aa8a5a46f769d59e6c1067c8418cfb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d2/d40/group__higherlevelmeths.html#ga98aa8a5a46f769d59e6c1067c8418cfb">CodeRacer::drive_backward</a> ()</td></tr>
<tr class="memdesc:ga98aa8a5a46f769d59e6c1067c8418cfb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the speed and the directions of both drives so that it will move backward. <a href="#ga98aa8a5a46f769d59e6c1067c8418cfb">More...</a><br /></td></tr>
<tr class="separator:ga98aa8a5a46f769d59e6c1067c8418cfb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6cd8356ac76360b014db6170276b6b30"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d2/d40/group__higherlevelmeths.html#ga6cd8356ac76360b014db6170276b6b30">CodeRacer::drive_backward</a> (uint8_t left_speed, uint8_t right_speed)</td></tr>
<tr class="memdesc:ga6cd8356ac76360b014db6170276b6b30"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the speed as specified for both drives and the directions of both drives so that it will move backward. <a href="#ga6cd8356ac76360b014db6170276b6b30">More...</a><br /></td></tr>
<tr class="separator:ga6cd8356ac76360b014db6170276b6b30"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga86b7caf6ff46e9d1ad90ed507864b175"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d2/d40/group__higherlevelmeths.html#ga86b7caf6ff46e9d1ad90ed507864b175">CodeRacer::turn_left</a> ()</td></tr>
<tr class="memdesc:ga86b7caf6ff46e9d1ad90ed507864b175"><td class="mdescLeft">&#160;</td><td class="mdescRight">Will turn the racer to the left for the internally stroe time in ms and with the internally stored speed. <a href="#ga86b7caf6ff46e9d1ad90ed507864b175">More...</a><br /></td></tr>
<tr class="separator:ga86b7caf6ff46e9d1ad90ed507864b175"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga30e1ec3fbbc206f93ea66dbf91b5fd95"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d2/d40/group__higherlevelmeths.html#ga30e1ec3fbbc206f93ea66dbf91b5fd95">CodeRacer::turn_left</a> (unsigned long turn_for_ms)</td></tr>
<tr class="memdesc:ga30e1ec3fbbc206f93ea66dbf91b5fd95"><td class="mdescLeft">&#160;</td><td class="mdescRight">Will turn the racer to the left for the specified time in ms and with the internally stored speed. <a href="#ga30e1ec3fbbc206f93ea66dbf91b5fd95">More...</a><br /></td></tr>
<tr class="separator:ga30e1ec3fbbc206f93ea66dbf91b5fd95"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae6daa587199e5bf95b1aac675de53b0e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d2/d40/group__higherlevelmeths.html#gae6daa587199e5bf95b1aac675de53b0e">CodeRacer::turn_left</a> (unsigned long turn_for_ms, uint8_t left_speed, uint8_t right_speed)</td></tr>
<tr class="memdesc:gae6daa587199e5bf95b1aac675de53b0e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Will turn the racer to the left for the specified time in ms and with the specified speed. <a href="#gae6daa587199e5bf95b1aac675de53b0e">More...</a><br /></td></tr>
<tr class="separator:gae6daa587199e5bf95b1aac675de53b0e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8969fb2d6e2b5ac44a99197931e6b8da"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d2/d40/group__higherlevelmeths.html#ga8969fb2d6e2b5ac44a99197931e6b8da">CodeRacer::turn_right</a> ()</td></tr>
<tr class="memdesc:ga8969fb2d6e2b5ac44a99197931e6b8da"><td class="mdescLeft">&#160;</td><td class="mdescRight">Will turn the racer to the right for the internally stroe time in ms and with the internally stored speed. <a href="#ga8969fb2d6e2b5ac44a99197931e6b8da">More...</a><br /></td></tr>
<tr class="separator:ga8969fb2d6e2b5ac44a99197931e6b8da"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae1f175aad98d773b0206f483ae0bb4ea"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d2/d40/group__higherlevelmeths.html#gae1f175aad98d773b0206f483ae0bb4ea">CodeRacer::turn_right</a> (unsigned long turn_for_ms)</td></tr>
<tr class="memdesc:gae1f175aad98d773b0206f483ae0bb4ea"><td class="mdescLeft">&#160;</td><td class="mdescRight">Will turn the racer to the right for the specified time in ms and with the internally stored speed. <a href="#gae1f175aad98d773b0206f483ae0bb4ea">More...</a><br /></td></tr>
<tr class="separator:gae1f175aad98d773b0206f483ae0bb4ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad10b3457489cc7e25ffb4d64c539528a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d2/d40/group__higherlevelmeths.html#gad10b3457489cc7e25ffb4d64c539528a">CodeRacer::turn_right</a> (unsigned long turn_for_ms, uint8_t left_speed, uint8_t right_speed)</td></tr>
<tr class="memdesc:gad10b3457489cc7e25ffb4d64c539528a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Will turn the racer to the right for the specified time in ms and with the specified speed. <a href="#gad10b3457489cc7e25ffb4d64c539528a">More...</a><br /></td></tr>
<tr class="separator:gad10b3457489cc7e25ffb4d64c539528a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga128683caea019a89bce06f722ba92556"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d2/d40/group__higherlevelmeths.html#ga128683caea019a89bce06f722ba92556">CodeRacer::start_stop_at_min_distance</a> ()</td></tr>
<tr class="memdesc:ga128683caea019a89bce06f722ba92556"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enables to stopp the racer if during a distance measurement the measured distance is smaller then the internally stored minimal distance. <a href="#ga128683caea019a89bce06f722ba92556">More...</a><br /></td></tr>
<tr class="separator:ga128683caea019a89bce06f722ba92556"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga64bc1b2a8ed5bc3ec5e706fa70a1385d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d2/d40/group__higherlevelmeths.html#ga64bc1b2a8ed5bc3ec5e706fa70a1385d">CodeRacer::start_stop_at_min_distance</a> (unsigned long min_distance_cm)</td></tr>
<tr class="memdesc:ga64bc1b2a8ed5bc3ec5e706fa70a1385d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enables to stopp the racer if during a distance measurement the measured distance is smaller then the specified minimal distance. <a href="#ga64bc1b2a8ed5bc3ec5e706fa70a1385d">More...</a><br /></td></tr>
<tr class="separator:ga64bc1b2a8ed5bc3ec5e706fa70a1385d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac664109241d08b8dc52db5721f394b22"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d2/d40/group__higherlevelmeths.html#gac664109241d08b8dc52db5721f394b22">CodeRacer::stop_stop_at_min_distance</a> ()</td></tr>
<tr class="memdesc:gac664109241d08b8dc52db5721f394b22"><td class="mdescLeft">&#160;</td><td class="mdescRight">Disables to stopp the racer if during a distance measurement the measured distance is smaller then the specified minimal distance. <a href="#gac664109241d08b8dc52db5721f394b22">More...</a><br /></td></tr>
<tr class="separator:gac664109241d08b8dc52db5721f394b22"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga34e2fe2123e76fd844482dfef6c5a9c8"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d2/d40/group__higherlevelmeths.html#ga34e2fe2123e76fd844482dfef6c5a9c8">CodeRacer::start_stop</a> ()</td></tr>
<tr class="memdesc:ga34e2fe2123e76fd844482dfef6c5a9c8"><td class="mdescLeft">&#160;</td><td class="mdescRight">This will return if the codracer is in active mode or not. <a href="#ga34e2fe2123e76fd844482dfef6c5a9c8">More...</a><br /></td></tr>
<tr class="separator:ga34e2fe2123e76fd844482dfef6c5a9c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<h2 class="groupheader">Function Documentation</h2>
<a id="ga71df7ac5e41ae776a6c786d3dc36f35a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga71df7ac5e41ae776a6c786d3dc36f35a">&#9670;&nbsp;</a></span>stop_driving()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void CodeRacer::stop_driving </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Stops the racer and sets status LEDs. </p>
<dl class="section return"><dt>Returns</dt><dd>nothing </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html#l00161">161</a> of file <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html">CodeRacer.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; {</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; _servo_sweep = <span class="keyword">false</span>;</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; _drive = <span class="keyword">false</span>;</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; set_drives_stop_left_right();</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; set_leds_left_stop_frwd_right(LEDOFF, LEDON, LEDOFF, LEDOFF);</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="ga8be6a850099812153dcf5768d7fc8b8c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga8be6a850099812153dcf5768d7fc8b8c">&#9670;&nbsp;</a></span>drive_forward() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void CodeRacer::drive_forward </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets the speed and the directions of both drives so that it will move forward. </p>
<p>The speed is taken from the header file or set by one of the methods defined in the lower level drive methods section </p><dl class="section return"><dt>Returns</dt><dd>nothing </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html#l00173">173</a> of file <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html">CodeRacer.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;{</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; drive_forward(_drive_left_speed, _drive_right_speed);</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;}</div></div><!-- fragment --><div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><img src="../../d2/d40/group__higherlevelmeths_ga8be6a850099812153dcf5768d7fc8b8c_cgraph.png" border="0" usemap="#d2/d40/group__higherlevelmeths_ga8be6a850099812153dcf5768d7fc8b8c_cgraph" alt=""/></div>
</div>
</div>
</div>
<a id="gaae6fc379ec43cbe2cb2f63fbd12dbe0d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaae6fc379ec43cbe2cb2f63fbd12dbe0d">&#9670;&nbsp;</a></span>drive_forward() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void CodeRacer::drive_forward </td>
<td>(</td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>left_speed</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>right_speed</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets the speed as specified for both drives and the directions of both drives so that it will move forward. </p>
<p>The specified speed values for both drives will be stored internaly so next time if you use e.g. drive_forward() exactly the here specified values will be taken. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">left_speed</td><td>speed for the left side drive. 0&lt;=speed&lt;=255 </td></tr>
<tr><td class="paramname">right_speed</td><td>speed for the right side drive. 0&lt;=speed&lt;=255 </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>nothing </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html#l00185">185</a> of file <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html">CodeRacer.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;{</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; set_drives_states_left_right(DRIVEFRWD, DRIVEFRWD);</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; set_drives_speed_left_right(left_speed, right_speed);</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; set_leds_left_stop_frwd_right(LEDOFF, LEDOFF, LEDON, LEDOFF);</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; _drive = <span class="keyword">true</span>;</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; _drive_set_at_ms = millis();</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="ga98aa8a5a46f769d59e6c1067c8418cfb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga98aa8a5a46f769d59e6c1067c8418cfb">&#9670;&nbsp;</a></span>drive_backward() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void CodeRacer::drive_backward </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets the speed and the directions of both drives so that it will move backward. </p>
<p>The speed is taken from the header file or set by one of the methods defined in the lower level drive methods section </p><dl class="section return"><dt>Returns</dt><dd>nothing </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html#l00199">199</a> of file <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html">CodeRacer.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;{</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; drive_backward(_drive_left_speed, _drive_right_speed);</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="ga6cd8356ac76360b014db6170276b6b30"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga6cd8356ac76360b014db6170276b6b30">&#9670;&nbsp;</a></span>drive_backward() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void CodeRacer::drive_backward </td>
<td>(</td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>left_speed</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>right_speed</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets the speed as specified for both drives and the directions of both drives so that it will move backward. </p>
<p>The specified speed values for both drives will be stored internaly so next time if you use e.g. drive_backward() exactly the here specified values will be taken. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">left_speed</td><td>speed for the left side drive. 0&lt;=speed&lt;=255 </td></tr>
<tr><td class="paramname">right_speed</td><td>speed for the right side drive. 0&lt;=speed&lt;=255 </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>nothing </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html#l00211">211</a> of file <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html">CodeRacer.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160;{</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; set_drives_states_left_right(DRIVEBACK, DRIVEBACK);</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; set_drives_speed_left_right(left_speed, right_speed);</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; set_leds_left_stop_frwd_right(LEDOFF, LEDON, LEDON, LEDOFF);</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; _drive = <span class="keyword">true</span>;</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; _drive_set_at_ms = millis();</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="ga86b7caf6ff46e9d1ad90ed507864b175"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga86b7caf6ff46e9d1ad90ed507864b175">&#9670;&nbsp;</a></span>turn_left() <span class="overload">[1/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void CodeRacer::turn_left </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Will turn the racer to the left for the internally stroe time in ms and with the internally stored speed. </p>
<p>The speed for both the left side and right side drive can be set by the methods described in the lower level drive section. The turn to left time can be set by thoose methods as well. The method is delayed until the racer has turned. </p><dl class="section return"><dt>Returns</dt><dd>nothing </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html#l00226">226</a> of file <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html">CodeRacer.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;{</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; turn_left(_turn_left_for_ms, _drive_left_speed, _drive_right_speed);</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="ga30e1ec3fbbc206f93ea66dbf91b5fd95"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga30e1ec3fbbc206f93ea66dbf91b5fd95">&#9670;&nbsp;</a></span>turn_left() <span class="overload">[2/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void CodeRacer::turn_left </td>
<td>(</td>
<td class="paramtype">unsigned long&#160;</td>
<td class="paramname"><em>turn_for_ms</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Will turn the racer to the left for the specified time in ms and with the internally stored speed. </p>
<p>The specified duration of time is stored internally and will be used next time by e.g. turn_left() </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">turn_for_ms</td><td>duration of time in ms to turn the racer </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>nothing </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html#l00237">237</a> of file <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html">CodeRacer.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160;{</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; turn_left(turn_for_ms, _drive_left_speed, _drive_right_speed);</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="gae6daa587199e5bf95b1aac675de53b0e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gae6daa587199e5bf95b1aac675de53b0e">&#9670;&nbsp;</a></span>turn_left() <span class="overload">[3/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void CodeRacer::turn_left </td>
<td>(</td>
<td class="paramtype">unsigned long&#160;</td>
<td class="paramname"><em>turn_for_ms</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>left_speed</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>right_speed</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Will turn the racer to the left for the specified time in ms and with the specified speed. </p>
<p>The specified duration of time and the specified speeds are stored internally and will be used next time by e.g. turn_left() </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">turn_for_ms</td><td>duration of time in ms to turn the racer </td></tr>
<tr><td class="paramname">left_speed</td><td>speed for the left side drive </td></tr>
<tr><td class="paramname">right_speed</td><td>speed for the right side drive </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>nothing </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html#l00250">250</a> of file <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html">CodeRacer.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160;{</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; _drive = <span class="keyword">false</span>;</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; set_leds_left_stop_frwd_right(LEDON, LEDOFF, LEDOFF, LEDOFF); <span class="comment">// LEDs setzen</span></div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; set_drives_states_left_right(DRIVEBACK, DRIVEFRWD);</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; set_drives_speed_left_right(left_speed, right_speed);</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; <span class="comment">// wait set delay for the timed turn</span></div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; _turn_left_for_ms = turn_for_ms;</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; delay(_turn_left_for_ms);</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; <span class="comment">// stop drives again</span></div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; set_drives_stop_left_right();</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="ga8969fb2d6e2b5ac44a99197931e6b8da"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga8969fb2d6e2b5ac44a99197931e6b8da">&#9670;&nbsp;</a></span>turn_right() <span class="overload">[1/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void CodeRacer::turn_right </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Will turn the racer to the right for the internally stroe time in ms and with the internally stored speed. </p>
<p>The speed for both the left side and right side drive can be set by the methods described in the lower level drive section. The turn to right time can be set by thoose methods as well. The method is delayed until the racer has turned. </p><dl class="section return"><dt>Returns</dt><dd>nothing </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html#l00269">269</a> of file <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html">CodeRacer.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160;{</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; turn_right(_turn_right_for_ms, _drive_left_speed, _drive_right_speed);</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="gae1f175aad98d773b0206f483ae0bb4ea"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gae1f175aad98d773b0206f483ae0bb4ea">&#9670;&nbsp;</a></span>turn_right() <span class="overload">[2/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void CodeRacer::turn_right </td>
<td>(</td>
<td class="paramtype">unsigned long&#160;</td>
<td class="paramname"><em>turn_for_ms</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Will turn the racer to the right for the specified time in ms and with the internally stored speed. </p>
<p>The specified duration of time is stored internally and will be used next time by e.g. turn_right() </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">turn_for_ms</td><td>duration of time in ms to turn the racer </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>nothing </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html#l00280">280</a> of file <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html">CodeRacer.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160;{</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; turn_right(turn_for_ms, _drive_left_speed, _drive_right_speed);</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="gad10b3457489cc7e25ffb4d64c539528a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gad10b3457489cc7e25ffb4d64c539528a">&#9670;&nbsp;</a></span>turn_right() <span class="overload">[3/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void CodeRacer::turn_right </td>
<td>(</td>
<td class="paramtype">unsigned long&#160;</td>
<td class="paramname"><em>turn_for_ms</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>left_speed</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>right_speed</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Will turn the racer to the right for the specified time in ms and with the specified speed. </p>
<p>The specified duration of time and the specified speeds are stored internally and will be used next time by e.g. turn_right() </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">turn_for_ms</td><td>duration of time in ms to turn the racer </td></tr>
<tr><td class="paramname">left_speed</td><td>speed for the left side drive </td></tr>
<tr><td class="paramname">right_speed</td><td>speed for the right side drive </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>nothing </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html#l00293">293</a> of file <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html">CodeRacer.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160;{</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; _drive = <span class="keyword">false</span>;</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; set_leds_left_stop_frwd_right(LEDOFF, LEDOFF, LEDOFF, LEDON); <span class="comment">// LEDs setzen</span></div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; set_drives_states_left_right(DRIVEFRWD, DRIVEBACK);</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; set_drives_speed_left_right(left_speed, right_speed);</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; <span class="comment">// wait set delay for the timed turn</span></div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; _turn_right_for_ms = turn_for_ms;</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; delay(_turn_right_for_ms);</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; <span class="comment">// stop drives again</span></div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; set_drives_stop_left_right();</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="ga128683caea019a89bce06f722ba92556"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga128683caea019a89bce06f722ba92556">&#9670;&nbsp;</a></span>start_stop_at_min_distance() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void CodeRacer::start_stop_at_min_distance </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Enables to stopp the racer if during a distance measurement the measured distance is smaller then the internally stored minimal distance. </p>
<p>This allow all of the none-single shot ultra sonic measurement methods to stopp the racer in the case the measured distance is smaller than minimal distance. This is just the enablement - you have to call one of the none-single-shot ultra sonic measurement methods continously while driving and maybe sweeping the servo. If the racer was stopped can be checked with stopped_at_min_distance() - it will return true in that case. The minimal distance can be set by the ultrasonic sensor setter methods. There is an example coming with the coderacer libary that you can load and get an idea how that works. </p><dl class="section return"><dt>Returns</dt><dd>nothing </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html#l00314">314</a> of file <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html">CodeRacer.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; {</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; start_stop_at_min_distance(_usonic_stop_distance_cm);</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="ga64bc1b2a8ed5bc3ec5e706fa70a1385d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga64bc1b2a8ed5bc3ec5e706fa70a1385d">&#9670;&nbsp;</a></span>start_stop_at_min_distance() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void CodeRacer::start_stop_at_min_distance </td>
<td>(</td>
<td class="paramtype">unsigned long&#160;</td>
<td class="paramname"><em>min_distance_cm</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Enables to stopp the racer if during a distance measurement the measured distance is smaller then the specified minimal distance. </p>
<p>This is almos the same as described for start_stop_at_min_distance(). You can specify the distance in cm here - this value will be stored internally and used by start_stop_at_min_distance() next time. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">min_distance_cm</td><td>the minimal disctance in cm </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>nothing </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html#l00324">324</a> of file <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html">CodeRacer.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; {</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; <span class="keywordflow">if</span> (<span class="keyword">false</span> == _coderacer_stop_at_distance_enabled) {</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; _coderacer_stopped_at_min_distance = <span class="keyword">false</span>;</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; usonic_set_stop_distance_cm(min_distance_cm);</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; _coderacer_stop_at_distance_enabled = <span class="keyword">true</span>;</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; }</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="gac664109241d08b8dc52db5721f394b22"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gac664109241d08b8dc52db5721f394b22">&#9670;&nbsp;</a></span>stop_stop_at_min_distance()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void CodeRacer::stop_stop_at_min_distance </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Disables to stopp the racer if during a distance measurement the measured distance is smaller then the specified minimal distance. </p>
<dl class="section return"><dt>Returns</dt><dd>nothing </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html#l00335">335</a> of file <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html">CodeRacer.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; {</div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; _coderacer_stop_at_distance_enabled = <span class="keyword">false</span>;</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="ga34e2fe2123e76fd844482dfef6c5a9c8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga34e2fe2123e76fd844482dfef6c5a9c8">&#9670;&nbsp;</a></span>start_stop()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool CodeRacer::start_stop </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>This will return if the codracer is in active mode or not. </p>
<p>There is a button used to toogle between active and inactive each time it is pressed This may help you to start driving and scanning the distance by pressing the button - and as well to stop the racer by pressing the button. This method will set the LEDs depending on the mode and sets the servo back to center and stopps the racer when leaving the active mode. You can leave or enter the active mode as well by setting using set_active() and set_inactive(). The button itself triggers and internall interrupt event and sets the active state - but you have to continously call that method to switch between inactive and active mode depending on the active state. If in inactive mode and fun is enabeld by just setting the coderacer_fun_enabled = true ... some fun will happen :-)</p>
<dl class="section return"><dt>Returns</dt><dd>True if the coderacer is in active mode. False if in inactive mode. </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html#l00348">348</a> of file <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html">CodeRacer.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; {</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; <span class="keywordflow">if</span> (_coderracer_activ != coderracer_activ) {</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; _coderracer_activ = coderracer_activ;</div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; <span class="keywordflow">if</span> (<span class="keyword">true</span> == _coderracer_activ) {</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; set_leds_all_off();</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; delay(500);</div><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; }</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; <span class="keywordflow">else</span> {</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; stop_driving();</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; set_leds_all_on();</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; delay(200);</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; servo_set_to_center();</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; _servo_look_around_at_ms = millis() + random(20000, 120000);</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; }</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; }</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160;</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; <span class="keywordflow">if</span> ((<span class="keyword">false</span> == _coderracer_activ) &amp;&amp; (<span class="keyword">true</span> == coderacer_fun_enabled)) {</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; kitt();</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; look_around();</div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; }</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; </div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; <span class="keywordflow">return</span>(_coderracer_activ);</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
</ul>
</div>
</body>
</html>

View file

@ -0,0 +1,18 @@
var group__higherlevelmeths =
[
[ "stop_driving", "d2/d40/group__higherlevelmeths.html#ga71df7ac5e41ae776a6c786d3dc36f35a", null ],
[ "drive_forward", "d2/d40/group__higherlevelmeths.html#ga8be6a850099812153dcf5768d7fc8b8c", null ],
[ "drive_forward", "d2/d40/group__higherlevelmeths.html#gaae6fc379ec43cbe2cb2f63fbd12dbe0d", null ],
[ "drive_backward", "d2/d40/group__higherlevelmeths.html#ga98aa8a5a46f769d59e6c1067c8418cfb", null ],
[ "drive_backward", "d2/d40/group__higherlevelmeths.html#ga6cd8356ac76360b014db6170276b6b30", null ],
[ "turn_left", "d2/d40/group__higherlevelmeths.html#ga86b7caf6ff46e9d1ad90ed507864b175", null ],
[ "turn_left", "d2/d40/group__higherlevelmeths.html#ga30e1ec3fbbc206f93ea66dbf91b5fd95", null ],
[ "turn_left", "d2/d40/group__higherlevelmeths.html#gae6daa587199e5bf95b1aac675de53b0e", null ],
[ "turn_right", "d2/d40/group__higherlevelmeths.html#ga8969fb2d6e2b5ac44a99197931e6b8da", null ],
[ "turn_right", "d2/d40/group__higherlevelmeths.html#gae1f175aad98d773b0206f483ae0bb4ea", null ],
[ "turn_right", "d2/d40/group__higherlevelmeths.html#gad10b3457489cc7e25ffb4d64c539528a", null ],
[ "start_stop_at_min_distance", "d2/d40/group__higherlevelmeths.html#ga128683caea019a89bce06f722ba92556", null ],
[ "start_stop_at_min_distance", "d2/d40/group__higherlevelmeths.html#ga64bc1b2a8ed5bc3ec5e706fa70a1385d", null ],
[ "stop_stop_at_min_distance", "d2/d40/group__higherlevelmeths.html#gac664109241d08b8dc52db5721f394b22", null ],
[ "start_stop", "d2/d40/group__higherlevelmeths.html#ga34e2fe2123e76fd844482dfef6c5a9c8", null ]
];

View file

@ -0,0 +1,3 @@
<map id="Methods" name="Methods">
<area shape="rect" id="node1" href="$d9/d80/group__higherlevel.html" title="Higher level methods,\l setters and getters" alt="" coords="5,5,152,47"/>
</map>

View file

@ -0,0 +1 @@
14fcbf5ea95fbca4940db3735dae3e20

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

View file

@ -0,0 +1,2 @@
<map id="CodeRacer::drive_forward" name="CodeRacer::drive_forward">
</map>

View file

@ -0,0 +1 @@
88ea8cb2a7473284c7f30fcb34c5462f

Binary file not shown.

After

Width:  |  Height:  |  Size: 2 KiB

View file

@ -0,0 +1,110 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Arduino {code}racer API: Lower level servo drive methods and getters</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../jquery.js"></script>
<script type="text/javascript" src="../../dynsections.js"></script>
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../resize.js"></script>
<script type="text/javascript" src="../../navtreedata.js"></script>
<script type="text/javascript" src="../../navtree.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
</script>
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../search/searchdata.js"></script>
<script type="text/javascript" src="../../search/search.js"></script>
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="../../coderace_logo.JPG"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Arduino {code}racer API
</div>
<div id="projectbrief">... better know the details.</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</script>
<script type="text/javascript" src="../../menudata.js"></script>
<script type="text/javascript" src="../../menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('../../',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('d3/d17/group__lowerlevelservo.html','../../');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#groups">Modules</a> </div>
<div class="headertitle">
<div class="title">Lower level servo drive methods and getters</div> </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="groups"></a>
Modules</h2></td></tr>
<tr class="memitem:db/dd5/group__lowerlevelservomeths"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/dd5/group__lowerlevelservomeths.html">Methods</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:d4/df4/group__lowerlevelservogetters"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d4/df4/group__lowerlevelservogetters.html">Getters</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
</ul>
</div>
</body>
</html>

View file

@ -0,0 +1,5 @@
var group__lowerlevelservo =
[
[ "Methods", "db/dd5/group__lowerlevelservomeths.html", "db/dd5/group__lowerlevelservomeths" ],
[ "Getters", "d4/df4/group__lowerlevelservogetters.html", "d4/df4/group__lowerlevelservogetters" ]
];

View file

@ -0,0 +1,4 @@
<map id="Lower level servo drive methods and getters" name="Lower level servo drive methods and getters">
<area shape="rect" id="node1" href="$d4/df4/group__lowerlevelservogetters.html" title="Getters" alt="" coords="206,5,271,32"/>
<area shape="rect" id="node3" href="$db/dd5/group__lowerlevelservomeths.html" title="Methods" alt="" coords="203,56,275,83"/>
</map>

View file

@ -0,0 +1 @@
580a059516c5c4bee6990866828766d5

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,182 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Arduino {code}racer API: Getters</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../jquery.js"></script>
<script type="text/javascript" src="../../dynsections.js"></script>
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../resize.js"></script>
<script type="text/javascript" src="../../navtreedata.js"></script>
<script type="text/javascript" src="../../navtree.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
</script>
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../search/searchdata.js"></script>
<script type="text/javascript" src="../../search/search.js"></script>
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="../../coderace_logo.JPG"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Arduino {code}racer API
</div>
<div id="projectbrief">... better know the details.</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</script>
<script type="text/javascript" src="../../menudata.js"></script>
<script type="text/javascript" src="../../menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('../../',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('d4/df4/group__lowerlevelservogetters.html','../../');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">Getters<div class="ingroups"><a class="el" href="../../d3/d17/group__lowerlevelservo.html">Lower level servo drive methods and getters</a></div></div> </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga451b3ecd272e9a11de4b221f8d771432"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d4/df4/group__lowerlevelservogetters.html#ga451b3ecd272e9a11de4b221f8d771432">CodeRacer::servo_position</a> ()</td></tr>
<tr class="memdesc:ga451b3ecd272e9a11de4b221f8d771432"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the actual position of the servo. <a href="#ga451b3ecd272e9a11de4b221f8d771432">More...</a><br /></td></tr>
<tr class="separator:ga451b3ecd272e9a11de4b221f8d771432"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaeed05a3d4e06adccebdfce207b734b2f"><td class="memItemLeft" align="right" valign="top">unsigned long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d4/df4/group__lowerlevelservogetters.html#gaeed05a3d4e06adccebdfce207b734b2f">CodeRacer::servo_position_set_at_ms</a> ()</td></tr>
<tr class="memdesc:gaeed05a3d4e06adccebdfce207b734b2f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the system time in ms the servo was set to the actual position. <a href="#gaeed05a3d4e06adccebdfce207b734b2f">More...</a><br /></td></tr>
<tr class="separator:gaeed05a3d4e06adccebdfce207b734b2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga84ba256b9ccdf0e9f4280279da68a509"><td class="memItemLeft" align="right" valign="top">unsigned long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d4/df4/group__lowerlevelservogetters.html#ga84ba256b9ccdf0e9f4280279da68a509">CodeRacer::servo_position_eta_in_ms</a> ()</td></tr>
<tr class="memdesc:ga84ba256b9ccdf0e9f4280279da68a509"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the system time in ms the servo will reach its position This is an estimated time. If this is a time in the future, the servo may still moving. If this is a time in the past , the servo should have reached its postion already. <a href="#ga84ba256b9ccdf0e9f4280279da68a509">More...</a><br /></td></tr>
<tr class="separator:ga84ba256b9ccdf0e9f4280279da68a509"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<h2 class="groupheader">Function Documentation</h2>
<a id="ga451b3ecd272e9a11de4b221f8d771432"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga451b3ecd272e9a11de4b221f8d771432">&#9670;&nbsp;</a></span>servo_position()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t CodeRacer::servo_position </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the actual position of the servo. </p>
<dl class="section return"><dt>Returns</dt><dd>Actual position of the servo </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html#l00632">632</a> of file <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html">CodeRacer.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160; {</div><div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160; <span class="keywordflow">return</span>(_servo_position);</div><div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="gaeed05a3d4e06adccebdfce207b734b2f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaeed05a3d4e06adccebdfce207b734b2f">&#9670;&nbsp;</a></span>servo_position_set_at_ms()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">unsigned long CodeRacer::servo_position_set_at_ms </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the system time in ms the servo was set to the actual position. </p>
<dl class="section return"><dt>Returns</dt><dd>System time in ms the servo was set </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html#l00639">639</a> of file <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html">CodeRacer.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160; {</div><div class="line"><a name="l00640"></a><span class="lineno"> 640</span>&#160; <span class="keywordflow">return</span>(_servo_position_set_at_ms);</div><div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="ga84ba256b9ccdf0e9f4280279da68a509"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga84ba256b9ccdf0e9f4280279da68a509">&#9670;&nbsp;</a></span>servo_position_eta_in_ms()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">unsigned long CodeRacer::servo_position_eta_in_ms </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the system time in ms the servo will reach its position This is an estimated time. If this is a time in the future, the servo may still moving. If this is a time in the past , the servo should have reached its postion already. </p>
<dl class="section return"><dt>Returns</dt><dd>System time in ms the servo will reach its position </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html#l00649">649</a> of file <a class="el" href="../../d4/da7/_code_racer_8cpp_source.html">CodeRacer.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160; {</div><div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160; <span class="keywordflow">return</span>(_servo_position_eta_in_ms);</div><div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
</ul>
</div>
</body>
</html>

View file

@ -0,0 +1,6 @@
var group__lowerlevelservogetters =
[
[ "servo_position", "d4/df4/group__lowerlevelservogetters.html#ga451b3ecd272e9a11de4b221f8d771432", null ],
[ "servo_position_set_at_ms", "d4/df4/group__lowerlevelservogetters.html#gaeed05a3d4e06adccebdfce207b734b2f", null ],
[ "servo_position_eta_in_ms", "d4/df4/group__lowerlevelservogetters.html#ga84ba256b9ccdf0e9f4280279da68a509", null ]
];

View file

@ -0,0 +1,3 @@
<map id="Getters" name="Getters">
<area shape="rect" id="node2" href="$d3/d17/group__lowerlevelservo.html" title="Lower level servo drive\l methods and getters" alt="" coords="5,5,155,47"/>
</map>

View file

@ -0,0 +1 @@
68f8f6d7188bd071914c1b796efb68b6

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

View file

@ -0,0 +1,110 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Arduino {code}racer API: Lower level drives methods and getters</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../jquery.js"></script>
<script type="text/javascript" src="../../dynsections.js"></script>
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../resize.js"></script>
<script type="text/javascript" src="../../navtreedata.js"></script>
<script type="text/javascript" src="../../navtree.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
</script>
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../search/searchdata.js"></script>
<script type="text/javascript" src="../../search/search.js"></script>
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="../../coderace_logo.JPG"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Arduino {code}racer API
</div>
<div id="projectbrief">... better know the details.</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</script>
<script type="text/javascript" src="../../menudata.js"></script>
<script type="text/javascript" src="../../menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('../../',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('d6/d98/group__lowerleveldrives.html','../../');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#groups">Modules</a> </div>
<div class="headertitle">
<div class="title">Lower level drives methods and getters</div> </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="groups"></a>
Modules</h2></td></tr>
<tr class="memitem:d1/d8a/group__lowerleveldrivesmeths"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d8a/group__lowerleveldrivesmeths.html">Methods</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:d0/d0a/group__lowerleveldrivesgetters"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d0a/group__lowerleveldrivesgetters.html">Getters</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
</ul>
</div>
</body>
</html>

View file

@ -0,0 +1,5 @@
var group__lowerleveldrives =
[
[ "Methods", "d1/d8a/group__lowerleveldrivesmeths.html", "d1/d8a/group__lowerleveldrivesmeths" ],
[ "Getters", "d0/d0a/group__lowerleveldrivesgetters.html", "d0/d0a/group__lowerleveldrivesgetters" ]
];

View file

@ -0,0 +1,4 @@
<map id="Lower level drives methods and getters" name="Lower level drives methods and getters">
<area shape="rect" id="node2" href="$d0/d0a/group__lowerleveldrivesgetters.html" title="Getters" alt="" coords="202,5,267,32"/>
<area shape="rect" id="node3" href="$d1/d8a/group__lowerleveldrivesmeths.html" title="Methods" alt="" coords="199,56,271,83"/>
</map>

View file

@ -0,0 +1 @@
929320c5d691931416a1f3fbdc41f4b0

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

File diff suppressed because one or more lines are too long

Some files were not shown because too many files have changed in this diff Show more