<!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>simpletools library: simpletools.h Source File</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="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="ParallaxLogo.png"/></td> <td id="projectalign" style="padding-left: 0.5em;"> <div id="projectname">simpletools library  <span id="projectnumber">v1.1.8</span> </div> <div id="projectbrief">Collection of convenience functions for common microcontroller tasks</div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.13 --> </div><!-- top --> <div class="header"> <div class="headertitle"> <div class="title">simpletools.h</div> </div> </div><!--header--> <div class="contents"> <a href="simpletools_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> </div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span> <span class="preprocessor">#ifndef SIMPLETOOLS_H</span></div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <span class="preprocessor">#define SIMPLETOOLS_H</span></div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span> </div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <span class="preprocessor">#if defined(__cplusplus)</span></div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="keyword">extern</span> <span class="stringliteral">"C"</span> {</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span> </div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span> <span class="preprocessor">#include <propeller.h></span></div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="preprocessor">#include "simpletext.h"</span></div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span> <span class="preprocessor">#include <driver.h></span></div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <span class="preprocessor">#include <stdio.h></span></div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span> <span class="preprocessor">#include <stdlib.h></span></div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <span class="preprocessor">#include <string.h></span></div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span> <span class="preprocessor">#include <cog.h></span></div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span> <span class="preprocessor">#include <ctype.h></span></div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span> <span class="preprocessor">#include <unistd.h></span></div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span> <span class="preprocessor">#include <sys/stat.h></span></div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span> <span class="preprocessor">#include <dirent.h></span></div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span> <span class="preprocessor">#include <sys/sd.h></span></div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span> <span class="preprocessor">#include <math.h></span></div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <span class="preprocessor">#include "simplei2c.h"</span></div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span> </div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span> </div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="simpletools_8h.html#a1a8552078613643aa85fda8bd7c93076">ms</a>;</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span> </div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span> </div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span> <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="simpletools_8h.html#a513d04dc00f4a627b851ffd5b660d2d9">us</a>;</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span> </div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span> </div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span> </div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span> <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="simpletools_8h.html#a270cba7176199e76e536cc9c5ebff5b5">st_msTicks</a>;</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span> </div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span> </div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span> <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="simpletools_8h.html#a8bfda7c99c6beef44af33728448fd7ad">st_usTicks</a>;</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span> </div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span> </div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span> <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="simpletools_8h.html#a0b26ead266d0f73aadd8f1482a407ad5">st_iodt</a>;</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span> </div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span> <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="simpletools_8h.html#a2608f553978382b7abdccfc62be3e75c">st_timeout</a>;</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span> </div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span> <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="simpletools_8h.html#affa540efbcc63412e456b1ec27bd6ee2">st_pauseTicks</a>;</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span> </div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span> <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="simpletools_8h.html#a8ac788987dc5b2a211a8c84490c72979">st_mark</a>;</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span> </div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="keyword">extern</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="simpletools_8h.html#ab0384787b04fec1080968ce1307aa20d">st_buscnt</a>;</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span> </div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span> <span class="keyword">extern</span> i2c *<a class="code" href="simpletools_8h.html#ab8fabf8be6c845a7b7500689052f3445">st_eeprom</a>;</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span> </div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span> <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="simpletools_8h.html#a493e381735ceb4e0d7914d91d3f0c7af">st_eeInitFlag</a>;</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span> </div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span> </div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span> <span class="preprocessor">#ifndef PI</span></div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span> </div><div class="line"><a name="l00216"></a><span class="lineno"><a class="line" href="simpletools_8h.html#a598a3330b3c21701223ee0ca14316eca"> 216</a></span> <span class="preprocessor">#define PI 3.141592653589793</span></div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span> </div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span> </div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span> </div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span> <span class="comment">/* Values for use with SimpleIDE Terminal */</span></div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span> <span class="preprocessor">#ifndef HOME</span></div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span> </div><div class="line"><a name="l00233"></a><span class="lineno"><a class="line" href="simpletools_8h.html#a0e26ea2db1b570d1a6fe1ac180ef4541"> 233</a></span> <span class="preprocessor">#define HOME (1)</span></div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span> </div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span> <span class="preprocessor">#ifndef CRSRXY</span></div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span> </div><div class="line"><a name="l00243"></a><span class="lineno"><a class="line" href="simpletools_8h.html#afa53bcf09725cf1948b70eaaa229a3d1"> 243</a></span> <span class="preprocessor">#define CRSRXY (2)</span></div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span> </div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span> <span class="preprocessor">#ifndef CRSRLF</span></div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span> </div><div class="line"><a name="l00251"></a><span class="lineno"><a class="line" href="simpletools_8h.html#a9e599685cbc5af2bb2a3baffdf881dff"> 251</a></span> <span class="preprocessor">#define CRSRLF (3)</span></div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span> </div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span> <span class="preprocessor">#ifndef CRSRRT</span></div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span> </div><div class="line"><a name="l00259"></a><span class="lineno"><a class="line" href="simpletools_8h.html#acaf84697e36358569284ae174db49051"> 259</a></span> <span class="preprocessor">#define CRSRRT (4)</span></div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span> </div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span> <span class="preprocessor">#ifndef CRSRUP</span></div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span> </div><div class="line"><a name="l00267"></a><span class="lineno"><a class="line" href="simpletools_8h.html#a2fda2c79c6638bf0c75ce50209da388a"> 267</a></span> <span class="preprocessor">#define CRSRUP (5)</span></div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span> </div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span> <span class="preprocessor">#ifndef CRSRDN</span></div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span> </div><div class="line"><a name="l00275"></a><span class="lineno"><a class="line" href="simpletools_8h.html#a01b2cacea568fc44982a68a31da8757f"> 275</a></span> <span class="preprocessor">#define CRSRDN (6)</span></div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span> </div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span> <span class="preprocessor">#ifndef BEEP</span></div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span> </div><div class="line"><a name="l00283"></a><span class="lineno"><a class="line" href="simpletools_8h.html#a1ceb0e81b845fdcd1b8371e92229a13b"> 283</a></span> <span class="preprocessor">#define BEEP (7)</span></div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span> </div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span> <span class="preprocessor">#ifndef BKSP</span></div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span> </div><div class="line"><a name="l00292"></a><span class="lineno"><a class="line" href="simpletools_8h.html#a4f41e5dc4d1d256277cb259077da1fc6"> 292</a></span> <span class="preprocessor">#define BKSP (8)</span></div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span> </div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span> <span class="preprocessor">#ifndef TAB</span></div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span> </div><div class="line"><a name="l00300"></a><span class="lineno"><a class="line" href="simpletools_8h.html#ad58a1fbfc85c7e4790fc55e654f50221"> 300</a></span> <span class="preprocessor">#define TAB (9)</span></div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span> </div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span> <span class="preprocessor">#ifndef NL</span></div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span> </div><div class="line"><a name="l00308"></a><span class="lineno"><a class="line" href="simpletools_8h.html#a4fc34b120ed3bd1120c1eb36abbcd6af"> 308</a></span> <span class="preprocessor">#define NL (10)</span></div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span> </div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span> <span class="preprocessor">#ifndef LF</span></div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span> </div><div class="line"><a name="l00315"></a><span class="lineno"><a class="line" href="simpletools_8h.html#a350c9d6cb81908d59427ee96844d1a9c"> 315</a></span> <span class="preprocessor">#define LF (10)</span></div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span> </div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span> <span class="preprocessor">#ifndef CLREOL</span></div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span> </div><div class="line"><a name="l00323"></a><span class="lineno"><a class="line" href="simpletools_8h.html#ac2f56dd6f32ebc7b504090212600d922"> 323</a></span> <span class="preprocessor">#define CLREOL (11)</span></div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span> </div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span> <span class="preprocessor">#ifndef CLRDN</span></div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span> </div><div class="line"><a name="l00331"></a><span class="lineno"><a class="line" href="simpletools_8h.html#a1cdb24d24f81764bea8c96fe07d48e0a"> 331</a></span> <span class="preprocessor">#define CLRDN (12)</span></div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span> </div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span> <span class="preprocessor">#ifndef CR</span></div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span> </div><div class="line"><a name="l00339"></a><span class="lineno"><a class="line" href="simpletools_8h.html#a876ce77f3c672c7162658151e648389e"> 339</a></span> <span class="preprocessor">#define CR (13)</span></div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span> </div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span> <span class="preprocessor">#ifndef CRSRX</span></div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span> </div><div class="line"><a name="l00347"></a><span class="lineno"><a class="line" href="simpletools_8h.html#a3cf3d7ff85aa894ae161d3f7ced308f1"> 347</a></span> <span class="preprocessor">#define CRSRX (14)</span></div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span> </div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span> <span class="preprocessor">#ifndef CRSRY</span></div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span> </div><div class="line"><a name="l00355"></a><span class="lineno"><a class="line" href="simpletools_8h.html#af522fc6b22b3ec6d30fa9e5462d925e5"> 355</a></span> <span class="preprocessor">#define CRSRY (15)</span></div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span> </div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span> <span class="preprocessor">#ifndef CLS</span></div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span> </div><div class="line"><a name="l00363"></a><span class="lineno"><a class="line" href="simpletools_8h.html#ada59561816893aa39c4aa41f1043c554"> 363</a></span> <span class="preprocessor">#define CLS (16)</span></div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span> </div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span> </div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span> </div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span> <span class="preprocessor">#ifndef MSBPRE </span></div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span> </div><div class="line"><a name="l00381"></a><span class="lineno"><a class="line" href="simpletools_8h.html#a0a50888a81959bc58f01b49ec0f8c961"> 381</a></span> <span class="preprocessor">#define MSBPRE 0</span></div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span> </div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span> <span class="preprocessor">#ifndef LSBPRE </span></div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span> </div><div class="line"><a name="l00388"></a><span class="lineno"><a class="line" href="simpletools_8h.html#acd0275a42546f7deb25aafca03ccadca"> 388</a></span> <span class="preprocessor">#define LSBPRE 1</span></div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span> </div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span> <span class="preprocessor">#ifndef MSBPOST </span></div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span> </div><div class="line"><a name="l00395"></a><span class="lineno"><a class="line" href="simpletools_8h.html#a08e82bb8e633953523a7b78de640174b"> 395</a></span> <span class="preprocessor">#define MSBPOST 2</span></div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span> </div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span> <span class="preprocessor">#ifndef LSBPOST </span></div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span> </div><div class="line"><a name="l00402"></a><span class="lineno"><a class="line" href="simpletools_8h.html#af55f183bf537941b4ef0b09655a560b2"> 402</a></span> <span class="preprocessor">#define LSBPOST 3</span></div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>  </div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span> <span class="comment">// Values for use with shift_out</span></div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span> <span class="preprocessor">#ifndef LSBFIRST </span></div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span> </div><div class="line"><a name="l00410"></a><span class="lineno"><a class="line" href="simpletools_8h.html#a5811613d98580676f67f0dde8125433e"> 410</a></span> <span class="preprocessor">#define LSBFIRST 0</span></div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span> </div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span> <span class="preprocessor">#ifndef MSBFIRST </span></div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span> </div><div class="line"><a name="l00417"></a><span class="lineno"><a class="line" href="simpletools_8h.html#a1c7ef42eff02618bde70868af4944d81"> 417</a></span> <span class="preprocessor">#define MSBFIRST 1</span></div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span> </div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span> </div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span> </div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span> <span class="preprocessor">#ifndef NCO_PWM_1</span></div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span> </div><div class="line"><a name="l00436"></a><span class="lineno"><a class="line" href="simpletools_8h.html#a4dbd6ec520f6a6b4e4610cc804c05fe8"> 436</a></span> <span class="preprocessor">#define NCO_PWM_1 (0b00100 << 26)</span></div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span> </div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span> <span class="preprocessor">#ifndef CTR_NCO</span></div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span> </div><div class="line"><a name="l00444"></a><span class="lineno"><a class="line" href="simpletools_8h.html#af4f32a431c48e36da66f94897013ff09"> 444</a></span> <span class="preprocessor">#define CTR_NCO (0b100 << 26)</span></div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span> </div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span> <span class="preprocessor">#ifndef CTR_PLL</span></div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span> </div><div class="line"><a name="l00452"></a><span class="lineno"><a class="line" href="simpletools_8h.html#a35343305570a7f0c402035a61ac54562"> 452</a></span> <span class="preprocessor">#define CTR_PLL (0b10 << 26)</span></div><div class="line"><a name="l00453"></a><span class="lineno"> 453</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span> </div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span> <span class="preprocessor">#ifndef DUTY_SE</span></div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span> </div><div class="line"><a name="l00460"></a><span class="lineno"><a class="line" href="simpletools_8h.html#a83e7c6583ebf1d8f9c2d2c32bbf0c984"> 460</a></span> <span class="preprocessor">#define DUTY_SE (0b110 << 26)</span></div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span> </div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span> </div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span> </div><div class="line"><a name="l00477"></a><span class="lineno"><a class="line" href="simpletools_8h.html#ac04aea26e16ed3b740d27bc03eed2db5"> 477</a></span> <span class="preprocessor">#define ee_put_byte ee_putByte</span></div><div class="line"><a name="l00478"></a><span class="lineno"> 478</span> </div><div class="line"><a name="l00479"></a><span class="lineno"> 479</span> </div><div class="line"><a name="l00483"></a><span class="lineno"><a class="line" href="simpletools_8h.html#aae4945cabc87fb08d37fca7e0db20422"> 483</a></span> <span class="preprocessor">#define ee_get_byte ee_getByte</span></div><div class="line"><a name="l00484"></a><span class="lineno"> 484</span> </div><div class="line"><a name="l00485"></a><span class="lineno"> 485</span> </div><div class="line"><a name="l00489"></a><span class="lineno"><a class="line" href="simpletools_8h.html#a1dd0c9e763b2c99590bde1206b8f49e0"> 489</a></span> <span class="preprocessor">#define ee_put_int ee_putInt</span></div><div class="line"><a name="l00490"></a><span class="lineno"> 490</span> </div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span> </div><div class="line"><a name="l00495"></a><span class="lineno"><a class="line" href="simpletools_8h.html#a6cbbc5e22a078c75b316d08fe6739509"> 495</a></span> <span class="preprocessor">#define ee_get_int ee_getInt</span></div><div class="line"><a name="l00496"></a><span class="lineno"> 496</span> </div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span> </div><div class="line"><a name="l00501"></a><span class="lineno"><a class="line" href="simpletools_8h.html#a59386353f20e5a9688e189423fbcfc85"> 501</a></span> <span class="preprocessor">#define ee_put_str ee_putStr</span></div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span> </div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span> </div><div class="line"><a name="l00507"></a><span class="lineno"><a class="line" href="simpletools_8h.html#a2c2ae1a4f7d1f422c346687845979b7f"> 507</a></span> <span class="preprocessor">#define ee_get_str ee_getStr</span></div><div class="line"><a name="l00508"></a><span class="lineno"> 508</span> </div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span> </div><div class="line"><a name="l00513"></a><span class="lineno"><a class="line" href="simpletools_8h.html#a9d6e9570f4721c1a580299bdb80638d5"> 513</a></span> <span class="preprocessor">#define ee_put_float32 ee_putFloat32</span></div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span> </div><div class="line"><a name="l00515"></a><span class="lineno"> 515</span> </div><div class="line"><a name="l00520"></a><span class="lineno"><a class="line" href="simpletools_8h.html#af9241e417ac6f468979cc60b0263d49f"> 520</a></span> <span class="preprocessor">#define pause_ticks(pticks) __builtin_propeller_waitcnt(pticks+CNT, 0)</span></div><div class="line"><a name="l00521"></a><span class="lineno"> 521</span> </div><div class="line"><a name="l00522"></a><span class="lineno"> 522</span> </div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span> </div><div class="line"><a name="l00533"></a><span class="lineno"> 533</span> <span class="preprocessor">#ifndef EEPROM_ADDR</span></div><div class="line"><a name="l00534"></a><span class="lineno"> 534</span> </div><div class="line"><a name="l00537"></a><span class="lineno"><a class="line" href="simpletools_8h.html#a95a8626764b7fcbf81fddaa0a197def8"> 537</a></span> <span class="preprocessor">#define EEPROM_ADDR 0x50</span></div><div class="line"><a name="l00538"></a><span class="lineno"> 538</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00539"></a><span class="lineno"> 539</span> </div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span> </div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span> </div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span> <span class="keywordtype">void</span> <a class="code" href="simpletools_8h.html#a4d9825708f3b6cae156e4e5f1e1647f6">high</a>(<span class="keywordtype">int</span> pin);</div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span> </div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span> </div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span> <span class="keywordtype">void</span> <a class="code" href="simpletools_8h.html#ab6b4677f42acfb2273127492d13a7e05">low</a>(<span class="keywordtype">int</span> pin);</div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span> </div><div class="line"><a name="l00573"></a><span class="lineno"> 573</span> </div><div class="line"><a name="l00588"></a><span class="lineno"> 588</span> <span class="keywordtype">int</span> <a class="code" href="simpletools_8h.html#af2b2c5f5c8559b5f2957239f2c2e663d">input</a>(<span class="keywordtype">int</span> pin);</div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span> </div><div class="line"><a name="l00590"></a><span class="lineno"> 590</span> </div><div class="line"><a name="l00591"></a><span class="lineno"> 591</span> </div><div class="line"><a name="l00611"></a><span class="lineno"> 611</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="simpletools_8h.html#ac00aa846d252ba311694febd1100bd11">toggle</a>(<span class="keywordtype">int</span> pin);</div><div class="line"><a name="l00612"></a><span class="lineno"> 612</span> </div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="simpletools_8h.html#abe4291907fc0563f65a1f3ed85fb878d">reverse</a>(<span class="keywordtype">int</span> pin);</div><div class="line"><a name="l00625"></a><span class="lineno"> 625</span> </div><div class="line"><a name="l00626"></a><span class="lineno"> 626</span> </div><div class="line"><a name="l00644"></a><span class="lineno"> 644</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="simpletools_8h.html#a9f77582253a5ee75241615296dcf0d05">get_state</a>(<span class="keywordtype">int</span> pin);</div><div class="line"><a name="l00645"></a><span class="lineno"> 645</span> </div><div class="line"><a name="l00660"></a><span class="lineno"> 660</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="simpletools_8h.html#aa3e6b702137ad730e834bce8a114a550">get_direction</a>(<span class="keywordtype">int</span> pin);</div><div class="line"><a name="l00661"></a><span class="lineno"> 661</span> </div><div class="line"><a name="l00674"></a><span class="lineno"> 674</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="simpletools_8h.html#a1faf05ad4f74447ecbb557b4ee0c190e">get_output</a>(<span class="keywordtype">int</span> pin);</div><div class="line"><a name="l00675"></a><span class="lineno"> 675</span> </div><div class="line"><a name="l00684"></a><span class="lineno"> 684</span> <span class="keywordtype">void</span> <a class="code" href="simpletools_8h.html#a97c13d6b776c998bd74286c6a8b774dd">set_direction</a>(<span class="keywordtype">int</span> pin, <span class="keywordtype">int</span> direction);</div><div class="line"><a name="l00685"></a><span class="lineno"> 685</span> </div><div class="line"><a name="l00698"></a><span class="lineno"> 698</span> <span class="keywordtype">void</span> <a class="code" href="simpletools_8h.html#a016272b69e2e657a35621cfb815661d3">set_output</a>(<span class="keywordtype">int</span> pin, <span class="keywordtype">int</span> state);</div><div class="line"><a name="l00699"></a><span class="lineno"> 699</span> </div><div class="line"><a name="l00700"></a><span class="lineno"> 700</span> </div><div class="line"><a name="l00701"></a><span class="lineno"> 701</span> </div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="simpletools_8h.html#a9a59d35d804a8700b92e7637f55485c5">get_states</a>(<span class="keywordtype">int</span> endPin, <span class="keywordtype">int</span> startPin);</div><div class="line"><a name="l00725"></a><span class="lineno"> 725</span> </div><div class="line"><a name="l00738"></a><span class="lineno"> 738</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="simpletools_8h.html#aef2876e81b935837260cf651cfeb0b0a">get_directions</a>(<span class="keywordtype">int</span> endPin, <span class="keywordtype">int</span> startPin);</div><div class="line"><a name="l00739"></a><span class="lineno"> 739</span> </div><div class="line"><a name="l00752"></a><span class="lineno"> 752</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="simpletools_8h.html#abf84ae3d77141e0787ac6322533aa5e2">get_outputs</a>(<span class="keywordtype">int</span> endPin, <span class="keywordtype">int</span> startPin);</div><div class="line"><a name="l00753"></a><span class="lineno"> 753</span> </div><div class="line"><a name="l00765"></a><span class="lineno"> 765</span> <span class="keywordtype">void</span> <a class="code" href="simpletools_8h.html#aff22a28c433f3857ca116c5286ddab33">set_directions</a>(<span class="keywordtype">int</span> endPin, <span class="keywordtype">int</span> startPin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> pattern);</div><div class="line"><a name="l00766"></a><span class="lineno"> 766</span> </div><div class="line"><a name="l00778"></a><span class="lineno"> 778</span> <span class="keywordtype">void</span> <a class="code" href="simpletools_8h.html#acbf5fe86eb36a02d4f86df2d3ca8d84d">set_outputs</a>(<span class="keywordtype">int</span> endPin, <span class="keywordtype">int</span> startPin, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> pattern);</div><div class="line"><a name="l00779"></a><span class="lineno"> 779</span> </div><div class="line"><a name="l00780"></a><span class="lineno"> 780</span> </div><div class="line"><a name="l00781"></a><span class="lineno"> 781</span> </div><div class="line"><a name="l00782"></a><span class="lineno"> 782</span> </div><div class="line"><a name="l00803"></a><span class="lineno"> 803</span> <span class="keywordtype">void</span> <a class="code" href="simpletools_8h.html#a381e2d58c3d6a1f0fd8129bcc4726804">pause</a>(<span class="keywordtype">int</span> time);</div><div class="line"><a name="l00804"></a><span class="lineno"> 804</span> </div><div class="line"><a name="l00815"></a><span class="lineno"> 815</span> <span class="keywordtype">void</span> <a class="code" href="simpletools_8h.html#a04c171fd47bc9149c306576c349de680">set_pause_dt</a>(<span class="keywordtype">int</span> clockticks);</div><div class="line"><a name="l00816"></a><span class="lineno"> 816</span> </div><div class="line"><a name="l00817"></a><span class="lineno"> 817</span> </div><div class="line"><a name="l00818"></a><span class="lineno"> 818</span> </div><div class="line"><a name="l00819"></a><span class="lineno"> 819</span> </div><div class="line"><a name="l00839"></a><span class="lineno"> 839</span> <span class="keywordtype">long</span> <a class="code" href="simpletools_8h.html#a20a9d97de9777b12cfd9353a83ac21cb">count</a>(<span class="keywordtype">int</span> pin, <span class="keywordtype">long</span> duration);</div><div class="line"><a name="l00840"></a><span class="lineno"> 840</span> </div><div class="line"><a name="l00869"></a><span class="lineno"> 869</span> <span class="keywordtype">void</span> <a class="code" href="simpletools_8h.html#a7f87d0c6e5e644d9a2ad011e556de1e8">dac_ctr</a>(<span class="keywordtype">int</span> pin, <span class="keywordtype">int</span> channel, <span class="keywordtype">int</span> dacVal);</div><div class="line"><a name="l00870"></a><span class="lineno"> 870</span> </div><div class="line"><a name="l00884"></a><span class="lineno"> 884</span> <span class="keywordtype">void</span> <a class="code" href="simpletools_8h.html#af8ef60ed622a82bab16bea03cddc2340">dac_ctr_res</a>(<span class="keywordtype">int</span> bits);</div><div class="line"><a name="l00885"></a><span class="lineno"> 885</span> </div><div class="line"><a name="l00893"></a><span class="lineno"> 893</span> <span class="keywordtype">void</span> <a class="code" href="simpletools_8h.html#a37edfbadb336de010e4cfdecdeca6148">dac_ctr_stop</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00894"></a><span class="lineno"> 894</span> </div><div class="line"><a name="l00905"></a><span class="lineno"> 905</span> <span class="keywordtype">void</span> <a class="code" href="simpletools_8h.html#a78d00871cfb358e7c1f4fea6fc5d07f5">freqout</a>(<span class="keywordtype">int</span> pin, <span class="keywordtype">int</span> msTime, <span class="keywordtype">int</span> frequency);</div><div class="line"><a name="l00906"></a><span class="lineno"> 906</span> </div><div class="line"><a name="l00921"></a><span class="lineno"> 921</span> <span class="keywordtype">int</span> <a class="code" href="simpletools_8h.html#a2ccfd8aa1b8c5e7d58ee2dbfa3ecebe5">pwm_start</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> cycleMicroseconds);</div><div class="line"><a name="l00922"></a><span class="lineno"> 922</span> </div><div class="line"><a name="l00948"></a><span class="lineno"> 948</span> <span class="keywordtype">void</span> <a class="code" href="simpletools_8h.html#a57f683188c3dd35ee0574ff349835682">pwm_set</a>(<span class="keywordtype">int</span> pin, <span class="keywordtype">int</span> channel, <span class="keywordtype">int</span> tHigh);</div><div class="line"><a name="l00949"></a><span class="lineno"> 949</span> </div><div class="line"><a name="l00957"></a><span class="lineno"> 957</span> <span class="keywordtype">void</span> <a class="code" href="simpletools_8h.html#aec8f4f09d7d0222e947bea4b37fc33c2">pwm_stop</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00958"></a><span class="lineno"> 958</span> </div><div class="line"><a name="l00971"></a><span class="lineno"> 971</span> <span class="keywordtype">long</span> <a class="code" href="simpletools_8h.html#ae251e0a94359068f5e56682311ef4201">pulse_in</a>(<span class="keywordtype">int</span> pin, <span class="keywordtype">int</span> state);</div><div class="line"><a name="l00972"></a><span class="lineno"> 972</span> </div><div class="line"><a name="l00988"></a><span class="lineno"> 988</span> <span class="keywordtype">void</span> <a class="code" href="simpletools_8h.html#af7d62062bce6f1cb4bc03006f8463ba5">pulse_out</a>(<span class="keywordtype">int</span> pin, <span class="keywordtype">int</span> time);</div><div class="line"><a name="l00989"></a><span class="lineno"> 989</span> </div><div class="line"><a name="l01005"></a><span class="lineno"> 1005</span> <span class="keywordtype">long</span> <a class="code" href="simpletools_8h.html#ad5f7522ca251c3cf3d7fd903fcdb5bbe">rc_time</a>(<span class="keywordtype">int</span> pin, <span class="keywordtype">int</span> state);</div><div class="line"><a name="l01006"></a><span class="lineno"> 1006</span> </div><div class="line"><a name="l01025"></a><span class="lineno"> 1025</span> <span class="keywordtype">void</span> <a class="code" href="simpletools_8h.html#a521dea91cf2ba911ff66d3074672316f">square_wave</a>(<span class="keywordtype">int</span> pin, <span class="keywordtype">int</span> channel, <span class="keywordtype">int</span> freq);</div><div class="line"><a name="l01026"></a><span class="lineno"> 1026</span> </div><div class="line"><a name="l01034"></a><span class="lineno"> 1034</span> <span class="keywordtype">void</span> <a class="code" href="simpletools_8h.html#a6291bd6f5b751420d414cff05e720ec8">square_wave_stop</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l01035"></a><span class="lineno"> 1035</span> </div><div class="line"><a name="l01045"></a><span class="lineno"> 1045</span> <span class="keywordtype">void</span> <a class="code" href="simpletools_8h.html#a288d762194e0bad67f4f37ba43f57292">set_io_timeout</a>(<span class="keywordtype">long</span> clockTicks);</div><div class="line"><a name="l01046"></a><span class="lineno"> 1046</span> </div><div class="line"><a name="l01057"></a><span class="lineno"> 1057</span> <span class="keywordtype">void</span> <a class="code" href="simpletools_8h.html#ac4b081567b4d3d054382f88c777d740e">set_io_dt</a>(<span class="keywordtype">long</span> clockticks);</div><div class="line"><a name="l01058"></a><span class="lineno"> 1058</span> </div><div class="line"><a name="l01059"></a><span class="lineno"> 1059</span> </div><div class="line"><a name="l01060"></a><span class="lineno"> 1060</span> </div><div class="line"><a name="l01061"></a><span class="lineno"> 1061</span> </div><div class="line"><a name="l01083"></a><span class="lineno"> 1083</span> <span class="keywordtype">int</span> <a class="code" href="simpletools_8h.html#a4fca5193934cbc3b7fce7bfca131302d">shift_in</a>(<span class="keywordtype">int</span> pinDat, <span class="keywordtype">int</span> pinClk, <span class="keywordtype">int</span> mode, <span class="keywordtype">int</span> bits);</div><div class="line"><a name="l01084"></a><span class="lineno"> 1084</span> </div><div class="line"><a name="l01094"></a><span class="lineno"> 1094</span> <span class="keywordtype">void</span> <a class="code" href="simpletools_8h.html#a39f6cd6c7f7965e057926f92a9b2fa29">shift_out</a>(<span class="keywordtype">int</span> pinDat, <span class="keywordtype">int</span> pinClk, <span class="keywordtype">int</span> mode, <span class="keywordtype">int</span> bits, <span class="keywordtype">int</span> value);</div><div class="line"><a name="l01095"></a><span class="lineno"> 1095</span> </div><div class="line"><a name="l01096"></a><span class="lineno"> 1096</span> </div><div class="line"><a name="l01097"></a><span class="lineno"> 1097</span> </div><div class="line"><a name="l01098"></a><span class="lineno"> 1098</span> </div><div class="line"><a name="l01127"></a><span class="lineno"> 1127</span> i2c *<a class="code" href="simpletools_8h.html#a0f02473c77ebed4ad04f829eff27985c">i2c_newbus</a>(<span class="keywordtype">int</span> sclPin, <span class="keywordtype">int</span> sdaPin, <span class="keywordtype">int</span> sclDrive);</div><div class="line"><a name="l01128"></a><span class="lineno"> 1128</span> </div><div class="line"><a name="l01129"></a><span class="lineno"> 1129</span> </div><div class="line"><a name="l01157"></a><span class="lineno"> 1157</span> HUBTEXT <span class="keywordtype">int</span> <a class="code" href="simpletools_8h.html#a2d8c9b83ae2e87db69fb9138c6c57f57">i2c_out</a>(i2c *busID, <span class="keywordtype">int</span> i2cAddr, </div><div class="line"><a name="l01158"></a><span class="lineno"> 1158</span>  <span class="keywordtype">int</span> memAddr, <span class="keywordtype">int</span> memAddrCount, </div><div class="line"><a name="l01159"></a><span class="lineno"> 1159</span>  <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *data, <span class="keywordtype">int</span> dataCount);</div><div class="line"><a name="l01160"></a><span class="lineno"> 1160</span> </div><div class="line"><a name="l01161"></a><span class="lineno"> 1161</span> </div><div class="line"><a name="l01189"></a><span class="lineno"> 1189</span> HUBTEXT <span class="keywordtype">int</span> <a class="code" href="simpletools_8h.html#adf4323fa7fc0f0bd7ba1163f1d8ab52a">i2c_in</a>(i2c *busID, <span class="keywordtype">int</span> i2cAddr, </div><div class="line"><a name="l01190"></a><span class="lineno"> 1190</span>  <span class="keywordtype">int</span> memAddr, <span class="keywordtype">int</span> memAddrCount, </div><div class="line"><a name="l01191"></a><span class="lineno"> 1191</span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *data, <span class="keywordtype">int</span> dataCount);</div><div class="line"><a name="l01192"></a><span class="lineno"> 1192</span> </div><div class="line"><a name="l01193"></a><span class="lineno"> 1193</span> </div><div class="line"><a name="l01203"></a><span class="lineno"> 1203</span> HUBTEXT <span class="keywordtype">int</span> <a class="code" href="simpletools_8h.html#a7c7858c120d81da92771560bd50c54d6">i2c_busy</a>(i2c *busID, <span class="keywordtype">int</span> i2cAddr);</div><div class="line"><a name="l01204"></a><span class="lineno"> 1204</span> </div><div class="line"><a name="l01205"></a><span class="lineno"> 1205</span> </div><div class="line"><a name="l01206"></a><span class="lineno"> 1206</span> </div><div class="line"><a name="l01207"></a><span class="lineno"> 1207</span> </div><div class="line"><a name="l01227"></a><span class="lineno"> 1227</span> <span class="keywordtype">void</span> <a class="code" href="simpletools_8h.html#a593162b2f71e2ad23f0a09516cf9a7b4">ee_putByte</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> value, <span class="keywordtype">int</span> addr);</div><div class="line"><a name="l01228"></a><span class="lineno"> 1228</span> </div><div class="line"><a name="l01238"></a><span class="lineno"> 1238</span> <span class="keywordtype">char</span> <a class="code" href="simpletools_8h.html#ac1042df969c1f5bffa816fdf068c4ed9">ee_getByte</a>(<span class="keywordtype">int</span> addr);</div><div class="line"><a name="l01239"></a><span class="lineno"> 1239</span> </div><div class="line"><a name="l01240"></a><span class="lineno"> 1240</span> </div><div class="line"><a name="l01250"></a><span class="lineno"> 1250</span> <span class="keywordtype">void</span> <a class="code" href="simpletools_8h.html#adf44a20755432a25076e28e94b809264">ee_putInt</a>(<span class="keywordtype">int</span> value, <span class="keywordtype">int</span> addr);</div><div class="line"><a name="l01251"></a><span class="lineno"> 1251</span> </div><div class="line"><a name="l01261"></a><span class="lineno"> 1261</span> <span class="keywordtype">int</span> <a class="code" href="simpletools_8h.html#ad5ba1e74fdbc69a0578425eb5e176461">ee_getInt</a>(<span class="keywordtype">int</span> addr);</div><div class="line"><a name="l01262"></a><span class="lineno"> 1262</span> </div><div class="line"><a name="l01273"></a><span class="lineno"> 1273</span> <span class="keywordtype">void</span> <a class="code" href="simpletools_8h.html#ab958571c584ab8d846c3a8a2cb326109">ee_putStr</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *s, <span class="keywordtype">int</span> n, <span class="keywordtype">int</span> addr);</div><div class="line"><a name="l01274"></a><span class="lineno"> 1274</span> </div><div class="line"><a name="l01289"></a><span class="lineno"> 1289</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* <a class="code" href="simpletools_8h.html#a6e3fa8a82d1bc2be0828314652debe26">ee_getStr</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* s, <span class="keywordtype">int</span> n, <span class="keywordtype">int</span> addr);</div><div class="line"><a name="l01290"></a><span class="lineno"> 1290</span> </div><div class="line"><a name="l01305"></a><span class="lineno"> 1305</span> <span class="keywordtype">void</span> <a class="code" href="simpletools_8h.html#a10a9a5cd4767ffd7a82c9acd2b9485b2">ee_putFloat32</a>(<span class="keywordtype">float</span> value, <span class="keywordtype">int</span> addr);</div><div class="line"><a name="l01306"></a><span class="lineno"> 1306</span> </div><div class="line"><a name="l01322"></a><span class="lineno"> 1322</span> <span class="keywordtype">float</span> <a class="code" href="simpletools_8h.html#a3da63e55d0799ab30686bf38a5f15d43">ee_getFloat32</a>(<span class="keywordtype">int</span> addr);</div><div class="line"><a name="l01323"></a><span class="lineno"> 1323</span> </div><div class="line"><a name="l01345"></a><span class="lineno"> 1345</span> <span class="keywordtype">void</span> <a class="code" href="simpletools_8h.html#a3faa206c9a2381e34baf4473028df149">ee_config</a>(<span class="keywordtype">int</span> sclPin, <span class="keywordtype">int</span> sdaPin, <span class="keywordtype">int</span> sclDrive);</div><div class="line"><a name="l01346"></a><span class="lineno"> 1346</span> </div><div class="line"><a name="l01347"></a><span class="lineno"> 1347</span> </div><div class="line"><a name="l01348"></a><span class="lineno"> 1348</span> </div><div class="line"><a name="l01372"></a><span class="lineno"> 1372</span> <span class="keywordtype">int</span> <a class="code" href="simpletools_8h.html#aa845f3e273a492072b625da584924f32">sd_mount</a>(<span class="keywordtype">int</span> doPin, <span class="keywordtype">int</span> clkPin, <span class="keywordtype">int</span> diPin, <span class="keywordtype">int</span> csPin);</div><div class="line"><a name="l01373"></a><span class="lineno"> 1373</span> </div><div class="line"><a name="l01374"></a><span class="lineno"> 1374</span> </div><div class="line"><a name="l01375"></a><span class="lineno"> 1375</span> </div><div class="line"><a name="l01411"></a><span class="lineno"> 1411</span> <span class="keywordtype">int</span> *<a class="code" href="simpletools_8h.html#a9c5d06d96a66ec25c018b469e9c5e06b">cog_run</a>(<span class="keywordtype">void</span> (*<span class="keyword">function</span>)(<span class="keywordtype">void</span> *par), <span class="keywordtype">int</span> stacksize);</div><div class="line"><a name="l01412"></a><span class="lineno"> 1412</span> </div><div class="line"><a name="l01413"></a><span class="lineno"> 1413</span> </div><div class="line"><a name="l01421"></a><span class="lineno"> 1421</span> <span class="keywordtype">int</span> <a class="code" href="simpletools_8h.html#ad260529b4817b8bc40d280053d921a9e">cog_num</a>(<span class="keywordtype">int</span> *coginfo);</div><div class="line"><a name="l01422"></a><span class="lineno"> 1422</span> </div><div class="line"><a name="l01423"></a><span class="lineno"> 1423</span> </div><div class="line"><a name="l01433"></a><span class="lineno"> 1433</span> <span class="keywordtype">void</span> <a class="code" href="simpletools_8h.html#a5b2cba6f29a9955c55ab239066e30e7f">cog_end</a>(<span class="keywordtype">int</span> *coginfo);</div><div class="line"><a name="l01434"></a><span class="lineno"> 1434</span> </div><div class="line"><a name="l01435"></a><span class="lineno"> 1435</span> </div><div class="line"><a name="l01436"></a><span class="lineno"> 1436</span> </div><div class="line"><a name="l01479"></a><span class="lineno"> 1479</span> <span class="keywordtype">void</span> <a class="code" href="simpletools_8h.html#a2d5010e62531065fa13124e23dbfb176">term_cmd</a>(<span class="keywordtype">int</span> termConst, ...); </div><div class="line"><a name="l01480"></a><span class="lineno"> 1480</span> </div><div class="line"><a name="l01481"></a><span class="lineno"> 1481</span> </div><div class="line"><a name="l01482"></a><span class="lineno"> 1482</span> </div><div class="line"><a name="l01507"></a><span class="lineno"> 1507</span> <span class="keywordtype">float</span> <a class="code" href="simpletools_8h.html#a25730b861c0b0ea93e23e25c37adc29d">constrainFloat</a>(<span class="keywordtype">float</span> value, <span class="keywordtype">float</span> min, <span class="keywordtype">float</span> max); </div><div class="line"><a name="l01508"></a><span class="lineno"> 1508</span> </div><div class="line"><a name="l01509"></a><span class="lineno"> 1509</span> </div><div class="line"><a name="l01525"></a><span class="lineno"> 1525</span> <span class="keywordtype">int</span> <a class="code" href="simpletools_8h.html#aa90efe9490d68fd4db304c0ac9c1574b">constrainInt</a>(<span class="keywordtype">int</span> value, <span class="keywordtype">int</span> min, <span class="keywordtype">int</span> max);</div><div class="line"><a name="l01526"></a><span class="lineno"> 1526</span> </div><div class="line"><a name="l01527"></a><span class="lineno"> 1527</span> </div><div class="line"><a name="l01541"></a><span class="lineno"> 1541</span> <span class="keywordtype">void</span> <a class="code" href="simpletools_8h.html#ac21155c6ac6136e0300141f0c1e059eb">endianSwap</a>(<span class="keywordtype">void</span> *resultAddr, <span class="keywordtype">void</span> *varAddr, <span class="keywordtype">int</span> byteCount);</div><div class="line"><a name="l01542"></a><span class="lineno"> 1542</span> </div><div class="line"><a name="l01543"></a><span class="lineno"> 1543</span> </div><div class="line"><a name="l01563"></a><span class="lineno"> 1563</span> <span class="keywordtype">float</span> <a class="code" href="simpletools_8h.html#ac796526819c70e498370d9b5ced58394">mapFloat</a>(<span class="keywordtype">float</span> value, <span class="keywordtype">float</span> fromMin, <span class="keywordtype">float</span> fromMax, <span class="keywordtype">float</span> toMin, <span class="keywordtype">float</span> toMax);</div><div class="line"><a name="l01564"></a><span class="lineno"> 1564</span> </div><div class="line"><a name="l01565"></a><span class="lineno"> 1565</span> </div><div class="line"><a name="l01584"></a><span class="lineno"> 1584</span> <span class="keywordtype">int</span> <a class="code" href="simpletools_8h.html#a3b2519615c155ff4d679ada82e179f59">mapInt</a>(<span class="keywordtype">int</span> value, <span class="keywordtype">int</span> fromMin, <span class="keywordtype">int</span> fromMax, <span class="keywordtype">int</span> toMin, <span class="keywordtype">int</span> toMax);</div><div class="line"><a name="l01585"></a><span class="lineno"> 1585</span> </div><div class="line"><a name="l01586"></a><span class="lineno"> 1586</span> </div><div class="line"><a name="l01599"></a><span class="lineno"> 1599</span> <span class="keywordtype">int</span> <a class="code" href="simpletools_8h.html#ae7d81fb2f6c983b524efd3b9ea1b9635">random</a>(<span class="keywordtype">int</span> limitLow, <span class="keywordtype">int</span> limitHigh);</div><div class="line"><a name="l01600"></a><span class="lineno"> 1600</span> </div><div class="line"><a name="l01601"></a><span class="lineno"> 1601</span> </div><div class="line"><a name="l01602"></a><span class="lineno"> 1602</span> </div><div class="line"><a name="l01603"></a><span class="lineno"> 1603</span> </div><div class="line"><a name="l01627"></a><span class="lineno"> 1627</span> <span class="keywordtype">void</span> <a class="code" href="simpletools_8h.html#afbfa1cfbdb01885472e3f64d26c09ed8">mark</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l01628"></a><span class="lineno"> 1628</span> </div><div class="line"><a name="l01629"></a><span class="lineno"> 1629</span> </div><div class="line"><a name="l01652"></a><span class="lineno"> 1652</span> <span class="keywordtype">int</span> <a class="code" href="simpletools_8h.html#aba16632261a1faa89b62c8d7d11b45cc">timeout</a>(<span class="keywordtype">int</span> time);</div><div class="line"><a name="l01653"></a><span class="lineno"> 1653</span> </div><div class="line"><a name="l01680"></a><span class="lineno"> 1680</span> <span class="keywordtype">void</span> <a class="code" href="simpletools_8h.html#a14f739412d16800b58f14029279e5332">wait</a>(<span class="keywordtype">int</span> time);</div><div class="line"><a name="l01681"></a><span class="lineno"> 1681</span> </div><div class="line"><a name="l01682"></a><span class="lineno"> 1682</span> </div><div class="line"><a name="l01683"></a><span class="lineno"> 1683</span> </div><div class="line"><a name="l01690"></a><span class="lineno"> 1690</span> <span class="preprocessor">#if defined(__cplusplus)</span></div><div class="line"><a name="l01691"></a><span class="lineno"> 1691</span> }</div><div class="line"><a name="l01692"></a><span class="lineno"> 1692</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l01693"></a><span class="lineno"> 1693</span> <span class="comment">/* __cplusplus */</span> </div><div class="line"><a name="l01694"></a><span class="lineno"> 1694</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l01695"></a><span class="lineno"> 1695</span> <span class="comment">/* SIMPLETOOLS_H */</span> </div><div class="line"><a name="l01696"></a><span class="lineno"> 1696</span> </div><div class="ttc" id="simpletools_8h_html_a381e2d58c3d6a1f0fd8129bcc4726804"><div class="ttname"><a href="simpletools_8h.html#a381e2d58c3d6a1f0fd8129bcc4726804">pause</a></div><div class="ttdeci">void pause(int time)</div><div class="ttdoc">Delay cog from moving on to the next statement for a certain length of time. </div></div> <div class="ttc" id="simpletools_8h_html_a493e381735ceb4e0d7914d91d3f0c7af"><div class="ttname"><a href="simpletools_8h.html#a493e381735ceb4e0d7914d91d3f0c7af">st_eeInitFlag</a></div><div class="ttdeci">int st_eeInitFlag</div><div class="ttdoc">Initialization flag used by ee_ functions. </div></div> <div class="ttc" id="simpletools_8h_html_a39f6cd6c7f7965e057926f92a9b2fa29"><div class="ttname"><a href="simpletools_8h.html#a39f6cd6c7f7965e057926f92a9b2fa29">shift_out</a></div><div class="ttdeci">void shift_out(int pinDat, int pinClk, int mode, int bits, int value)</div><div class="ttdoc">Send data to a synchronous serial device. </div></div> <div class="ttc" id="simpletools_8h_html_a9c5d06d96a66ec25c018b469e9c5e06b"><div class="ttname"><a href="simpletools_8h.html#a9c5d06d96a66ec25c018b469e9c5e06b">cog_run</a></div><div class="ttdeci">int * cog_run(void(*function)(void *par), int stacksize)</div><div class="ttdoc">Run a function&#39;s code in the next available cog (processor). </div></div> <div class="ttc" id="simpletools_8h_html_a14f739412d16800b58f14029279e5332"><div class="ttname"><a href="simpletools_8h.html#a14f739412d16800b58f14029279e5332">wait</a></div><div class="ttdeci">void wait(int time)</div><div class="ttdoc">Waits a certain number of time increments from the last call to mark or wait functions (deprecated)...</div></div> <div class="ttc" id="simpletools_8h_html_ac00aa846d252ba311694febd1100bd11"><div class="ttname"><a href="simpletools_8h.html#ac00aa846d252ba311694febd1100bd11">toggle</a></div><div class="ttdeci">unsigned int toggle(int pin)</div><div class="ttdoc">Toggle the output state of the I/O pin. </div></div> <div class="ttc" id="simpletools_8h_html_a8ac788987dc5b2a211a8c84490c72979"><div class="ttname"><a href="simpletools_8h.html#a8ac788987dc5b2a211a8c84490c72979">st_mark</a></div><div class="ttdeci">int st_mark</div><div class="ttdoc">Variable shared by mark and time_out functions. </div></div> <div class="ttc" id="simpletools_8h_html_a9f77582253a5ee75241615296dcf0d05"><div class="ttname"><a href="simpletools_8h.html#a9f77582253a5ee75241615296dcf0d05">get_state</a></div><div class="ttdeci">unsigned int get_state(int pin)</div><div class="ttdoc">Check the state of an I/O pin without setting it to input. </div></div> <div class="ttc" id="simpletools_8h_html_aa845f3e273a492072b625da584924f32"><div class="ttname"><a href="simpletools_8h.html#aa845f3e273a492072b625da584924f32">sd_mount</a></div><div class="ttdeci">int sd_mount(int doPin, int clkPin, int diPin, int csPin)</div><div class="ttdoc">Mount an SD card with the minimal 4-pin interface. For Parallax Learn Site examples, see: SD Card Data and Play WAV Files. </div></div> <div class="ttc" id="simpletools_8h_html_ac4b081567b4d3d054382f88c777d740e"><div class="ttname"><a href="simpletools_8h.html#ac4b081567b4d3d054382f88c777d740e">set_io_dt</a></div><div class="ttdeci">void set_io_dt(long clockticks)</div><div class="ttdoc">Sets the time increment for the following timed I/O functions: count, pulse_in, pulse_out, rc_time. </div></div> <div class="ttc" id="simpletools_8h_html_a7f87d0c6e5e644d9a2ad011e556de1e8"><div class="ttname"><a href="simpletools_8h.html#a7f87d0c6e5e644d9a2ad011e556de1e8">dac_ctr</a></div><div class="ttdeci">void dac_ctr(int pin, int channel, int dacVal)</div><div class="ttdoc">Set D/A voltage. </div></div> <div class="ttc" id="simpletools_8h_html_a97c13d6b776c998bd74286c6a8b774dd"><div class="ttname"><a href="simpletools_8h.html#a97c13d6b776c998bd74286c6a8b774dd">set_direction</a></div><div class="ttdeci">void set_direction(int pin, int direction)</div><div class="ttdoc">Set an I/O pin to a given direction. </div></div> <div class="ttc" id="simpletools_8h_html_adf4323fa7fc0f0bd7ba1163f1d8ab52a"><div class="ttname"><a href="simpletools_8h.html#adf4323fa7fc0f0bd7ba1163f1d8ab52a">i2c_in</a></div><div class="ttdeci">HUBTEXT int i2c_in(i2c *busID, int i2cAddr, int memAddr, int memAddrCount, unsigned char *data, int dataCount)</div><div class="ttdoc">Receive data from device using I2C protocol. </div></div> <div class="ttc" id="simpletools_8h_html_afbfa1cfbdb01885472e3f64d26c09ed8"><div class="ttname"><a href="simpletools_8h.html#afbfa1cfbdb01885472e3f64d26c09ed8">mark</a></div><div class="ttdeci">void mark(void)</div><div class="ttdoc">Mark the current time (deprecated). </div></div> <div class="ttc" id="simpletools_8h_html_a1faf05ad4f74447ecbb557b4ee0c190e"><div class="ttname"><a href="simpletools_8h.html#a1faf05ad4f74447ecbb557b4ee0c190e">get_output</a></div><div class="ttdeci">unsigned int get_output(int pin)</div><div class="ttdoc">Get I/O pin output state. </div></div> <div class="ttc" id="simpletools_8h_html_a521dea91cf2ba911ff66d3074672316f"><div class="ttname"><a href="simpletools_8h.html#a521dea91cf2ba911ff66d3074672316f">square_wave</a></div><div class="ttdeci">void square_wave(int pin, int channel, int freq)</div><div class="ttdoc">Make I/O pin transmit a repeated high/low signal at a certain frequency. High and low times are the s...</div></div> <div class="ttc" id="simpletools_8h_html_aff22a28c433f3857ca116c5286ddab33"><div class="ttname"><a href="simpletools_8h.html#aff22a28c433f3857ca116c5286ddab33">set_directions</a></div><div class="ttdeci">void set_directions(int endPin, int startPin, unsigned int pattern)</div><div class="ttdoc">Set directions for a contiguous group of I/O pins. </div></div> <div class="ttc" id="simpletools_8h_html_ad5ba1e74fdbc69a0578425eb5e176461"><div class="ttname"><a href="simpletools_8h.html#ad5ba1e74fdbc69a0578425eb5e176461">ee_getInt</a></div><div class="ttdeci">int ee_getInt(int addr)</div><div class="ttdoc">Get an int value from a certain address in the Propeller Chip&#39;s dedicated EEPROM. If you are fetching...</div></div> <div class="ttc" id="simpletools_8h_html_a6291bd6f5b751420d414cff05e720ec8"><div class="ttname"><a href="simpletools_8h.html#a6291bd6f5b751420d414cff05e720ec8">square_wave_stop</a></div><div class="ttdeci">void square_wave_stop(void)</div><div class="ttdoc">Stop the cog that&#39;s transmitting a square wave. </div></div> <div class="ttc" id="simpletools_8h_html_a78d00871cfb358e7c1f4fea6fc5d07f5"><div class="ttname"><a href="simpletools_8h.html#a78d00871cfb358e7c1f4fea6fc5d07f5">freqout</a></div><div class="ttdeci">void freqout(int pin, int msTime, int frequency)</div><div class="ttdoc">Use same cog to send square wave of a certain frequency for a certain amount of time. For set and forget with another cog, try square_wave function instead. </div></div> <div class="ttc" id="simpletools_8h_html_a513d04dc00f4a627b851ffd5b660d2d9"><div class="ttname"><a href="simpletools_8h.html#a513d04dc00f4a627b851ffd5b660d2d9">us</a></div><div class="ttdeci">int us</div><div class="ttdoc">Propeller system clock ticks in 1 millisecond (us). </div></div> <div class="ttc" id="simpletools_8h_html_a9a59d35d804a8700b92e7637f55485c5"><div class="ttname"><a href="simpletools_8h.html#a9a59d35d804a8700b92e7637f55485c5">get_states</a></div><div class="ttdeci">unsigned int get_states(int endPin, int startPin)</div><div class="ttdoc">Get states of a contiguous group of I/O pins. </div></div> <div class="ttc" id="simpletools_8h_html_a57f683188c3dd35ee0574ff349835682"><div class="ttname"><a href="simpletools_8h.html#a57f683188c3dd35ee0574ff349835682">pwm_set</a></div><div class="ttdeci">void pwm_set(int pin, int channel, int tHigh)</div><div class="ttdoc">Set a PWM signal&#39;s high time. </div></div> <div class="ttc" id="simpletools_8h_html_ab8fabf8be6c845a7b7500689052f3445"><div class="ttname"><a href="simpletools_8h.html#ab8fabf8be6c845a7b7500689052f3445">st_eeprom</a></div><div class="ttdeci">i2c * st_eeprom</div><div class="ttdoc">The busID for the Propeller Activity Board&#39;s EEPROM bus. </div></div> <div class="ttc" id="simpletools_8h_html_a593162b2f71e2ad23f0a09516cf9a7b4"><div class="ttname"><a href="simpletools_8h.html#a593162b2f71e2ad23f0a09516cf9a7b4">ee_putByte</a></div><div class="ttdeci">void ee_putByte(unsigned char value, int addr)</div><div class="ttdoc">Store a byte value at a certain address in the Propeller Chip&#39;s dedicated EEPROM. ...</div></div> <div class="ttc" id="simpletools_8h_html_aef2876e81b935837260cf651cfeb0b0a"><div class="ttname"><a href="simpletools_8h.html#aef2876e81b935837260cf651cfeb0b0a">get_directions</a></div><div class="ttdeci">unsigned int get_directions(int endPin, int startPin)</div><div class="ttdoc">Get directions for a contiguous group of I/O pins. </div></div> <div class="ttc" id="simpletools_8h_html_a2d8c9b83ae2e87db69fb9138c6c57f57"><div class="ttname"><a href="simpletools_8h.html#a2d8c9b83ae2e87db69fb9138c6c57f57">i2c_out</a></div><div class="ttdeci">HUBTEXT int i2c_out(i2c *busID, int i2cAddr, int memAddr, int memAddrCount, const unsigned char *data, int dataCount)</div><div class="ttdoc">Send data to device using I2C protocol. </div></div> <div class="ttc" id="simpletools_8h_html_a20a9d97de9777b12cfd9353a83ac21cb"><div class="ttname"><a href="simpletools_8h.html#a20a9d97de9777b12cfd9353a83ac21cb">count</a></div><div class="ttdeci">long count(int pin, long duration)</div><div class="ttdoc">Count number of low to high transitions an external input applies to an I/O pin over a certain period...</div></div> <div class="ttc" id="simpletools_8h_html_ab958571c584ab8d846c3a8a2cb326109"><div class="ttname"><a href="simpletools_8h.html#ab958571c584ab8d846c3a8a2cb326109">ee_putStr</a></div><div class="ttdeci">void ee_putStr(unsigned char *s, int n, int addr)</div><div class="ttdoc">Store a string of byte values starting at a certain address in the Propeller Chip&#39;s dedicated EEPROM...</div></div> <div class="ttc" id="simpletools_8h_html_a37edfbadb336de010e4cfdecdeca6148"><div class="ttname"><a href="simpletools_8h.html#a37edfbadb336de010e4cfdecdeca6148">dac_ctr_stop</a></div><div class="ttdeci">void dac_ctr_stop(void)</div><div class="ttdoc">Stop the cog that&#39;s transmitting the DAC signal(s). </div></div> <div class="ttc" id="simpletools_8h_html_af2b2c5f5c8559b5f2957239f2c2e663d"><div class="ttname"><a href="simpletools_8h.html#af2b2c5f5c8559b5f2957239f2c2e663d">input</a></div><div class="ttdeci">int input(int pin)</div><div class="ttdoc">Set an I/O pin to input and return 1 if pin detects a high signal, or 0 if it detects low...</div></div> <div class="ttc" id="simpletools_8h_html_aec8f4f09d7d0222e947bea4b37fc33c2"><div class="ttname"><a href="simpletools_8h.html#aec8f4f09d7d0222e947bea4b37fc33c2">pwm_stop</a></div><div class="ttdeci">void pwm_stop(void)</div><div class="ttdoc">Shut down PWM process and reclaim cog and I/O pins for other uses. </div></div> <div class="ttc" id="simpletools_8h_html_ac796526819c70e498370d9b5ced58394"><div class="ttname"><a href="simpletools_8h.html#ac796526819c70e498370d9b5ced58394">mapFloat</a></div><div class="ttdeci">float mapFloat(float value, float fromMin, float fromMax, float toMin, float toMax)</div><div class="ttdoc">Maps a floating point value from its position in one range to its corresponding. position in a differ...</div></div> <div class="ttc" id="simpletools_8h_html_affa540efbcc63412e456b1ec27bd6ee2"><div class="ttname"><a href="simpletools_8h.html#affa540efbcc63412e456b1ec27bd6ee2">st_pauseTicks</a></div><div class="ttdeci">int st_pauseTicks</div><div class="ttdoc">Clock ticks in a time increment used by pause function. Default value is the number of system clock t...</div></div> <div class="ttc" id="simpletools_8h_html_a04c171fd47bc9149c306576c349de680"><div class="ttname"><a href="simpletools_8h.html#a04c171fd47bc9149c306576c349de680">set_pause_dt</a></div><div class="ttdeci">void set_pause_dt(int clockticks)</div><div class="ttdoc">Set time increment for pause function. </div></div> <div class="ttc" id="simpletools_8h_html_a7c7858c120d81da92771560bd50c54d6"><div class="ttname"><a href="simpletools_8h.html#a7c7858c120d81da92771560bd50c54d6">i2c_busy</a></div><div class="ttdeci">HUBTEXT int i2c_busy(i2c *busID, int i2cAddr)</div><div class="ttdoc">Check if I2C device is busy or responding. </div></div> <div class="ttc" id="simpletools_8h_html_af7d62062bce6f1cb4bc03006f8463ba5"><div class="ttname"><a href="simpletools_8h.html#af7d62062bce6f1cb4bc03006f8463ba5">pulse_out</a></div><div class="ttdeci">void pulse_out(int pin, int time)</div><div class="ttdoc">Transmit a pulse with an I/O pin. </div></div> <div class="ttc" id="simpletools_8h_html_ad5f7522ca251c3cf3d7fd903fcdb5bbe"><div class="ttname"><a href="simpletools_8h.html#ad5f7522ca251c3cf3d7fd903fcdb5bbe">rc_time</a></div><div class="ttdeci">long rc_time(int pin, int state)</div><div class="ttdoc">Set I/O pin to input and measure the time it takes a signal to transition from a start state to the o...</div></div> <div class="ttc" id="simpletools_8h_html_ac1042df969c1f5bffa816fdf068c4ed9"><div class="ttname"><a href="simpletools_8h.html#ac1042df969c1f5bffa816fdf068c4ed9">ee_getByte</a></div><div class="ttdeci">char ee_getByte(int addr)</div><div class="ttdoc">Get a byte value from a certain address in the Propeller Chip&#39;s dedicated EEPROM. ...</div></div> <div class="ttc" id="simpletools_8h_html_abe4291907fc0563f65a1f3ed85fb878d"><div class="ttname"><a href="simpletools_8h.html#abe4291907fc0563f65a1f3ed85fb878d">reverse</a></div><div class="ttdeci">unsigned int reverse(int pin)</div><div class="ttdoc">Reverse the direction of an I/O pin. </div></div> <div class="ttc" id="simpletools_8h_html_a2ccfd8aa1b8c5e7d58ee2dbfa3ecebe5"><div class="ttname"><a href="simpletools_8h.html#a2ccfd8aa1b8c5e7d58ee2dbfa3ecebe5">pwm_start</a></div><div class="ttdeci">int pwm_start(unsigned int cycleMicroseconds)</div><div class="ttdoc">Start pulse width modulation (PWM) process in another cog. </div></div> <div class="ttc" id="simpletools_8h_html_a3b2519615c155ff4d679ada82e179f59"><div class="ttname"><a href="simpletools_8h.html#a3b2519615c155ff4d679ada82e179f59">mapInt</a></div><div class="ttdeci">int mapInt(int value, int fromMin, int fromMax, int toMin, int toMax)</div><div class="ttdoc">Maps an integer value from its position in one range to its corresponding. position in a different ra...</div></div> <div class="ttc" id="simpletools_8h_html_af8ef60ed622a82bab16bea03cddc2340"><div class="ttname"><a href="simpletools_8h.html#af8ef60ed622a82bab16bea03cddc2340">dac_ctr_res</a></div><div class="ttdeci">void dac_ctr_res(int bits)</div><div class="ttdoc">Set D/A voltage resolution. </div></div> <div class="ttc" id="simpletools_8h_html_a3da63e55d0799ab30686bf38a5f15d43"><div class="ttname"><a href="simpletools_8h.html#a3da63e55d0799ab30686bf38a5f15d43">ee_getFloat32</a></div><div class="ttdeci">float ee_getFloat32(int addr)</div><div class="ttdoc">Fetch a 32-bit precision floating point value from a certain address in the Propeller Chip&#39;s dedicate...</div></div> <div class="ttc" id="simpletools_8h_html_ab0384787b04fec1080968ce1307aa20d"><div class="ttname"><a href="simpletools_8h.html#ab0384787b04fec1080968ce1307aa20d">st_buscnt</a></div><div class="ttdeci">unsigned int st_buscnt</div><div class="ttdoc">Variable used by i2c_newbus. </div></div> <div class="ttc" id="simpletools_8h_html_a8bfda7c99c6beef44af33728448fd7ad"><div class="ttname"><a href="simpletools_8h.html#a8bfda7c99c6beef44af33728448fd7ad">st_usTicks</a></div><div class="ttdeci">int st_usTicks</div><div class="ttdoc">Propeller system clock ticks in 1 microsecond. Changing this value is not recommended because it can ...</div></div> <div class="ttc" id="simpletools_8h_html_a5b2cba6f29a9955c55ab239066e30e7f"><div class="ttname"><a href="simpletools_8h.html#a5b2cba6f29a9955c55ab239066e30e7f">cog_end</a></div><div class="ttdeci">void cog_end(int *coginfo)</div><div class="ttdoc">End function code running in another cog that was launched with cog_run. </div></div> <div class="ttc" id="simpletools_8h_html_ae251e0a94359068f5e56682311ef4201"><div class="ttname"><a href="simpletools_8h.html#ae251e0a94359068f5e56682311ef4201">pulse_in</a></div><div class="ttdeci">long pulse_in(int pin, int state)</div><div class="ttdoc">Measure the duration of a pulse applied to an I/O pin. </div></div> <div class="ttc" id="simpletools_8h_html_a2d5010e62531065fa13124e23dbfb176"><div class="ttname"><a href="simpletools_8h.html#a2d5010e62531065fa13124e23dbfb176">term_cmd</a></div><div class="ttdeci">void term_cmd(int termConst,...)</div><div class="ttdoc">Send a command to SimpleIDE Terminal. Examples of commands include HOME, CLS, BKSP, CRSRXY, and others. All sixteen are listed in the SimpleIDE Terminal Constants section above. Click the term_cmd link to go to the details section and see parameter descriptions and code examples. </div></div> <div class="ttc" id="simpletools_8h_html_a1a8552078613643aa85fda8bd7c93076"><div class="ttname"><a href="simpletools_8h.html#a1a8552078613643aa85fda8bd7c93076">ms</a></div><div class="ttdeci">int ms</div><div class="ttdoc">Propeller system clock ticks in 1 millisecond (ms). </div></div> <div class="ttc" id="simpletools_8h_html_a288d762194e0bad67f4f37ba43f57292"><div class="ttname"><a href="simpletools_8h.html#a288d762194e0bad67f4f37ba43f57292">set_io_timeout</a></div><div class="ttdeci">void set_io_timeout(long clockTicks)</div><div class="ttdoc">Sets the timeout value for the following timed I/O functions: pulse_in, rc_time. </div></div> <div class="ttc" id="simpletools_8h_html_ac21155c6ac6136e0300141f0c1e059eb"><div class="ttname"><a href="simpletools_8h.html#ac21155c6ac6136e0300141f0c1e059eb">endianSwap</a></div><div class="ttdeci">void endianSwap(void *resultAddr, void *varAddr, int byteCount)</div><div class="ttdoc">Take bytes in one variable at varAddr, swap their order, and store them in another variable at result...</div></div> <div class="ttc" id="simpletools_8h_html_aa3e6b702137ad730e834bce8a114a550"><div class="ttname"><a href="simpletools_8h.html#aa3e6b702137ad730e834bce8a114a550">get_direction</a></div><div class="ttdeci">unsigned int get_direction(int pin)</div><div class="ttdoc">Check the direction of the I/O pin. </div></div> <div class="ttc" id="simpletools_8h_html_a10a9a5cd4767ffd7a82c9acd2b9485b2"><div class="ttname"><a href="simpletools_8h.html#a10a9a5cd4767ffd7a82c9acd2b9485b2">ee_putFloat32</a></div><div class="ttdeci">void ee_putFloat32(float value, int addr)</div><div class="ttdoc">Store a 32-bit precision floating point value at a certain address in the Propeller Chip&#39;s dedicated ...</div></div> <div class="ttc" id="simpletools_8h_html_a3faa206c9a2381e34baf4473028df149"><div class="ttname"><a href="simpletools_8h.html#a3faa206c9a2381e34baf4473028df149">ee_config</a></div><div class="ttdeci">void ee_config(int sclPin, int sdaPin, int sclDrive)</div><div class="ttdoc">Optional function for setting a custom EEPROM configuration. Other ee_ functions automatically check ...</div></div> <div class="ttc" id="simpletools_8h_html_a0b26ead266d0f73aadd8f1482a407ad5"><div class="ttname"><a href="simpletools_8h.html#a0b26ead266d0f73aadd8f1482a407ad5">st_iodt</a></div><div class="ttdeci">int st_iodt</div><div class="ttdoc">Clock ticks in a time increment used by pulse_in, pulse_out, and rc_time. Default value is the number...</div></div> <div class="ttc" id="simpletools_8h_html_ab6b4677f42acfb2273127492d13a7e05"><div class="ttname"><a href="simpletools_8h.html#ab6b4677f42acfb2273127492d13a7e05">low</a></div><div class="ttdeci">void low(int pin)</div><div class="ttdoc">Set an I/O pin to output-low. </div></div> <div class="ttc" id="simpletools_8h_html_abf84ae3d77141e0787ac6322533aa5e2"><div class="ttname"><a href="simpletools_8h.html#abf84ae3d77141e0787ac6322533aa5e2">get_outputs</a></div><div class="ttdeci">unsigned int get_outputs(int endPin, int startPin)</div><div class="ttdoc">Get output settings for a contiguous group of I/O pins. </div></div> <div class="ttc" id="simpletools_8h_html_a4d9825708f3b6cae156e4e5f1e1647f6"><div class="ttname"><a href="simpletools_8h.html#a4d9825708f3b6cae156e4e5f1e1647f6">high</a></div><div class="ttdeci">void high(int pin)</div><div class="ttdoc">Set an I/O pin to output-high. </div></div> <div class="ttc" id="simpletools_8h_html_acbf5fe86eb36a02d4f86df2d3ca8d84d"><div class="ttname"><a href="simpletools_8h.html#acbf5fe86eb36a02d4f86df2d3ca8d84d">set_outputs</a></div><div class="ttdeci">void set_outputs(int endPin, int startPin, unsigned int pattern)</div><div class="ttdoc">Set output states for a contiguous group of I/O pins. </div></div> <div class="ttc" id="simpletools_8h_html_a2608f553978382b7abdccfc62be3e75c"><div class="ttname"><a href="simpletools_8h.html#a2608f553978382b7abdccfc62be3e75c">st_timeout</a></div><div class="ttdeci">int st_timeout</div><div class="ttdoc">Clock ticks in a time increment used by pulse_in, pulse_out, and rc_time. Default value is the number...</div></div> <div class="ttc" id="simpletools_8h_html_a4fca5193934cbc3b7fce7bfca131302d"><div class="ttname"><a href="simpletools_8h.html#a4fca5193934cbc3b7fce7bfca131302d">shift_in</a></div><div class="ttdeci">int shift_in(int pinDat, int pinClk, int mode, int bits)</div><div class="ttdoc">Receive data from a synchronous serial device. </div></div> <div class="ttc" id="simpletools_8h_html_ae7d81fb2f6c983b524efd3b9ea1b9635"><div class="ttname"><a href="simpletools_8h.html#ae7d81fb2f6c983b524efd3b9ea1b9635">random</a></div><div class="ttdeci">int random(int limitLow, int limitHigh)</div><div class="ttdoc">Generates a pseudo-random integer value that falls in a range from limitLow to limitHigh. This function uses the system clock and I/O registers to create a new seed with each call, so it is very unlikely to generate the same sequence twice in a row. </div></div> <div class="ttc" id="simpletools_8h_html_a016272b69e2e657a35621cfb815661d3"><div class="ttname"><a href="simpletools_8h.html#a016272b69e2e657a35621cfb815661d3">set_output</a></div><div class="ttdeci">void set_output(int pin, int state)</div><div class="ttdoc">Set I/O pin output register bit to either 1 or 0. </div></div> <div class="ttc" id="simpletools_8h_html_aba16632261a1faa89b62c8d7d11b45cc"><div class="ttname"><a href="simpletools_8h.html#aba16632261a1faa89b62c8d7d11b45cc">timeout</a></div><div class="ttdeci">int timeout(int time)</div><div class="ttdoc">Compares the time against the time elapsed since mark (deprecated). </div></div> <div class="ttc" id="simpletools_8h_html_a270cba7176199e76e536cc9c5ebff5b5"><div class="ttname"><a href="simpletools_8h.html#a270cba7176199e76e536cc9c5ebff5b5">st_msTicks</a></div><div class="ttdeci">int st_msTicks</div><div class="ttdoc">Propeller system clock ticks in 1 millisecond. Changing this value is not recommended because it can ...</div></div> <div class="ttc" id="simpletools_8h_html_adf44a20755432a25076e28e94b809264"><div class="ttname"><a href="simpletools_8h.html#adf44a20755432a25076e28e94b809264">ee_putInt</a></div><div class="ttdeci">void ee_putInt(int value, int addr)</div><div class="ttdoc">Store an int value at a certain address in the Propeller Chip&#39;s dedicated EEPROM. An int value occupi...</div></div> <div class="ttc" id="simpletools_8h_html_ad260529b4817b8bc40d280053d921a9e"><div class="ttname"><a href="simpletools_8h.html#ad260529b4817b8bc40d280053d921a9e">cog_num</a></div><div class="ttdeci">int cog_num(int *coginfo)</div><div class="ttdoc">Get the cog ID. </div></div> <div class="ttc" id="simpletools_8h_html_a0f02473c77ebed4ad04f829eff27985c"><div class="ttname"><a href="simpletools_8h.html#a0f02473c77ebed4ad04f829eff27985c">i2c_newbus</a></div><div class="ttdeci">i2c * i2c_newbus(int sclPin, int sdaPin, int sclDrive)</div><div class="ttdoc">Set up a simple serial driver with transmit & receive pins. </div></div> <div class="ttc" id="simpletools_8h_html_a25730b861c0b0ea93e23e25c37adc29d"><div class="ttname"><a href="simpletools_8h.html#a25730b861c0b0ea93e23e25c37adc29d">constrainFloat</a></div><div class="ttdeci">float constrainFloat(float value, float min, float max)</div><div class="ttdoc">Constrains a floating point value to a range from a minimum value to a maximum value. If the value is above the max constraint, this function returns the maximum constraint value. If the value is below the min constraint, it returns the minimum constraint value. If value falls between the max and min constraints, it returns the same value that was received. </div></div> <div class="ttc" id="simpletools_8h_html_aa90efe9490d68fd4db304c0ac9c1574b"><div class="ttname"><a href="simpletools_8h.html#aa90efe9490d68fd4db304c0ac9c1574b">constrainInt</a></div><div class="ttdeci">int constrainInt(int value, int min, int max)</div><div class="ttdoc">Constrains an integer value to a range from a minimum value to a maximum value. If the value is above...</div></div> <div class="ttc" id="simpletools_8h_html_a6e3fa8a82d1bc2be0828314652debe26"><div class="ttname"><a href="simpletools_8h.html#a6e3fa8a82d1bc2be0828314652debe26">ee_getStr</a></div><div class="ttdeci">unsigned char * ee_getStr(unsigned char *s, int n, int addr)</div><div class="ttdoc">Fetch a string of byte values starting at a certain address in Propeller Chip&#39;s dedicated EEPROM...</div></div> </div><!-- fragment --></div><!-- contents --> <!-- start footer part --> <hr class="footer"/><address class="footer"><small> Generated on Mon May 14 2018 15:42:33 for simpletools library by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/> </a> 1.8.13 </small></address> </body> </html>