Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

1110 lines
47KB

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
  5. <meta http-equiv="X-UA-Compatible" content="IE=9"/>
  6. <meta name="generator" content="Doxygen 1.8.10"/>
  7. <title>SdFat: SdBlockDriverEX Class Reference</title>
  8. <link href="tabs.css" rel="stylesheet" type="text/css"/>
  9. <script type="text/javascript" src="jquery.js"></script>
  10. <script type="text/javascript" src="dynsections.js"></script>
  11. <link href="search/search.css" rel="stylesheet" type="text/css"/>
  12. <script type="text/javascript" src="search/searchdata.js"></script>
  13. <script type="text/javascript" src="search/search.js"></script>
  14. <script type="text/javascript">
  15. $(document).ready(function() { init_search(); });
  16. </script>
  17. <link href="doxygen.css" rel="stylesheet" type="text/css" />
  18. </head>
  19. <body>
  20. <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
  21. <div id="titlearea">
  22. <table cellspacing="0" cellpadding="0">
  23. <tbody>
  24. <tr style="height: 56px;">
  25. <td id="projectalign" style="padding-left: 0.5em;">
  26. <div id="projectname">SdFat
  27. </div>
  28. </td>
  29. </tr>
  30. </tbody>
  31. </table>
  32. </div>
  33. <!-- end header part -->
  34. <!-- Generated by Doxygen 1.8.10 -->
  35. <script type="text/javascript">
  36. var searchBox = new SearchBox("searchBox", "search",false,'Search');
  37. </script>
  38. <div id="navrow1" class="tabs">
  39. <ul class="tablist">
  40. <li><a href="index.html"><span>Main&#160;Page</span></a></li>
  41. <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
  42. <li><a href="files.html"><span>Files</span></a></li>
  43. <li>
  44. <div id="MSearchBox" class="MSearchBoxInactive">
  45. <span class="left">
  46. <img id="MSearchSelect" src="search/mag_sel.png"
  47. onmouseover="return searchBox.OnSearchSelectShow()"
  48. onmouseout="return searchBox.OnSearchSelectHide()"
  49. alt=""/>
  50. <input type="text" id="MSearchField" value="Search" accesskey="S"
  51. onfocus="searchBox.OnSearchFieldFocus(true)"
  52. onblur="searchBox.OnSearchFieldFocus(false)"
  53. onkeyup="searchBox.OnSearchFieldChange(event)"/>
  54. </span><span class="right">
  55. <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
  56. </span>
  57. </div>
  58. </li>
  59. </ul>
  60. </div>
  61. <div id="navrow2" class="tabs2">
  62. <ul class="tablist">
  63. <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
  64. <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
  65. <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
  66. </ul>
  67. </div>
  68. <!-- window showing the filter options -->
  69. <div id="MSearchSelectWindow"
  70. onmouseover="return searchBox.OnSearchSelectShow()"
  71. onmouseout="return searchBox.OnSearchSelectHide()"
  72. onkeydown="return searchBox.OnSearchSelectKey(event)">
  73. </div>
  74. <!-- iframe showing the search results (closed by default) -->
  75. <div id="MSearchResultsWindow">
  76. <iframe src="javascript:void(0)" frameborder="0"
  77. name="MSearchResults" id="MSearchResults">
  78. </iframe>
  79. </div>
  80. </div><!-- top -->
  81. <div class="header">
  82. <div class="summary">
  83. <a href="#pub-methods">Public Member Functions</a> &#124;
  84. <a href="class_sd_block_driver_e_x-members.html">List of all members</a> </div>
  85. <div class="headertitle">
  86. <div class="title">SdBlockDriverEX Class Reference</div> </div>
  87. </div><!--header-->
  88. <div class="contents">
  89. <p>Extended SD I/O block driver.
  90. <a href="class_sd_block_driver_e_x.html#details">More...</a></p>
  91. <p><code>#include &lt;BlockDriver.h&gt;</code></p>
  92. <div class="dynheader">
  93. Inheritance diagram for SdBlockDriverEX:</div>
  94. <div class="dyncontent">
  95. <div class="center"><img src="class_sd_block_driver_e_x__inherit__graph.png" border="0" usemap="#_sd_block_driver_e_x_inherit__map" alt="Inheritance graph"/></div>
  96. <map name="_sd_block_driver_e_x_inherit__map" id="_sd_block_driver_e_x_inherit__map">
  97. <area shape="rect" id="node2" href="class_sd_spi_card.html" title="Raw access to SD and SDHC flash memory cards via SPI protocol. " alt="" coords="5,5,89,32"/>
  98. <area shape="rect" id="node3" href="class_base_block_driver.html" title="Base block driver. " alt="" coords="114,5,231,32"/>
  99. </map>
  100. <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
  101. <div class="dynheader">
  102. Collaboration diagram for SdBlockDriverEX:</div>
  103. <div class="dyncontent">
  104. <div class="center"><img src="class_sd_block_driver_e_x__coll__graph.png" border="0" usemap="#_sd_block_driver_e_x_coll__map" alt="Collaboration graph"/></div>
  105. <map name="_sd_block_driver_e_x_coll__map" id="_sd_block_driver_e_x_coll__map">
  106. <area shape="rect" id="node2" href="class_sd_spi_card.html" title="Raw access to SD and SDHC flash memory cards via SPI protocol. " alt="" coords="5,5,89,32"/>
  107. <area shape="rect" id="node3" href="class_base_block_driver.html" title="Base block driver. " alt="" coords="114,5,231,32"/>
  108. </map>
  109. <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
  110. <table class="memberdecls">
  111. <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
  112. Public Member Functions</h2></td></tr>
  113. <tr class="memitem:a7c8131750a5b1087375aa31f59564fae"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sd_spi_card.html#a7c8131750a5b1087375aa31f59564fae">begin</a> (<a class="el" href="_sd_spi_driver_8h.html#abf391604c1ecfed19cdcb6c8bd626972">SdSpiDriver</a> *spiDriver)</td></tr>
  114. <tr class="separator:a7c8131750a5b1087375aa31f59564fae"><td class="memSeparator" colspan="2">&#160;</td></tr>
  115. <tr class="memitem:ac50aca6cdf4140c26bb59aecc3973e53"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sd_block_driver_e_x.html#ac50aca6cdf4140c26bb59aecc3973e53">begin</a> (<a class="el" href="_sd_spi_driver_8h.html#abf391604c1ecfed19cdcb6c8bd626972">SdSpiDriver</a> *spi, uint8_t csPin, SPISettings spiSettings)</td></tr>
  116. <tr class="separator:ac50aca6cdf4140c26bb59aecc3973e53"><td class="memSeparator" colspan="2">&#160;</td></tr>
  117. <tr class="memitem:afca8bd6b7e465bf9c475ba375c4deec8"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sd_spi_card.html#afca8bd6b7e465bf9c475ba375c4deec8">cardSize</a> ()</td></tr>
  118. <tr class="separator:afca8bd6b7e465bf9c475ba375c4deec8"><td class="memSeparator" colspan="2">&#160;</td></tr>
  119. <tr class="memitem:a1caa13d19df6596b2c0dd62365c75362"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sd_spi_card.html#a1caa13d19df6596b2c0dd62365c75362">erase</a> (uint32_t firstBlock, uint32_t lastBlock)</td></tr>
  120. <tr class="separator:a1caa13d19df6596b2c0dd62365c75362"><td class="memSeparator" colspan="2">&#160;</td></tr>
  121. <tr class="memitem:aed4591884254c9f58daa8738d7c1ccdd"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sd_spi_card.html#aed4591884254c9f58daa8738d7c1ccdd">eraseSingleBlockEnable</a> ()</td></tr>
  122. <tr class="separator:aed4591884254c9f58daa8738d7c1ccdd"><td class="memSeparator" colspan="2">&#160;</td></tr>
  123. <tr class="memitem:aa12ad53111abcb187d3c6119a3a77592"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sd_spi_card.html#aa12ad53111abcb187d3c6119a3a77592">error</a> (uint8_t code)</td></tr>
  124. <tr class="separator:aa12ad53111abcb187d3c6119a3a77592"><td class="memSeparator" colspan="2">&#160;</td></tr>
  125. <tr class="memitem:a50bf5f92223222beacec2b203a6b7a95"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sd_spi_card.html#a50bf5f92223222beacec2b203a6b7a95">errorCode</a> () const </td></tr>
  126. <tr class="separator:a50bf5f92223222beacec2b203a6b7a95"><td class="memSeparator" colspan="2">&#160;</td></tr>
  127. <tr class="memitem:a7b1abdb8dd5254cd4af0df19ba59ce4a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sd_spi_card.html#a7b1abdb8dd5254cd4af0df19ba59ce4a">errorData</a> () const </td></tr>
  128. <tr class="separator:a7b1abdb8dd5254cd4af0df19ba59ce4a"><td class="memSeparator" colspan="2">&#160;</td></tr>
  129. <tr class="memitem:aa3cb9139dbc1e6596c6717da2b486328"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sd_spi_card.html#aa3cb9139dbc1e6596c6717da2b486328">isBusy</a> ()</td></tr>
  130. <tr class="separator:aa3cb9139dbc1e6596c6717da2b486328"><td class="memSeparator" colspan="2">&#160;</td></tr>
  131. <tr class="memitem:a2820c15543b0e1950961b72945ade853"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sd_block_driver_e_x.html#a2820c15543b0e1950961b72945ade853">readBlock</a> (uint32_t block, uint8_t *dst)</td></tr>
  132. <tr class="separator:a2820c15543b0e1950961b72945ade853"><td class="memSeparator" colspan="2">&#160;</td></tr>
  133. <tr class="memitem:a39941dac40896a2c11e49e650d0e6057"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sd_block_driver_e_x.html#a39941dac40896a2c11e49e650d0e6057">readBlocks</a> (uint32_t block, uint8_t *dst, size_t nb)</td></tr>
  134. <tr class="separator:a39941dac40896a2c11e49e650d0e6057"><td class="memSeparator" colspan="2">&#160;</td></tr>
  135. <tr class="memitem:aa073dc42828164883db1b9faeff909ea"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sd_spi_card.html#aa073dc42828164883db1b9faeff909ea">readCID</a> (cid_t *cid)</td></tr>
  136. <tr class="separator:aa073dc42828164883db1b9faeff909ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
  137. <tr class="memitem:a9fbea9525e70f6e3602fe5153a5a1290"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sd_spi_card.html#a9fbea9525e70f6e3602fe5153a5a1290">readCSD</a> (csd_t *csd)</td></tr>
  138. <tr class="separator:a9fbea9525e70f6e3602fe5153a5a1290"><td class="memSeparator" colspan="2">&#160;</td></tr>
  139. <tr class="memitem:a3a1d1b4b4ceb42fcd41aaf6649482770"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sd_spi_card.html#a3a1d1b4b4ceb42fcd41aaf6649482770">readData</a> (uint8_t *dst)</td></tr>
  140. <tr class="separator:a3a1d1b4b4ceb42fcd41aaf6649482770"><td class="memSeparator" colspan="2">&#160;</td></tr>
  141. <tr class="memitem:ab446e49338b3ce834a750ac6dae35f61"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sd_spi_card.html#ab446e49338b3ce834a750ac6dae35f61">readOCR</a> (uint32_t *ocr)</td></tr>
  142. <tr class="separator:ab446e49338b3ce834a750ac6dae35f61"><td class="memSeparator" colspan="2">&#160;</td></tr>
  143. <tr class="memitem:a3b1710d11496c32ba4323831e00ac6d1"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sd_spi_card.html#a3b1710d11496c32ba4323831e00ac6d1">readStart</a> (uint32_t blockNumber)</td></tr>
  144. <tr class="separator:a3b1710d11496c32ba4323831e00ac6d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
  145. <tr class="memitem:a91d0413599efe0d63c8c2dfe4a12d9ae"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sd_spi_card.html#a91d0413599efe0d63c8c2dfe4a12d9ae">readStatus</a> (uint8_t *status)</td></tr>
  146. <tr class="separator:a91d0413599efe0d63c8c2dfe4a12d9ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
  147. <tr class="memitem:afdac7c399fa1ba3f904cf503526e007e"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sd_spi_card.html#afdac7c399fa1ba3f904cf503526e007e">readStop</a> ()</td></tr>
  148. <tr class="separator:afdac7c399fa1ba3f904cf503526e007e"><td class="memSeparator" colspan="2">&#160;</td></tr>
  149. <tr class="memitem:aa39feb6ebb269071ac6843a424ac311c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sd_spi_card.html#aa39feb6ebb269071ac6843a424ac311c">spiStart</a> ()</td></tr>
  150. <tr class="separator:aa39feb6ebb269071ac6843a424ac311c"><td class="memSeparator" colspan="2">&#160;</td></tr>
  151. <tr class="memitem:a1033a4a68d38f52dddf6a1764fcca3e1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sd_spi_card.html#a1033a4a68d38f52dddf6a1764fcca3e1">spiStop</a> ()</td></tr>
  152. <tr class="separator:a1033a4a68d38f52dddf6a1764fcca3e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
  153. <tr class="memitem:a5386776abfa49ac81d1706f9ac1149c8"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sd_block_driver_e_x.html#a5386776abfa49ac81d1706f9ac1149c8">syncBlocks</a> ()</td></tr>
  154. <tr class="separator:a5386776abfa49ac81d1706f9ac1149c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
  155. <tr class="memitem:a061d92bf154a1863a6321385b7505f6e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sd_spi_card.html#a061d92bf154a1863a6321385b7505f6e">type</a> () const </td></tr>
  156. <tr class="separator:a061d92bf154a1863a6321385b7505f6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
  157. <tr class="memitem:a21411fd0ddb394d6093b284af739e46c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sd_block_driver_e_x.html#a21411fd0ddb394d6093b284af739e46c">writeBlock</a> (uint32_t block, const uint8_t *src)</td></tr>
  158. <tr class="separator:a21411fd0ddb394d6093b284af739e46c"><td class="memSeparator" colspan="2">&#160;</td></tr>
  159. <tr class="memitem:ac91f223488f7b76b11f4f52335ce9730"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sd_block_driver_e_x.html#ac91f223488f7b76b11f4f52335ce9730">writeBlocks</a> (uint32_t block, const uint8_t *src, size_t nb)</td></tr>
  160. <tr class="separator:ac91f223488f7b76b11f4f52335ce9730"><td class="memSeparator" colspan="2">&#160;</td></tr>
  161. <tr class="memitem:a9495c0b148eb380358bb4a9721c0dffa"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sd_spi_card.html#a9495c0b148eb380358bb4a9721c0dffa">writeData</a> (const uint8_t *src)</td></tr>
  162. <tr class="separator:a9495c0b148eb380358bb4a9721c0dffa"><td class="memSeparator" colspan="2">&#160;</td></tr>
  163. <tr class="memitem:a56d4750a5d2f693943eec985cb61ffe2"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sd_spi_card.html#a56d4750a5d2f693943eec985cb61ffe2">writeStart</a> (uint32_t blockNumber)</td></tr>
  164. <tr class="separator:a56d4750a5d2f693943eec985cb61ffe2"><td class="memSeparator" colspan="2">&#160;</td></tr>
  165. <tr class="memitem:a8bf0dc991308dcd2a7427bad89a9e2ba"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sd_spi_card.html#a8bf0dc991308dcd2a7427bad89a9e2ba">writeStart</a> (uint32_t blockNumber, uint32_t eraseCount)</td></tr>
  166. <tr class="separator:a8bf0dc991308dcd2a7427bad89a9e2ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
  167. <tr class="memitem:aef9154785a4de5560fb807e4f9316fb0"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sd_spi_card.html#aef9154785a4de5560fb807e4f9316fb0">writeStop</a> ()</td></tr>
  168. <tr class="separator:aef9154785a4de5560fb807e4f9316fb0"><td class="memSeparator" colspan="2">&#160;</td></tr>
  169. </table>
  170. <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
  171. <div class="textblock"><p>Extended SD I/O block driver. </p>
  172. </div><h2 class="groupheader">Member Function Documentation</h2>
  173. <a class="anchor" id="a7c8131750a5b1087375aa31f59564fae"></a>
  174. <div class="memitem">
  175. <div class="memproto">
  176. <table class="mlabels">
  177. <tr>
  178. <td class="mlabels-left">
  179. <table class="memname">
  180. <tr>
  181. <td class="memname">bool SdSpiCard::begin </td>
  182. <td>(</td>
  183. <td class="paramtype"><a class="el" href="_sd_spi_driver_8h.html#abf391604c1ecfed19cdcb6c8bd626972">SdSpiDriver</a> *&#160;</td>
  184. <td class="paramname"><em>spiDriver</em></td><td>)</td>
  185. <td></td>
  186. </tr>
  187. </table>
  188. </td>
  189. <td class="mlabels-right">
  190. <span class="mlabels"><span class="mlabel">inherited</span></span> </td>
  191. </tr>
  192. </table>
  193. </div><div class="memdoc">
  194. <p>Initialize the SD card. </p><dl class="params"><dt>Parameters</dt><dd>
  195. <table class="params">
  196. <tr><td class="paramdir">[in]</td><td class="paramname">spiDriver</td><td>SPI driver for card. </td></tr>
  197. </table>
  198. </dd>
  199. </dl>
  200. <dl class="section return"><dt>Returns</dt><dd>true for success else false. </dd></dl>
  201. </div>
  202. </div>
  203. <a class="anchor" id="ac50aca6cdf4140c26bb59aecc3973e53"></a>
  204. <div class="memitem">
  205. <div class="memproto">
  206. <table class="mlabels">
  207. <tr>
  208. <td class="mlabels-left">
  209. <table class="memname">
  210. <tr>
  211. <td class="memname">bool SdBlockDriverEX::begin </td>
  212. <td>(</td>
  213. <td class="paramtype"><a class="el" href="_sd_spi_driver_8h.html#abf391604c1ecfed19cdcb6c8bd626972">SdSpiDriver</a> *&#160;</td>
  214. <td class="paramname"><em>spi</em>, </td>
  215. </tr>
  216. <tr>
  217. <td class="paramkey"></td>
  218. <td></td>
  219. <td class="paramtype">uint8_t&#160;</td>
  220. <td class="paramname"><em>csPin</em>, </td>
  221. </tr>
  222. <tr>
  223. <td class="paramkey"></td>
  224. <td></td>
  225. <td class="paramtype">SPISettings&#160;</td>
  226. <td class="paramname"><em>spiSettings</em>&#160;</td>
  227. </tr>
  228. <tr>
  229. <td></td>
  230. <td>)</td>
  231. <td></td><td></td>
  232. </tr>
  233. </table>
  234. </td>
  235. <td class="mlabels-right">
  236. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  237. </tr>
  238. </table>
  239. </div><div class="memdoc">
  240. <p>Initialize the SD card</p>
  241. <dl class="params"><dt>Parameters</dt><dd>
  242. <table class="params">
  243. <tr><td class="paramdir">[in]</td><td class="paramname">spi</td><td>SPI driver. </td></tr>
  244. <tr><td class="paramdir">[in]</td><td class="paramname">csPin</td><td>Card chip select pin number. </td></tr>
  245. <tr><td class="paramdir">[in]</td><td class="paramname">spiSettings</td><td>SPI speed, mode, and bit order. </td></tr>
  246. </table>
  247. </dd>
  248. </dl>
  249. <dl class="section return"><dt>Returns</dt><dd>The value true is returned for success and the value false is returned for failure. </dd></dl>
  250. </div>
  251. </div>
  252. <a class="anchor" id="afca8bd6b7e465bf9c475ba375c4deec8"></a>
  253. <div class="memitem">
  254. <div class="memproto">
  255. <table class="mlabels">
  256. <tr>
  257. <td class="mlabels-left">
  258. <table class="memname">
  259. <tr>
  260. <td class="memname">uint32_t SdSpiCard::cardSize </td>
  261. <td>(</td>
  262. <td class="paramname"></td><td>)</td>
  263. <td></td>
  264. </tr>
  265. </table>
  266. </td>
  267. <td class="mlabels-right">
  268. <span class="mlabels"><span class="mlabel">inherited</span></span> </td>
  269. </tr>
  270. </table>
  271. </div><div class="memdoc">
  272. <p>Determine the size of an SD flash memory card.</p>
  273. <dl class="section return"><dt>Returns</dt><dd>The number of 512 byte data blocks in the card or zero if an error occurs. </dd></dl>
  274. </div>
  275. </div>
  276. <a class="anchor" id="a1caa13d19df6596b2c0dd62365c75362"></a>
  277. <div class="memitem">
  278. <div class="memproto">
  279. <table class="mlabels">
  280. <tr>
  281. <td class="mlabels-left">
  282. <table class="memname">
  283. <tr>
  284. <td class="memname">bool SdSpiCard::erase </td>
  285. <td>(</td>
  286. <td class="paramtype">uint32_t&#160;</td>
  287. <td class="paramname"><em>firstBlock</em>, </td>
  288. </tr>
  289. <tr>
  290. <td class="paramkey"></td>
  291. <td></td>
  292. <td class="paramtype">uint32_t&#160;</td>
  293. <td class="paramname"><em>lastBlock</em>&#160;</td>
  294. </tr>
  295. <tr>
  296. <td></td>
  297. <td>)</td>
  298. <td></td><td></td>
  299. </tr>
  300. </table>
  301. </td>
  302. <td class="mlabels-right">
  303. <span class="mlabels"><span class="mlabel">inherited</span></span> </td>
  304. </tr>
  305. </table>
  306. </div><div class="memdoc">
  307. <p>Erase a range of blocks.</p>
  308. <dl class="params"><dt>Parameters</dt><dd>
  309. <table class="params">
  310. <tr><td class="paramdir">[in]</td><td class="paramname">firstBlock</td><td>The address of the first block in the range. </td></tr>
  311. <tr><td class="paramdir">[in]</td><td class="paramname">lastBlock</td><td>The address of the last block in the range.</td></tr>
  312. </table>
  313. </dd>
  314. </dl>
  315. <dl class="section note"><dt>Note</dt><dd>This function requests the SD card to do a flash erase for a range of blocks. The data on the card after an erase operation is either 0 or 1, depends on the card vendor. The card must support single block erase.</dd></dl>
  316. <dl class="section return"><dt>Returns</dt><dd>The value true is returned for success and the value false is returned for failure. </dd></dl>
  317. </div>
  318. </div>
  319. <a class="anchor" id="aed4591884254c9f58daa8738d7c1ccdd"></a>
  320. <div class="memitem">
  321. <div class="memproto">
  322. <table class="mlabels">
  323. <tr>
  324. <td class="mlabels-left">
  325. <table class="memname">
  326. <tr>
  327. <td class="memname">bool SdSpiCard::eraseSingleBlockEnable </td>
  328. <td>(</td>
  329. <td class="paramname"></td><td>)</td>
  330. <td></td>
  331. </tr>
  332. </table>
  333. </td>
  334. <td class="mlabels-right">
  335. <span class="mlabels"><span class="mlabel">inherited</span></span> </td>
  336. </tr>
  337. </table>
  338. </div><div class="memdoc">
  339. <p>Determine if card supports single block erase.</p>
  340. <dl class="section return"><dt>Returns</dt><dd>true is returned if single block erase is supported. false is returned if single block erase is not supported. </dd></dl>
  341. </div>
  342. </div>
  343. <a class="anchor" id="aa12ad53111abcb187d3c6119a3a77592"></a>
  344. <div class="memitem">
  345. <div class="memproto">
  346. <table class="mlabels">
  347. <tr>
  348. <td class="mlabels-left">
  349. <table class="memname">
  350. <tr>
  351. <td class="memname">void SdSpiCard::error </td>
  352. <td>(</td>
  353. <td class="paramtype">uint8_t&#160;</td>
  354. <td class="paramname"><em>code</em></td><td>)</td>
  355. <td></td>
  356. </tr>
  357. </table>
  358. </td>
  359. <td class="mlabels-right">
  360. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td>
  361. </tr>
  362. </table>
  363. </div><div class="memdoc">
  364. <p>Set SD error code. </p><dl class="params"><dt>Parameters</dt><dd>
  365. <table class="params">
  366. <tr><td class="paramdir">[in]</td><td class="paramname">code</td><td>value for error code. </td></tr>
  367. </table>
  368. </dd>
  369. </dl>
  370. </div>
  371. </div>
  372. <a class="anchor" id="a50bf5f92223222beacec2b203a6b7a95"></a>
  373. <div class="memitem">
  374. <div class="memproto">
  375. <table class="mlabels">
  376. <tr>
  377. <td class="mlabels-left">
  378. <table class="memname">
  379. <tr>
  380. <td class="memname">int SdSpiCard::errorCode </td>
  381. <td>(</td>
  382. <td class="paramname"></td><td>)</td>
  383. <td> const</td>
  384. </tr>
  385. </table>
  386. </td>
  387. <td class="mlabels-right">
  388. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td>
  389. </tr>
  390. </table>
  391. </div><div class="memdoc">
  392. <dl class="section return"><dt>Returns</dt><dd>code for the last error. See <a class="el" href="_sd_spi_card_8h.html" title="SdSpiCard class for V2 SD/SDHC cards. ">SdSpiCard.h</a> for a list of error codes. </dd></dl>
  393. </div>
  394. </div>
  395. <a class="anchor" id="a7b1abdb8dd5254cd4af0df19ba59ce4a"></a>
  396. <div class="memitem">
  397. <div class="memproto">
  398. <table class="mlabels">
  399. <tr>
  400. <td class="mlabels-left">
  401. <table class="memname">
  402. <tr>
  403. <td class="memname">int SdSpiCard::errorData </td>
  404. <td>(</td>
  405. <td class="paramname"></td><td>)</td>
  406. <td> const</td>
  407. </tr>
  408. </table>
  409. </td>
  410. <td class="mlabels-right">
  411. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td>
  412. </tr>
  413. </table>
  414. </div><div class="memdoc">
  415. <dl class="section return"><dt>Returns</dt><dd>error data for last error. </dd></dl>
  416. </div>
  417. </div>
  418. <a class="anchor" id="aa3cb9139dbc1e6596c6717da2b486328"></a>
  419. <div class="memitem">
  420. <div class="memproto">
  421. <table class="mlabels">
  422. <tr>
  423. <td class="mlabels-left">
  424. <table class="memname">
  425. <tr>
  426. <td class="memname">bool SdSpiCard::isBusy </td>
  427. <td>(</td>
  428. <td class="paramname"></td><td>)</td>
  429. <td></td>
  430. </tr>
  431. </table>
  432. </td>
  433. <td class="mlabels-right">
  434. <span class="mlabels"><span class="mlabel">inherited</span></span> </td>
  435. </tr>
  436. </table>
  437. </div><div class="memdoc">
  438. <p>Check for busy. MISO low indicates the card is busy.</p>
  439. <dl class="section return"><dt>Returns</dt><dd>true if busy else false. </dd></dl>
  440. </div>
  441. </div>
  442. <a class="anchor" id="a2820c15543b0e1950961b72945ade853"></a>
  443. <div class="memitem">
  444. <div class="memproto">
  445. <table class="mlabels">
  446. <tr>
  447. <td class="mlabels-left">
  448. <table class="memname">
  449. <tr>
  450. <td class="memname">bool SdBlockDriverEX::readBlock </td>
  451. <td>(</td>
  452. <td class="paramtype">uint32_t&#160;</td>
  453. <td class="paramname"><em>block</em>, </td>
  454. </tr>
  455. <tr>
  456. <td class="paramkey"></td>
  457. <td></td>
  458. <td class="paramtype">uint8_t *&#160;</td>
  459. <td class="paramname"><em>dst</em>&#160;</td>
  460. </tr>
  461. <tr>
  462. <td></td>
  463. <td>)</td>
  464. <td></td><td></td>
  465. </tr>
  466. </table>
  467. </td>
  468. <td class="mlabels-right">
  469. <span class="mlabels"><span class="mlabel">virtual</span></span> </td>
  470. </tr>
  471. </table>
  472. </div><div class="memdoc">
  473. <p>Read a 512 byte block from an SD card.</p>
  474. <dl class="params"><dt>Parameters</dt><dd>
  475. <table class="params">
  476. <tr><td class="paramdir">[in]</td><td class="paramname">block</td><td>Logical block to be read. </td></tr>
  477. <tr><td class="paramdir">[out]</td><td class="paramname">dst</td><td>Pointer to the location that will receive the data. </td></tr>
  478. </table>
  479. </dd>
  480. </dl>
  481. <dl class="section return"><dt>Returns</dt><dd>The value true is returned for success and the value false is returned for failure. </dd></dl>
  482. <p>Implements <a class="el" href="class_base_block_driver.html#a16bb3305f3130253dd7ab6e19aa1b524">BaseBlockDriver</a>.</p>
  483. </div>
  484. </div>
  485. <a class="anchor" id="a39941dac40896a2c11e49e650d0e6057"></a>
  486. <div class="memitem">
  487. <div class="memproto">
  488. <table class="mlabels">
  489. <tr>
  490. <td class="mlabels-left">
  491. <table class="memname">
  492. <tr>
  493. <td class="memname">bool SdBlockDriverEX::readBlocks </td>
  494. <td>(</td>
  495. <td class="paramtype">uint32_t&#160;</td>
  496. <td class="paramname"><em>block</em>, </td>
  497. </tr>
  498. <tr>
  499. <td class="paramkey"></td>
  500. <td></td>
  501. <td class="paramtype">uint8_t *&#160;</td>
  502. <td class="paramname"><em>dst</em>, </td>
  503. </tr>
  504. <tr>
  505. <td class="paramkey"></td>
  506. <td></td>
  507. <td class="paramtype">size_t&#160;</td>
  508. <td class="paramname"><em>nb</em>&#160;</td>
  509. </tr>
  510. <tr>
  511. <td></td>
  512. <td>)</td>
  513. <td></td><td></td>
  514. </tr>
  515. </table>
  516. </td>
  517. <td class="mlabels-right">
  518. <span class="mlabels"><span class="mlabel">virtual</span></span> </td>
  519. </tr>
  520. </table>
  521. </div><div class="memdoc">
  522. <p>Read multiple 512 byte blocks from an SD card.</p>
  523. <dl class="params"><dt>Parameters</dt><dd>
  524. <table class="params">
  525. <tr><td class="paramdir">[in]</td><td class="paramname">block</td><td>Logical block to be read. </td></tr>
  526. <tr><td class="paramdir">[in]</td><td class="paramname">nb</td><td>Number of blocks to be read. </td></tr>
  527. <tr><td class="paramdir">[out]</td><td class="paramname">dst</td><td>Pointer to the location that will receive the data. </td></tr>
  528. </table>
  529. </dd>
  530. </dl>
  531. <dl class="section return"><dt>Returns</dt><dd>The value true is returned for success and the value false is returned for failure. </dd></dl>
  532. <p>Implements <a class="el" href="class_base_block_driver.html#a3a029a2d02fc7cbdd7c15c8d622565c4">BaseBlockDriver</a>.</p>
  533. </div>
  534. </div>
  535. <a class="anchor" id="aa073dc42828164883db1b9faeff909ea"></a>
  536. <div class="memitem">
  537. <div class="memproto">
  538. <table class="mlabels">
  539. <tr>
  540. <td class="mlabels-left">
  541. <table class="memname">
  542. <tr>
  543. <td class="memname">bool SdSpiCard::readCID </td>
  544. <td>(</td>
  545. <td class="paramtype">cid_t *&#160;</td>
  546. <td class="paramname"><em>cid</em></td><td>)</td>
  547. <td></td>
  548. </tr>
  549. </table>
  550. </td>
  551. <td class="mlabels-right">
  552. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td>
  553. </tr>
  554. </table>
  555. </div><div class="memdoc">
  556. <p>Read a card's CID register. The CID contains card identification information such as Manufacturer ID, Product name, Product serial number and Manufacturing date.</p>
  557. <dl class="params"><dt>Parameters</dt><dd>
  558. <table class="params">
  559. <tr><td class="paramdir">[out]</td><td class="paramname">cid</td><td>pointer to area for returned data.</td></tr>
  560. </table>
  561. </dd>
  562. </dl>
  563. <dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
  564. </div>
  565. </div>
  566. <a class="anchor" id="a9fbea9525e70f6e3602fe5153a5a1290"></a>
  567. <div class="memitem">
  568. <div class="memproto">
  569. <table class="mlabels">
  570. <tr>
  571. <td class="mlabels-left">
  572. <table class="memname">
  573. <tr>
  574. <td class="memname">bool SdSpiCard::readCSD </td>
  575. <td>(</td>
  576. <td class="paramtype">csd_t *&#160;</td>
  577. <td class="paramname"><em>csd</em></td><td>)</td>
  578. <td></td>
  579. </tr>
  580. </table>
  581. </td>
  582. <td class="mlabels-right">
  583. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td>
  584. </tr>
  585. </table>
  586. </div><div class="memdoc">
  587. <p>Read a card's CSD register. The CSD contains Card-Specific Data that provides information regarding access to the card's contents.</p>
  588. <dl class="params"><dt>Parameters</dt><dd>
  589. <table class="params">
  590. <tr><td class="paramdir">[out]</td><td class="paramname">csd</td><td>pointer to area for returned data.</td></tr>
  591. </table>
  592. </dd>
  593. </dl>
  594. <dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
  595. </div>
  596. </div>
  597. <a class="anchor" id="a3a1d1b4b4ceb42fcd41aaf6649482770"></a>
  598. <div class="memitem">
  599. <div class="memproto">
  600. <table class="mlabels">
  601. <tr>
  602. <td class="mlabels-left">
  603. <table class="memname">
  604. <tr>
  605. <td class="memname">bool SdSpiCard::readData </td>
  606. <td>(</td>
  607. <td class="paramtype">uint8_t *&#160;</td>
  608. <td class="paramname"><em>dst</em></td><td>)</td>
  609. <td></td>
  610. </tr>
  611. </table>
  612. </td>
  613. <td class="mlabels-right">
  614. <span class="mlabels"><span class="mlabel">inherited</span></span> </td>
  615. </tr>
  616. </table>
  617. </div><div class="memdoc">
  618. <p>Read one data block in a multiple block read sequence</p>
  619. <dl class="params"><dt>Parameters</dt><dd>
  620. <table class="params">
  621. <tr><td class="paramdir">[out]</td><td class="paramname">dst</td><td>Pointer to the location for the data to be read.</td></tr>
  622. </table>
  623. </dd>
  624. </dl>
  625. <dl class="section return"><dt>Returns</dt><dd>The value true is returned for success and the value false is returned for failure. </dd></dl>
  626. </div>
  627. </div>
  628. <a class="anchor" id="ab446e49338b3ce834a750ac6dae35f61"></a>
  629. <div class="memitem">
  630. <div class="memproto">
  631. <table class="mlabels">
  632. <tr>
  633. <td class="mlabels-left">
  634. <table class="memname">
  635. <tr>
  636. <td class="memname">bool SdSpiCard::readOCR </td>
  637. <td>(</td>
  638. <td class="paramtype">uint32_t *&#160;</td>
  639. <td class="paramname"><em>ocr</em></td><td>)</td>
  640. <td></td>
  641. </tr>
  642. </table>
  643. </td>
  644. <td class="mlabels-right">
  645. <span class="mlabels"><span class="mlabel">inherited</span></span> </td>
  646. </tr>
  647. </table>
  648. </div><div class="memdoc">
  649. <p>Read OCR register.</p>
  650. <dl class="params"><dt>Parameters</dt><dd>
  651. <table class="params">
  652. <tr><td class="paramdir">[out]</td><td class="paramname">ocr</td><td>Value of OCR register. </td></tr>
  653. </table>
  654. </dd>
  655. </dl>
  656. <dl class="section return"><dt>Returns</dt><dd>true for success else false. </dd></dl>
  657. </div>
  658. </div>
  659. <a class="anchor" id="a3b1710d11496c32ba4323831e00ac6d1"></a>
  660. <div class="memitem">
  661. <div class="memproto">
  662. <table class="mlabels">
  663. <tr>
  664. <td class="mlabels-left">
  665. <table class="memname">
  666. <tr>
  667. <td class="memname">bool SdSpiCard::readStart </td>
  668. <td>(</td>
  669. <td class="paramtype">uint32_t&#160;</td>
  670. <td class="paramname"><em>blockNumber</em></td><td>)</td>
  671. <td></td>
  672. </tr>
  673. </table>
  674. </td>
  675. <td class="mlabels-right">
  676. <span class="mlabels"><span class="mlabel">inherited</span></span> </td>
  677. </tr>
  678. </table>
  679. </div><div class="memdoc">
  680. <p>Start a read multiple blocks sequence.</p>
  681. <dl class="params"><dt>Parameters</dt><dd>
  682. <table class="params">
  683. <tr><td class="paramdir">[in]</td><td class="paramname">blockNumber</td><td>Address of first block in sequence.</td></tr>
  684. </table>
  685. </dd>
  686. </dl>
  687. <dl class="section note"><dt>Note</dt><dd>This function is used with <a class="el" href="class_sd_spi_card.html#a3a1d1b4b4ceb42fcd41aaf6649482770">readData()</a> and <a class="el" href="class_sd_spi_card.html#afdac7c399fa1ba3f904cf503526e007e">readStop()</a> for optimized multiple block reads. SPI chipSelect must be low for the entire sequence.</dd></dl>
  688. <dl class="section return"><dt>Returns</dt><dd>The value true is returned for success and the value false is returned for failure. </dd></dl>
  689. </div>
  690. </div>
  691. <a class="anchor" id="a91d0413599efe0d63c8c2dfe4a12d9ae"></a>
  692. <div class="memitem">
  693. <div class="memproto">
  694. <table class="mlabels">
  695. <tr>
  696. <td class="mlabels-left">
  697. <table class="memname">
  698. <tr>
  699. <td class="memname">bool SdSpiCard::readStatus </td>
  700. <td>(</td>
  701. <td class="paramtype">uint8_t *&#160;</td>
  702. <td class="paramname"><em>status</em></td><td>)</td>
  703. <td></td>
  704. </tr>
  705. </table>
  706. </td>
  707. <td class="mlabels-right">
  708. <span class="mlabels"><span class="mlabel">inherited</span></span> </td>
  709. </tr>
  710. </table>
  711. </div><div class="memdoc">
  712. <p>Return the 64 byte card status </p><dl class="params"><dt>Parameters</dt><dd>
  713. <table class="params">
  714. <tr><td class="paramdir">[out]</td><td class="paramname">status</td><td>location for 64 status bytes. </td></tr>
  715. </table>
  716. </dd>
  717. </dl>
  718. <dl class="section return"><dt>Returns</dt><dd>The value true is returned for success and the value false is returned for failure. </dd></dl>
  719. </div>
  720. </div>
  721. <a class="anchor" id="afdac7c399fa1ba3f904cf503526e007e"></a>
  722. <div class="memitem">
  723. <div class="memproto">
  724. <table class="mlabels">
  725. <tr>
  726. <td class="mlabels-left">
  727. <table class="memname">
  728. <tr>
  729. <td class="memname">bool SdSpiCard::readStop </td>
  730. <td>(</td>
  731. <td class="paramname"></td><td>)</td>
  732. <td></td>
  733. </tr>
  734. </table>
  735. </td>
  736. <td class="mlabels-right">
  737. <span class="mlabels"><span class="mlabel">inherited</span></span> </td>
  738. </tr>
  739. </table>
  740. </div><div class="memdoc">
  741. <p>End a read multiple blocks sequence.</p>
  742. <dl class="section return"><dt>Returns</dt><dd>The value true is returned for success and the value false is returned for failure. </dd></dl>
  743. </div>
  744. </div>
  745. <a class="anchor" id="aa39feb6ebb269071ac6843a424ac311c"></a>
  746. <div class="memitem">
  747. <div class="memproto">
  748. <table class="mlabels">
  749. <tr>
  750. <td class="mlabels-left">
  751. <table class="memname">
  752. <tr>
  753. <td class="memname">void SdSpiCard::spiStart </td>
  754. <td>(</td>
  755. <td class="paramname"></td><td>)</td>
  756. <td></td>
  757. </tr>
  758. </table>
  759. </td>
  760. <td class="mlabels-right">
  761. <span class="mlabels"><span class="mlabel">inherited</span></span> </td>
  762. </tr>
  763. </table>
  764. </div><div class="memdoc">
  765. <p>Set CS low and activate the card. </p>
  766. </div>
  767. </div>
  768. <a class="anchor" id="a1033a4a68d38f52dddf6a1764fcca3e1"></a>
  769. <div class="memitem">
  770. <div class="memproto">
  771. <table class="mlabels">
  772. <tr>
  773. <td class="mlabels-left">
  774. <table class="memname">
  775. <tr>
  776. <td class="memname">void SdSpiCard::spiStop </td>
  777. <td>(</td>
  778. <td class="paramname"></td><td>)</td>
  779. <td></td>
  780. </tr>
  781. </table>
  782. </td>
  783. <td class="mlabels-right">
  784. <span class="mlabels"><span class="mlabel">inherited</span></span> </td>
  785. </tr>
  786. </table>
  787. </div><div class="memdoc">
  788. <p>Set CS high and deactivate the card. </p>
  789. </div>
  790. </div>
  791. <a class="anchor" id="a5386776abfa49ac81d1706f9ac1149c8"></a>
  792. <div class="memitem">
  793. <div class="memproto">
  794. <table class="mlabels">
  795. <tr>
  796. <td class="mlabels-left">
  797. <table class="memname">
  798. <tr>
  799. <td class="memname">bool SdBlockDriverEX::syncBlocks </td>
  800. <td>(</td>
  801. <td class="paramname"></td><td>)</td>
  802. <td></td>
  803. </tr>
  804. </table>
  805. </td>
  806. <td class="mlabels-right">
  807. <span class="mlabels"><span class="mlabel">virtual</span></span> </td>
  808. </tr>
  809. </table>
  810. </div><div class="memdoc">
  811. <p>End multi-block transfer and go to idle state. </p><dl class="section return"><dt>Returns</dt><dd>The value true is returned for success and the value false is returned for failure. </dd></dl>
  812. <p>Implements <a class="el" href="class_base_block_driver.html#a5361ff2658d7654bf00b97c54c6aa2aa">BaseBlockDriver</a>.</p>
  813. </div>
  814. </div>
  815. <a class="anchor" id="a061d92bf154a1863a6321385b7505f6e"></a>
  816. <div class="memitem">
  817. <div class="memproto">
  818. <table class="mlabels">
  819. <tr>
  820. <td class="mlabels-left">
  821. <table class="memname">
  822. <tr>
  823. <td class="memname">int SdSpiCard::type </td>
  824. <td>(</td>
  825. <td class="paramname"></td><td>)</td>
  826. <td> const</td>
  827. </tr>
  828. </table>
  829. </td>
  830. <td class="mlabels-right">
  831. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td>
  832. </tr>
  833. </table>
  834. </div><div class="memdoc">
  835. <p>Return the card type: SD V1, SD V2 or SDHC </p><dl class="section return"><dt>Returns</dt><dd>0 - SD V1, 1 - SD V2, or 3 - SDHC. </dd></dl>
  836. </div>
  837. </div>
  838. <a class="anchor" id="a21411fd0ddb394d6093b284af739e46c"></a>
  839. <div class="memitem">
  840. <div class="memproto">
  841. <table class="mlabels">
  842. <tr>
  843. <td class="mlabels-left">
  844. <table class="memname">
  845. <tr>
  846. <td class="memname">bool SdBlockDriverEX::writeBlock </td>
  847. <td>(</td>
  848. <td class="paramtype">uint32_t&#160;</td>
  849. <td class="paramname"><em>block</em>, </td>
  850. </tr>
  851. <tr>
  852. <td class="paramkey"></td>
  853. <td></td>
  854. <td class="paramtype">const uint8_t *&#160;</td>
  855. <td class="paramname"><em>src</em>&#160;</td>
  856. </tr>
  857. <tr>
  858. <td></td>
  859. <td>)</td>
  860. <td></td><td></td>
  861. </tr>
  862. </table>
  863. </td>
  864. <td class="mlabels-right">
  865. <span class="mlabels"><span class="mlabel">virtual</span></span> </td>
  866. </tr>
  867. </table>
  868. </div><div class="memdoc">
  869. <p>Writes a 512 byte block to an SD card.</p>
  870. <dl class="params"><dt>Parameters</dt><dd>
  871. <table class="params">
  872. <tr><td class="paramdir">[in]</td><td class="paramname">block</td><td>Logical block to be written. </td></tr>
  873. <tr><td class="paramdir">[in]</td><td class="paramname">src</td><td>Pointer to the location of the data to be written. </td></tr>
  874. </table>
  875. </dd>
  876. </dl>
  877. <dl class="section return"><dt>Returns</dt><dd>The value true is returned for success and the value false is returned for failure. </dd></dl>
  878. <p>Implements <a class="el" href="class_base_block_driver.html#a87df3db1b400286883661525441d39fa">BaseBlockDriver</a>.</p>
  879. </div>
  880. </div>
  881. <a class="anchor" id="ac91f223488f7b76b11f4f52335ce9730"></a>
  882. <div class="memitem">
  883. <div class="memproto">
  884. <table class="mlabels">
  885. <tr>
  886. <td class="mlabels-left">
  887. <table class="memname">
  888. <tr>
  889. <td class="memname">bool SdBlockDriverEX::writeBlocks </td>
  890. <td>(</td>
  891. <td class="paramtype">uint32_t&#160;</td>
  892. <td class="paramname"><em>block</em>, </td>
  893. </tr>
  894. <tr>
  895. <td class="paramkey"></td>
  896. <td></td>
  897. <td class="paramtype">const uint8_t *&#160;</td>
  898. <td class="paramname"><em>src</em>, </td>
  899. </tr>
  900. <tr>
  901. <td class="paramkey"></td>
  902. <td></td>
  903. <td class="paramtype">size_t&#160;</td>
  904. <td class="paramname"><em>nb</em>&#160;</td>
  905. </tr>
  906. <tr>
  907. <td></td>
  908. <td>)</td>
  909. <td></td><td></td>
  910. </tr>
  911. </table>
  912. </td>
  913. <td class="mlabels-right">
  914. <span class="mlabels"><span class="mlabel">virtual</span></span> </td>
  915. </tr>
  916. </table>
  917. </div><div class="memdoc">
  918. <p>Write multiple 512 byte blocks to an SD card.</p>
  919. <dl class="params"><dt>Parameters</dt><dd>
  920. <table class="params">
  921. <tr><td class="paramdir">[in]</td><td class="paramname">block</td><td>Logical block to be written. </td></tr>
  922. <tr><td class="paramdir">[in]</td><td class="paramname">nb</td><td>Number of blocks to be written. </td></tr>
  923. <tr><td class="paramdir">[in]</td><td class="paramname">src</td><td>Pointer to the location of the data to be written. </td></tr>
  924. </table>
  925. </dd>
  926. </dl>
  927. <dl class="section return"><dt>Returns</dt><dd>The value true is returned for success and the value false is returned for failure. </dd></dl>
  928. <p>Implements <a class="el" href="class_base_block_driver.html#a3d6520b21252ebfb17b0cac0b87689b1">BaseBlockDriver</a>.</p>
  929. </div>
  930. </div>
  931. <a class="anchor" id="a9495c0b148eb380358bb4a9721c0dffa"></a>
  932. <div class="memitem">
  933. <div class="memproto">
  934. <table class="mlabels">
  935. <tr>
  936. <td class="mlabels-left">
  937. <table class="memname">
  938. <tr>
  939. <td class="memname">bool SdSpiCard::writeData </td>
  940. <td>(</td>
  941. <td class="paramtype">const uint8_t *&#160;</td>
  942. <td class="paramname"><em>src</em></td><td>)</td>
  943. <td></td>
  944. </tr>
  945. </table>
  946. </td>
  947. <td class="mlabels-right">
  948. <span class="mlabels"><span class="mlabel">inherited</span></span> </td>
  949. </tr>
  950. </table>
  951. </div><div class="memdoc">
  952. <p>Write one data block in a multiple block write sequence. </p><dl class="params"><dt>Parameters</dt><dd>
  953. <table class="params">
  954. <tr><td class="paramdir">[in]</td><td class="paramname">src</td><td>Pointer to the location of the data to be written. </td></tr>
  955. </table>
  956. </dd>
  957. </dl>
  958. <dl class="section return"><dt>Returns</dt><dd>The value true is returned for success and the value false is returned for failure. </dd></dl>
  959. </div>
  960. </div>
  961. <a class="anchor" id="a56d4750a5d2f693943eec985cb61ffe2"></a>
  962. <div class="memitem">
  963. <div class="memproto">
  964. <table class="mlabels">
  965. <tr>
  966. <td class="mlabels-left">
  967. <table class="memname">
  968. <tr>
  969. <td class="memname">bool SdSpiCard::writeStart </td>
  970. <td>(</td>
  971. <td class="paramtype">uint32_t&#160;</td>
  972. <td class="paramname"><em>blockNumber</em></td><td>)</td>
  973. <td></td>
  974. </tr>
  975. </table>
  976. </td>
  977. <td class="mlabels-right">
  978. <span class="mlabels"><span class="mlabel">inherited</span></span> </td>
  979. </tr>
  980. </table>
  981. </div><div class="memdoc">
  982. <p>Start a write multiple blocks sequence.</p>
  983. <dl class="params"><dt>Parameters</dt><dd>
  984. <table class="params">
  985. <tr><td class="paramdir">[in]</td><td class="paramname">blockNumber</td><td>Address of first block in sequence.</td></tr>
  986. </table>
  987. </dd>
  988. </dl>
  989. <dl class="section note"><dt>Note</dt><dd>This function is used with <a class="el" href="class_sd_spi_card.html#a9495c0b148eb380358bb4a9721c0dffa">writeData()</a> and <a class="el" href="class_sd_spi_card.html#aef9154785a4de5560fb807e4f9316fb0">writeStop()</a> for optimized multiple block writes.</dd></dl>
  990. <dl class="section return"><dt>Returns</dt><dd>The value true is returned for success and the value false is returned for failure. </dd></dl>
  991. </div>
  992. </div>
  993. <a class="anchor" id="a8bf0dc991308dcd2a7427bad89a9e2ba"></a>
  994. <div class="memitem">
  995. <div class="memproto">
  996. <table class="mlabels">
  997. <tr>
  998. <td class="mlabels-left">
  999. <table class="memname">
  1000. <tr>
  1001. <td class="memname">bool SdSpiCard::writeStart </td>
  1002. <td>(</td>
  1003. <td class="paramtype">uint32_t&#160;</td>
  1004. <td class="paramname"><em>blockNumber</em>, </td>
  1005. </tr>
  1006. <tr>
  1007. <td class="paramkey"></td>
  1008. <td></td>
  1009. <td class="paramtype">uint32_t&#160;</td>
  1010. <td class="paramname"><em>eraseCount</em>&#160;</td>
  1011. </tr>
  1012. <tr>
  1013. <td></td>
  1014. <td>)</td>
  1015. <td></td><td></td>
  1016. </tr>
  1017. </table>
  1018. </td>
  1019. <td class="mlabels-right">
  1020. <span class="mlabels"><span class="mlabel">inherited</span></span> </td>
  1021. </tr>
  1022. </table>
  1023. </div><div class="memdoc">
  1024. <p>Start a write multiple blocks sequence with pre-erase.</p>
  1025. <dl class="params"><dt>Parameters</dt><dd>
  1026. <table class="params">
  1027. <tr><td class="paramdir">[in]</td><td class="paramname">blockNumber</td><td>Address of first block in sequence. </td></tr>
  1028. <tr><td class="paramdir">[in]</td><td class="paramname">eraseCount</td><td>The number of blocks to be pre-erased.</td></tr>
  1029. </table>
  1030. </dd>
  1031. </dl>
  1032. <dl class="section note"><dt>Note</dt><dd>This function is used with <a class="el" href="class_sd_spi_card.html#a9495c0b148eb380358bb4a9721c0dffa">writeData()</a> and <a class="el" href="class_sd_spi_card.html#aef9154785a4de5560fb807e4f9316fb0">writeStop()</a> for optimized multiple block writes.</dd></dl>
  1033. <dl class="section return"><dt>Returns</dt><dd>The value true is returned for success and the value false is returned for failure. </dd></dl>
  1034. </div>
  1035. </div>
  1036. <a class="anchor" id="aef9154785a4de5560fb807e4f9316fb0"></a>
  1037. <div class="memitem">
  1038. <div class="memproto">
  1039. <table class="mlabels">
  1040. <tr>
  1041. <td class="mlabels-left">
  1042. <table class="memname">
  1043. <tr>
  1044. <td class="memname">bool SdSpiCard::writeStop </td>
  1045. <td>(</td>
  1046. <td class="paramname"></td><td>)</td>
  1047. <td></td>
  1048. </tr>
  1049. </table>
  1050. </td>
  1051. <td class="mlabels-right">
  1052. <span class="mlabels"><span class="mlabel">inherited</span></span> </td>
  1053. </tr>
  1054. </table>
  1055. </div><div class="memdoc">
  1056. <p>End a write multiple blocks sequence.</p>
  1057. <dl class="section return"><dt>Returns</dt><dd>The value true is returned for success and the value false is returned for failure. </dd></dl>
  1058. </div>
  1059. </div>
  1060. <hr/>The documentation for this class was generated from the following files:<ul>
  1061. <li>Arduino/libraries/SdFat/src/<a class="el" href="_block_driver_8h.html">BlockDriver.h</a></li>
  1062. <li>Arduino/libraries/SdFat/src/BlockDriver.cpp</li>
  1063. </ul>
  1064. </div><!-- contents -->
  1065. <!-- start footer part -->
  1066. <hr class="footer"/><address class="footer"><small>
  1067. Generated on Fri Aug 19 2016 08:28:00 for SdFat by &#160;<a href="http://www.doxygen.org/index.html">
  1068. <img class="footer" src="doxygen.png" alt="doxygen"/>
  1069. </a> 1.8.10
  1070. </small></address>
  1071. </body>
  1072. </html>