Sophie

Sophie

distrib > Fedora > 13 > i386 > media > os > by-pkgid > 73443d16ffe49ffcb4131bf0d8d1b044 > files > 165

avr-libc-docs-1.6.7-2.fc13.noarch.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
    <title>avr-libc: pgmspace.h File Reference</title>
    <link href="dox.css" rel="stylesheet" type="text/css">
  </head>
<body>
<center>
<table width="80%">
  <tr>
    <td align="left"><a href="http://www.nongnu.org/avr-libc/">AVR Libc Home Page</a></td>
    <td align="center" colspan=4><img src="avrs.png" alt="AVRs" align="middle" border="0"></td>
    <td align="right"><a href="https://savannah.nongnu.org/projects/avr-libc/">AVR Libc Development Pages</a></td>
  </tr>
  <tr>
    <td align="center" width="13%"><a href="index.html">Main Page</a></td>
    <td align="center" width="13%"><a href="pages.html">User Manual</a></td>
    <td align="center" width="13%"><a href="modules.html">Library Reference</a></td>
    <td align="center" width="13%"><a href="FAQ.html">FAQ</a></td>
    <td align="center" width="13%"><a href="globals.html">Alphabetical Index</a></td>
    <td align="center" width="13%"><a href="group__demos.html">Example Projects</a></td>
  </tr>
</table>
</center>
<hr width="80%">
<!-- Generated by Doxygen 1.6.1 -->
<div class="contents">
<h1>pgmspace.h File Reference</h1><table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Defines</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3e19ec020621f8b99268a81a85d29f57"></a><!-- doxytag: member="pgmspace.h::__PGMSPACE_H_" ref="a3e19ec020621f8b99268a81a85d29f57" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>__PGMSPACE_H_</b>&nbsp;&nbsp;&nbsp;1</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2898830827f947f003d187388f7e6c72"></a><!-- doxytag: member="pgmspace.h::__need_size_t" ref="a2898830827f947f003d187388f7e6c72" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>__need_size_t</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a80fdd263dea318b34bfe11f5c3cbb6f3"></a><!-- doxytag: member="pgmspace.h::__ATTR_PROGMEM__" ref="a80fdd263dea318b34bfe11f5c3cbb6f3" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>__ATTR_PROGMEM__</b>&nbsp;&nbsp;&nbsp;__attribute__((__progmem__))</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#ga75acaba9e781937468d0911423bc0c35">PROGMEM</a>&nbsp;&nbsp;&nbsp;__ATTR_PROGMEM__</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#ga05ca900ebf7cd121be73c654d9ccb3eb">PSTR</a>(s)&nbsp;&nbsp;&nbsp;((const PROGMEM char *)(s))</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>__LPM_classic__</b>(addr)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>__LPM_enhanced__</b>(addr)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>__LPM_word_classic__</b>(addr)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>__LPM_word_enhanced__</b>(addr)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>__LPM_dword_classic__</b>(addr)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>__LPM_dword_enhanced__</b>(addr)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>__LPM_float_classic__</b>(addr)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>__LPM_float_enhanced__</b>(addr)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a08a72fff52c720c8c4da68d94bcbcfb7"></a><!-- doxytag: member="pgmspace.h::__LPM" ref="a08a72fff52c720c8c4da68d94bcbcfb7" args="(addr)" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>__LPM</b>(addr)&nbsp;&nbsp;&nbsp;__LPM_classic__(addr)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a68a101b9775c6ca1ce63ffd00cb847fa"></a><!-- doxytag: member="pgmspace.h::__LPM_word" ref="a68a101b9775c6ca1ce63ffd00cb847fa" args="(addr)" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>__LPM_word</b>(addr)&nbsp;&nbsp;&nbsp;__LPM_word_classic__(addr)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2ca4c178d5b7cc946d5f9946cfadb60a"></a><!-- doxytag: member="pgmspace.h::__LPM_dword" ref="a2ca4c178d5b7cc946d5f9946cfadb60a" args="(addr)" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>__LPM_dword</b>(addr)&nbsp;&nbsp;&nbsp;__LPM_dword_classic__(addr)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9153bd8c33415e46493483d8b1381cd2"></a><!-- doxytag: member="pgmspace.h::__LPM_float" ref="a9153bd8c33415e46493483d8b1381cd2" args="(addr)" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>__LPM_float</b>(addr)&nbsp;&nbsp;&nbsp;__LPM_float_classic__(addr)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#ga88d7dd4863f87530e1a34ece430a587c">pgm_read_byte_near</a>(address_short)&nbsp;&nbsp;&nbsp;__LPM((<a class="el" href="group__avr__stdint.html#ga1f1825b69244eb3ad2c7165ddc99c956">uint16_t</a>)(address_short))</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#gaf51eeaa847dd2668d2a66b70ecfb7398">pgm_read_word_near</a>(address_short)&nbsp;&nbsp;&nbsp;__LPM_word((<a class="el" href="group__avr__stdint.html#ga1f1825b69244eb3ad2c7165ddc99c956">uint16_t</a>)(address_short))</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#ga7fa92c0a662403a643859e0f33b0a182">pgm_read_dword_near</a>(address_short)&nbsp;&nbsp;&nbsp;__LPM_dword((<a class="el" href="group__avr__stdint.html#ga1f1825b69244eb3ad2c7165ddc99c956">uint16_t</a>)(address_short))</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#ga066040df814dabc7980cd1422508b46b">pgm_read_float_near</a>(address_short)&nbsp;&nbsp;&nbsp;__LPM_float((<a class="el" href="group__avr__stdint.html#ga1f1825b69244eb3ad2c7165ddc99c956">uint16_t</a>)(address_short))</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>__ELPM_classic__</b>(addr)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>__ELPM_enhanced__</b>(addr)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>__ELPM_xmega__</b>(addr)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>__ELPM_word_classic__</b>(addr)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>__ELPM_word_enhanced__</b>(addr)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>__ELPM_word_xmega__</b>(addr)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9a8bfdf4b3c7b73339b99f25050bbb7e"></a><!-- doxytag: member="pgmspace.h::__ELPM_dword_classic__" ref="a9a8bfdf4b3c7b73339b99f25050bbb7e" args="(addr)" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>__ELPM_dword_classic__</b>(addr)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>__ELPM_dword_enhanced__</b>(addr)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>__ELPM_dword_xmega__</b>(addr)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae1a2d7875738121a279dd9b14e660ffe"></a><!-- doxytag: member="pgmspace.h::__ELPM_float_classic__" ref="ae1a2d7875738121a279dd9b14e660ffe" args="(addr)" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>__ELPM_float_classic__</b>(addr)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>__ELPM_float_enhanced__</b>(addr)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>__ELPM_float_xmega__</b>(addr)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad710ce3e6839b2b0aa751ecdcebc3916"></a><!-- doxytag: member="pgmspace.h::__ELPM" ref="ad710ce3e6839b2b0aa751ecdcebc3916" args="(addr)" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>__ELPM</b>(addr)&nbsp;&nbsp;&nbsp;__ELPM_classic__(addr)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac5514eda249623758e7bde7a10367981"></a><!-- doxytag: member="pgmspace.h::__ELPM_word" ref="ac5514eda249623758e7bde7a10367981" args="(addr)" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>__ELPM_word</b>(addr)&nbsp;&nbsp;&nbsp;__ELPM_word_classic__(addr)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae13cac4b0bdce8636bbeea69d6f0c56c"></a><!-- doxytag: member="pgmspace.h::__ELPM_dword" ref="ae13cac4b0bdce8636bbeea69d6f0c56c" args="(addr)" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>__ELPM_dword</b>(addr)&nbsp;&nbsp;&nbsp;__ELPM_dword_classic__(addr)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a59000091c8a496a757cc28abd1198899"></a><!-- doxytag: member="pgmspace.h::__ELPM_float" ref="a59000091c8a496a757cc28abd1198899" args="(addr)" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>__ELPM_float</b>(addr)&nbsp;&nbsp;&nbsp;__ELPM_float_classic__(addr)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#ga0d4d7f6231716747c52b969d4febdeed">pgm_read_byte_far</a>(address_long)&nbsp;&nbsp;&nbsp;__ELPM((<a class="el" href="group__avr__stdint.html#ga33594304e786b158f3fb30289278f5af">uint32_t</a>)(address_long))</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#gad7082c45c2c96f015c76eff1ad00a99a">pgm_read_word_far</a>(address_long)&nbsp;&nbsp;&nbsp;__ELPM_word((<a class="el" href="group__avr__stdint.html#ga33594304e786b158f3fb30289278f5af">uint32_t</a>)(address_long))</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#ga309908c1b7430f0d140edb78fcf8f2b9">pgm_read_dword_far</a>(address_long)&nbsp;&nbsp;&nbsp;__ELPM_dword((<a class="el" href="group__avr__stdint.html#ga33594304e786b158f3fb30289278f5af">uint32_t</a>)(address_long))</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#ga4a5a593aa84062ca08b3f2d564a6f466">pgm_read_float_far</a>(address_long)&nbsp;&nbsp;&nbsp;__ELPM_float((<a class="el" href="group__avr__stdint.html#ga33594304e786b158f3fb30289278f5af">uint32_t</a>)(address_long))</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#ga73084a8bbde259ffae72980354b3f027">pgm_read_byte</a>(address_short)&nbsp;&nbsp;&nbsp;pgm_read_byte_near(address_short)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#ga32d8ab354156f4b1ffdb77a275ba6223">pgm_read_word</a>(address_short)&nbsp;&nbsp;&nbsp;pgm_read_word_near(address_short)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#gabb68859ac5dfa6a09ac048b4037a83b6">pgm_read_dword</a>(address_short)&nbsp;&nbsp;&nbsp;pgm_read_dword_near(address_short)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#ga7911bddb066a8a038efc4b7857728fa8">pgm_read_float</a>(address_short)&nbsp;&nbsp;&nbsp;pgm_read_float_near(address_short)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#ga963f816fc88a5d8479c285ed4c630229">PGM_P</a>&nbsp;&nbsp;&nbsp;const <a class="el" href="group__avr__pgmspace.html#gaa475b6b81fd8b34de45695da1da523b6">prog_char</a> *</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#ga84a61d55b7efefabd8419e28f02704f9">PGM_VOID_P</a>&nbsp;&nbsp;&nbsp;const <a class="el" href="group__avr__pgmspace.html#gadb50761b9f19d45449445208778ee420">prog_void</a> *</td></tr>
<tr><td colspan="2"><h2>Typedefs</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef void PROGMEM&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#gadb50761b9f19d45449445208778ee420">prog_void</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef char PROGMEM&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#gaa475b6b81fd8b34de45695da1da523b6">prog_char</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef unsigned char PROGMEM&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#ga7d4701843a2019e3ef5a9866dc7586ed">prog_uchar</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="group__avr__stdint.html#gaef44329758059c91c76d334e8fc09700">int8_t</a> PROGMEM&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#ga48c7cb011ea5f82f4b73df40e07dff46">prog_int8_t</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="group__avr__stdint.html#gaba7bc1797add20fe3efdf37ced1182c5">uint8_t</a> PROGMEM&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#ga39235a28487ae7790ce5f4c8178c8ed7">prog_uint8_t</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="group__avr__stdint.html#ga932e6ccc3d54c58f761c1aead83bd6d7">int16_t</a> PROGMEM&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#gaafc910d0b2c4d76afffa4710b98df6fa">prog_int16_t</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="group__avr__stdint.html#ga1f1825b69244eb3ad2c7165ddc99c956">uint16_t</a> PROGMEM&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#ga93ec00229866bf6a125384ad08cefa73">prog_uint16_t</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="group__avr__stdint.html#gadb828ef50c2dbb783109824e94cf6c47">int32_t</a> PROGMEM&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#gaa839901aa518fb43d361588dd8d2b44b">prog_int32_t</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="group__avr__stdint.html#ga33594304e786b158f3fb30289278f5af">uint32_t</a> PROGMEM&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#ga31bad0d22ead95a41e725c38ea63eb26">prog_uint32_t</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="group__avr__stdint.html#ga831d6234342279926bb11bad3a37add9">int64_t</a> PROGMEM&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#ga5b1f9927f06d841e9ac07af62e71cfef">prog_int64_t</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="group__avr__stdint.html#gad27ed092432b64ff558d2254c278720f">uint64_t</a> PROGMEM&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#gaa50eebe90a40e0276bcc49ea0482b211">prog_uint64_t</a></td></tr>
<tr><td colspan="2"><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">PGM_VOID_P&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#ga287a70fef8531ad6aa9a2f73ee4fa162">memchr_P</a> (PGM_VOID_P, int __val, size_t __len)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#ga51805e7bf43ffd1a70a045994a907768">memcmp_P</a> (const void *, PGM_VOID_P, size_t) __ATTR_PURE__</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#ga53ee9e2dec1d5f685d78aa8dc444dccb">memcpy_P</a> (void *, PGM_VOID_P, size_t)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#ga851eaa0bd303b445f6ea70db31059fef">memmem_P</a> (const void *, size_t, PGM_VOID_P, size_t) __ATTR_PURE__</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">PGM_VOID_P&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#gab2614cd3f6b0196d3070b158f1ad05bd">memrchr_P</a> (PGM_VOID_P, int __val, size_t __len)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#ga1617c6719e65951f109fe29b18c2bd35">strcat_P</a> (char *, PGM_P)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">PGM_P&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#ga7c26394eea1ddcc33fb698833b9aa9b2">strchr_P</a> (PGM_P, int __val)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">PGM_P&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#gaf5c3724d0e89d5952738b8c8da004e0a">strchrnul_P</a> (PGM_P, int __val)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#gae3a7686c2e207b543be3b402d919761a">strcmp_P</a> (const char *, PGM_P) __ATTR_PURE__</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#ga9c3ff50bdf59b38219394ff5230660da">strcpy_P</a> (char *, PGM_P)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#ga2e0ce009c836fed26221263d28c79b01">strcasecmp_P</a> (const char *, PGM_P) __ATTR_PURE__</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#gac75a4fcc7f301902eef58f8dea8e5cfd">strcasestr_P</a> (const char *, PGM_P) __ATTR_PURE__</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#gaee6bf291c23054aca37533937a1d412f">strcspn_P</a> (const char *__s, PGM_P __reject) __ATTR_PURE__</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#ga484117e1416429fc94efad8c66643164">strlcat_P</a> (char *, PGM_P, size_t)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#gaabad6a32f133121973ea9c06e30cd33a">strlcpy_P</a> (char *, PGM_P, size_t)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#ga3a8a479d2f1b4aef18a89316e3c9e0eb">strlen_P</a> (PGM_P)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#ga8ece6c08cef78e50f404072823e48752">strnlen_P</a> (PGM_P, size_t)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#ga5048829165f57aef87bba38ba9126d1d">strncmp_P</a> (const char *, PGM_P, size_t) __ATTR_PURE__</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#gabe5f48c518cc38229d010467dda41d19">strncasecmp_P</a> (const char *, PGM_P, size_t) __ATTR_PURE__</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#ga11ed791b5d147f8d2ce01699a9c220ca">strncat_P</a> (char *, PGM_P, size_t)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#ga8283f9a987be92ae137ee610e6b11b90">strncpy_P</a> (char *, PGM_P, size_t)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#gad6de880a1dd672b52469fe986e3ec011">strpbrk_P</a> (const char *__s, PGM_P __accept) __ATTR_PURE__</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">PGM_P&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#gab3a5f8b6324d77903d713917eb219f05">strrchr_P</a> (PGM_P, int __val)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#gaa3bc55b47998e5ce1d8ddcf0be228638">strsep_P</a> (char **__sp, PGM_P __delim)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#ga0ca5a2d8b5b1b4d899edb89535c36b69">strspn_P</a> (const char *__s, PGM_P __accept) __ATTR_PURE__</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__avr__pgmspace.html#ga36c9c2de19d7e23c4a6bf63eee608af3">strstr_P</a> (const char *, PGM_P) __ATTR_PURE__</td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<hr/><h2>Define Documentation</h2>
<a class="anchor" id="aa3bb050b6f4f954c943e25161b370758"></a><!-- doxytag: member="pgmspace.h::__ELPM_classic__" ref="aa3bb050b6f4f954c943e25161b370758" args="(addr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define __ELPM_classic__</td>
          <td>(</td>
          <td class="paramtype">addr&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">(__extension__({                    \
    <a class="code" href="group__avr__stdint.html#ga33594304e786b158f3fb30289278f5af">uint32_t</a> __addr32 = (<a class="code" href="group__avr__stdint.html#ga33594304e786b158f3fb30289278f5af">uint32_t</a>)(addr); \
    <a class="code" href="group__avr__stdint.html#gaba7bc1797add20fe3efdf37ced1182c5">uint8_t</a> __result;               \
    __asm__                         \
    (                               \
        <span class="stringliteral">&quot;out %2, %C1&quot;</span> <span class="stringliteral">&quot;\n\t&quot;</span>        \
        <span class="stringliteral">&quot;mov r31, %B1&quot;</span> <span class="stringliteral">&quot;\n\t&quot;</span>       \
        <span class="stringliteral">&quot;mov r30, %A1&quot;</span> <span class="stringliteral">&quot;\n\t&quot;</span>       \
        <span class="stringliteral">&quot;elpm&quot;</span> <span class="stringliteral">&quot;\n\t&quot;</span>               \
        <span class="stringliteral">&quot;mov %0, r0&quot;</span> <span class="stringliteral">&quot;\n\t&quot;</span>         \
        : <span class="stringliteral">&quot;=r&quot;</span> (__result)           \
        : <span class="stringliteral">&quot;r&quot;</span> (__addr32),           \
          <span class="stringliteral">&quot;I&quot;</span> (_SFR_IO_ADDR(RAMPZ)) \
        : <span class="stringliteral">&quot;r0&quot;</span>, <span class="stringliteral">&quot;r30&quot;</span>, <span class="stringliteral">&quot;r31&quot;</span>        \
    );                              \
    __result;                       \
}))
</pre></div>
</div>
</div>
<a class="anchor" id="ae960e608b8e9e273d19cc5afe22b2dcd"></a><!-- doxytag: member="pgmspace.h::__ELPM_dword_enhanced__" ref="ae960e608b8e9e273d19cc5afe22b2dcd" args="(addr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define __ELPM_dword_enhanced__</td>
          <td>(</td>
          <td class="paramtype">addr&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">(__extension__({                          \
    <a class="code" href="group__avr__stdint.html#ga33594304e786b158f3fb30289278f5af">uint32_t</a> __addr32 = (<a class="code" href="group__avr__stdint.html#ga33594304e786b158f3fb30289278f5af">uint32_t</a>)(addr); \
    <a class="code" href="group__avr__stdint.html#ga33594304e786b158f3fb30289278f5af">uint32_t</a> __result;                    \
    __asm__                               \
    (                                     \
        <span class="stringliteral">&quot;out %2, %C1&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>            \
        <span class="stringliteral">&quot;movw r30, %1&quot;</span>  <span class="stringliteral">&quot;\n\t&quot;</span>            \
        <span class="stringliteral">&quot;elpm %A0, Z+&quot;</span>  <span class="stringliteral">&quot;\n\t&quot;</span>            \
        <span class="stringliteral">&quot;elpm %B0, Z+&quot;</span>  <span class="stringliteral">&quot;\n\t&quot;</span>            \
        <span class="stringliteral">&quot;elpm %C0, Z+&quot;</span>  <span class="stringliteral">&quot;\n\t&quot;</span>            \
        <span class="stringliteral">&quot;elpm %D0, Z&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>            \
        : <span class="stringliteral">&quot;=r&quot;</span> (__result)                 \
        : <span class="stringliteral">&quot;r&quot;</span> (__addr32),                 \
          <span class="stringliteral">&quot;I&quot;</span> (_SFR_IO_ADDR(RAMPZ))       \
        : <span class="stringliteral">&quot;r30&quot;</span>, <span class="stringliteral">&quot;r31&quot;</span>                    \
    );                                    \
    __result;                             \
}))
</pre></div>
</div>
</div>
<a class="anchor" id="a7b86f1b851fbed09aa739b8da557988d"></a><!-- doxytag: member="pgmspace.h::__ELPM_dword_xmega__" ref="a7b86f1b851fbed09aa739b8da557988d" args="(addr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define __ELPM_dword_xmega__</td>
          <td>(</td>
          <td class="paramtype">addr&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">(__extension__({                          \
    <a class="code" href="group__avr__stdint.html#ga33594304e786b158f3fb30289278f5af">uint32_t</a> __addr32 = (<a class="code" href="group__avr__stdint.html#ga33594304e786b158f3fb30289278f5af">uint32_t</a>)(addr); \
    <a class="code" href="group__avr__stdint.html#ga33594304e786b158f3fb30289278f5af">uint32_t</a> __result;                    \
    __asm__                               \
    (                                     \
        <span class="stringliteral">&quot;in __tmp_reg__, %2&quot;</span> <span class="stringliteral">&quot;\n\t&quot;</span>       \
        <span class="stringliteral">&quot;out %2, %C1&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>            \
        <span class="stringliteral">&quot;movw r30, %1&quot;</span>  <span class="stringliteral">&quot;\n\t&quot;</span>            \
        <span class="stringliteral">&quot;elpm %A0, Z+&quot;</span>  <span class="stringliteral">&quot;\n\t&quot;</span>            \
        <span class="stringliteral">&quot;elpm %B0, Z+&quot;</span>  <span class="stringliteral">&quot;\n\t&quot;</span>            \
        <span class="stringliteral">&quot;elpm %C0, Z+&quot;</span>  <span class="stringliteral">&quot;\n\t&quot;</span>            \
        <span class="stringliteral">&quot;elpm %D0, Z&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>            \
        <span class="stringliteral">&quot;out %2, __tmp_reg__&quot;</span>             \
        : <span class="stringliteral">&quot;=r&quot;</span> (__result)                 \
        : <span class="stringliteral">&quot;r&quot;</span> (__addr32),                 \
          <span class="stringliteral">&quot;I&quot;</span> (_SFR_IO_ADDR(RAMPZ))       \
        : <span class="stringliteral">&quot;r30&quot;</span>, <span class="stringliteral">&quot;r31&quot;</span>                    \
    );                                    \
    __result;                             \
}))
</pre></div>
</div>
</div>
<a class="anchor" id="a33f4d4f7e9deb9a6dd0a96adfe0ddcc7"></a><!-- doxytag: member="pgmspace.h::__ELPM_enhanced__" ref="a33f4d4f7e9deb9a6dd0a96adfe0ddcc7" args="(addr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define __ELPM_enhanced__</td>
          <td>(</td>
          <td class="paramtype">addr&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">(__extension__({                    \
    <a class="code" href="group__avr__stdint.html#ga33594304e786b158f3fb30289278f5af">uint32_t</a> __addr32 = (<a class="code" href="group__avr__stdint.html#ga33594304e786b158f3fb30289278f5af">uint32_t</a>)(addr); \
    <a class="code" href="group__avr__stdint.html#gaba7bc1797add20fe3efdf37ced1182c5">uint8_t</a> __result;               \
    __asm__                         \
    (                               \
        <span class="stringliteral">&quot;out %2, %C1&quot;</span> <span class="stringliteral">&quot;\n\t&quot;</span>        \
        <span class="stringliteral">&quot;movw r30, %1&quot;</span> <span class="stringliteral">&quot;\n\t&quot;</span>       \
        <span class="stringliteral">&quot;elpm %0, Z+&quot;</span> <span class="stringliteral">&quot;\n\t&quot;</span>        \
        : <span class="stringliteral">&quot;=r&quot;</span> (__result)           \
        : <span class="stringliteral">&quot;r&quot;</span> (__addr32),           \
          <span class="stringliteral">&quot;I&quot;</span> (_SFR_IO_ADDR(RAMPZ)) \
        : <span class="stringliteral">&quot;r30&quot;</span>, <span class="stringliteral">&quot;r31&quot;</span>              \
    );                              \
    __result;                       \
}))
</pre></div>
</div>
</div>
<a class="anchor" id="aedbbb46a483479811fa0ff5156864dab"></a><!-- doxytag: member="pgmspace.h::__ELPM_float_enhanced__" ref="aedbbb46a483479811fa0ff5156864dab" args="(addr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define __ELPM_float_enhanced__</td>
          <td>(</td>
          <td class="paramtype">addr&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">(__extension__({                          \
    <a class="code" href="group__avr__stdint.html#ga33594304e786b158f3fb30289278f5af">uint32_t</a> __addr32 = (<a class="code" href="group__avr__stdint.html#ga33594304e786b158f3fb30289278f5af">uint32_t</a>)(addr); \
    <span class="keywordtype">float</span> __result;                       \
    __asm__                               \
    (                                     \
        <span class="stringliteral">&quot;out %2, %C1&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>            \
        <span class="stringliteral">&quot;movw r30, %1&quot;</span>  <span class="stringliteral">&quot;\n\t&quot;</span>            \
        <span class="stringliteral">&quot;elpm %A0, Z+&quot;</span>  <span class="stringliteral">&quot;\n\t&quot;</span>            \
        <span class="stringliteral">&quot;elpm %B0, Z+&quot;</span>  <span class="stringliteral">&quot;\n\t&quot;</span>            \
        <span class="stringliteral">&quot;elpm %C0, Z+&quot;</span>  <span class="stringliteral">&quot;\n\t&quot;</span>            \
        <span class="stringliteral">&quot;elpm %D0, Z&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>            \
        : <span class="stringliteral">&quot;=r&quot;</span> (__result)                 \
        : <span class="stringliteral">&quot;r&quot;</span> (__addr32),                 \
          <span class="stringliteral">&quot;I&quot;</span> (_SFR_IO_ADDR(RAMPZ))       \
        : <span class="stringliteral">&quot;r30&quot;</span>, <span class="stringliteral">&quot;r31&quot;</span>                    \
    );                                    \
    __result;                             \
}))
</pre></div>
</div>
</div>
<a class="anchor" id="a79c39998e58339e3056eb6566c540ea7"></a><!-- doxytag: member="pgmspace.h::__ELPM_float_xmega__" ref="a79c39998e58339e3056eb6566c540ea7" args="(addr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define __ELPM_float_xmega__</td>
          <td>(</td>
          <td class="paramtype">addr&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">(__extension__({                          \
    <a class="code" href="group__avr__stdint.html#ga33594304e786b158f3fb30289278f5af">uint32_t</a> __addr32 = (<a class="code" href="group__avr__stdint.html#ga33594304e786b158f3fb30289278f5af">uint32_t</a>)(addr); \
    <span class="keywordtype">float</span> __result;                       \
    __asm__                               \
    (                                     \
        <span class="stringliteral">&quot;in __tmp_reg__, %2&quot;</span> <span class="stringliteral">&quot;\n\t&quot;</span>       \
        <span class="stringliteral">&quot;out %2, %C1&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>            \
        <span class="stringliteral">&quot;movw r30, %1&quot;</span>  <span class="stringliteral">&quot;\n\t&quot;</span>            \
        <span class="stringliteral">&quot;elpm %A0, Z+&quot;</span>  <span class="stringliteral">&quot;\n\t&quot;</span>            \
        <span class="stringliteral">&quot;elpm %B0, Z+&quot;</span>  <span class="stringliteral">&quot;\n\t&quot;</span>            \
        <span class="stringliteral">&quot;elpm %C0, Z+&quot;</span>  <span class="stringliteral">&quot;\n\t&quot;</span>            \
        <span class="stringliteral">&quot;elpm %D0, Z&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>            \
        <span class="stringliteral">&quot;out %2, __tmp_reg__&quot;</span>             \
        : <span class="stringliteral">&quot;=r&quot;</span> (__result)                 \
        : <span class="stringliteral">&quot;r&quot;</span> (__addr32),                 \
          <span class="stringliteral">&quot;I&quot;</span> (_SFR_IO_ADDR(RAMPZ))       \
        : <span class="stringliteral">&quot;r30&quot;</span>, <span class="stringliteral">&quot;r31&quot;</span>                    \
    );                                    \
    __result;                             \
}))
</pre></div>
</div>
</div>
<a class="anchor" id="a26a3c7d17dc82e065ea9304c57a94d4c"></a><!-- doxytag: member="pgmspace.h::__ELPM_word_classic__" ref="a26a3c7d17dc82e065ea9304c57a94d4c" args="(addr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define __ELPM_word_classic__</td>
          <td>(</td>
          <td class="paramtype">addr&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">(__extension__({                        \
    <a class="code" href="group__avr__stdint.html#ga33594304e786b158f3fb30289278f5af">uint32_t</a> __addr32 = (<a class="code" href="group__avr__stdint.html#ga33594304e786b158f3fb30289278f5af">uint32_t</a>)(addr); \
    <a class="code" href="group__avr__stdint.html#ga1f1825b69244eb3ad2c7165ddc99c956">uint16_t</a> __result;                  \
    __asm__                             \
    (                                   \
        <span class="stringliteral">&quot;out %2, %C1&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>          \
        <span class="stringliteral">&quot;mov r31, %B1&quot;</span>  <span class="stringliteral">&quot;\n\t&quot;</span>          \
        <span class="stringliteral">&quot;mov r30, %A1&quot;</span>  <span class="stringliteral">&quot;\n\t&quot;</span>          \
        <span class="stringliteral">&quot;elpm&quot;</span>          <span class="stringliteral">&quot;\n\t&quot;</span>          \
        <span class="stringliteral">&quot;mov %A0, r0&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>          \
        <span class="stringliteral">&quot;in r0, %2&quot;</span>     <span class="stringliteral">&quot;\n\t&quot;</span>          \
        <span class="stringliteral">&quot;adiw r30, 1&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>          \
        <span class="stringliteral">&quot;adc r0, __zero_reg__&quot;</span> <span class="stringliteral">&quot;\n\t&quot;</span>   \
        <span class="stringliteral">&quot;out %2, r0&quot;</span>    <span class="stringliteral">&quot;\n\t&quot;</span>          \
        <span class="stringliteral">&quot;elpm&quot;</span>          <span class="stringliteral">&quot;\n\t&quot;</span>          \
        <span class="stringliteral">&quot;mov %B0, r0&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>          \
        : <span class="stringliteral">&quot;=r&quot;</span> (__result)               \
        : <span class="stringliteral">&quot;r&quot;</span> (__addr32),               \
          <span class="stringliteral">&quot;I&quot;</span> (_SFR_IO_ADDR(RAMPZ))     \
        : <span class="stringliteral">&quot;r0&quot;</span>, <span class="stringliteral">&quot;r30&quot;</span>, <span class="stringliteral">&quot;r31&quot;</span>            \
    );                                  \
    __result;                           \
}))
</pre></div>
</div>
</div>
<a class="anchor" id="ac22578c90fad247ec9d4ba3da448d293"></a><!-- doxytag: member="pgmspace.h::__ELPM_word_enhanced__" ref="ac22578c90fad247ec9d4ba3da448d293" args="(addr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define __ELPM_word_enhanced__</td>
          <td>(</td>
          <td class="paramtype">addr&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">(__extension__({                        \
    <a class="code" href="group__avr__stdint.html#ga33594304e786b158f3fb30289278f5af">uint32_t</a> __addr32 = (<a class="code" href="group__avr__stdint.html#ga33594304e786b158f3fb30289278f5af">uint32_t</a>)(addr); \
    <a class="code" href="group__avr__stdint.html#ga1f1825b69244eb3ad2c7165ddc99c956">uint16_t</a> __result;                  \
    __asm__                             \
    (                                   \
        <span class="stringliteral">&quot;out %2, %C1&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>          \
        <span class="stringliteral">&quot;movw r30, %1&quot;</span>  <span class="stringliteral">&quot;\n\t&quot;</span>          \
        <span class="stringliteral">&quot;elpm %A0, Z+&quot;</span>  <span class="stringliteral">&quot;\n\t&quot;</span>          \
        <span class="stringliteral">&quot;elpm %B0, Z&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>          \
        : <span class="stringliteral">&quot;=r&quot;</span> (__result)               \
        : <span class="stringliteral">&quot;r&quot;</span> (__addr32),               \
          <span class="stringliteral">&quot;I&quot;</span> (_SFR_IO_ADDR(RAMPZ))     \
        : <span class="stringliteral">&quot;r30&quot;</span>, <span class="stringliteral">&quot;r31&quot;</span>                  \
    );                                  \
    __result;                           \
}))
</pre></div>
</div>
</div>
<a class="anchor" id="a83272d379efbaa4b25607f376baa861d"></a><!-- doxytag: member="pgmspace.h::__ELPM_word_xmega__" ref="a83272d379efbaa4b25607f376baa861d" args="(addr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define __ELPM_word_xmega__</td>
          <td>(</td>
          <td class="paramtype">addr&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">(__extension__({                        \
    <a class="code" href="group__avr__stdint.html#ga33594304e786b158f3fb30289278f5af">uint32_t</a> __addr32 = (<a class="code" href="group__avr__stdint.html#ga33594304e786b158f3fb30289278f5af">uint32_t</a>)(addr); \
    <a class="code" href="group__avr__stdint.html#ga1f1825b69244eb3ad2c7165ddc99c956">uint16_t</a> __result;                  \
    __asm__                             \
    (                                   \
        <span class="stringliteral">&quot;in __tmp_reg__, %2&quot;</span> <span class="stringliteral">&quot;\n\t&quot;</span>     \
        <span class="stringliteral">&quot;out %2, %C1&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>          \
        <span class="stringliteral">&quot;movw r30, %1&quot;</span>  <span class="stringliteral">&quot;\n\t&quot;</span>          \
        <span class="stringliteral">&quot;elpm %A0, Z+&quot;</span>  <span class="stringliteral">&quot;\n\t&quot;</span>          \
        <span class="stringliteral">&quot;elpm %B0, Z&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>          \
        <span class="stringliteral">&quot;out %2, __tmp_reg__&quot;</span>           \
        : <span class="stringliteral">&quot;=r&quot;</span> (__result)               \
        : <span class="stringliteral">&quot;r&quot;</span> (__addr32),               \
          <span class="stringliteral">&quot;I&quot;</span> (_SFR_IO_ADDR(RAMPZ))     \
        : <span class="stringliteral">&quot;r30&quot;</span>, <span class="stringliteral">&quot;r31&quot;</span>                  \
    );                                  \
    __result;                           \
}))
</pre></div>
</div>
</div>
<a class="anchor" id="a59b40234e7b923f02ed953521fbeed30"></a><!-- doxytag: member="pgmspace.h::__ELPM_xmega__" ref="a59b40234e7b923f02ed953521fbeed30" args="(addr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define __ELPM_xmega__</td>
          <td>(</td>
          <td class="paramtype">addr&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">(__extension__({                    \
    <a class="code" href="group__avr__stdint.html#ga33594304e786b158f3fb30289278f5af">uint32_t</a> __addr32 = (<a class="code" href="group__avr__stdint.html#ga33594304e786b158f3fb30289278f5af">uint32_t</a>)(addr); \
    <a class="code" href="group__avr__stdint.html#gaba7bc1797add20fe3efdf37ced1182c5">uint8_t</a> __result;               \
    __asm__                         \
    (                               \
        <span class="stringliteral">&quot;in __tmp_reg__, %2&quot;</span> <span class="stringliteral">&quot;\n\t&quot;</span> \
        <span class="stringliteral">&quot;out %2, %C1&quot;</span> <span class="stringliteral">&quot;\n\t&quot;</span>        \
        <span class="stringliteral">&quot;movw r30, %1&quot;</span> <span class="stringliteral">&quot;\n\t&quot;</span>       \
        <span class="stringliteral">&quot;elpm %0, Z+&quot;</span> <span class="stringliteral">&quot;\n\t&quot;</span>        \
        <span class="stringliteral">&quot;out %2, __tmp_reg__&quot;</span>       \
        : <span class="stringliteral">&quot;=r&quot;</span> (__result)           \
        : <span class="stringliteral">&quot;r&quot;</span> (__addr32),           \
          <span class="stringliteral">&quot;I&quot;</span> (_SFR_IO_ADDR(RAMPZ)) \
        : <span class="stringliteral">&quot;r30&quot;</span>, <span class="stringliteral">&quot;r31&quot;</span>              \
    );                              \
    __result;                       \
}))
</pre></div>
</div>
</div>
<a class="anchor" id="aca983107cfbdef8ba6763386d3d32a95"></a><!-- doxytag: member="pgmspace.h::__LPM_classic__" ref="aca983107cfbdef8ba6763386d3d32a95" args="(addr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define __LPM_classic__</td>
          <td>(</td>
          <td class="paramtype">addr&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">(__extension__({                \
    <a class="code" href="group__avr__stdint.html#ga1f1825b69244eb3ad2c7165ddc99c956">uint16_t</a> __addr16 = (<a class="code" href="group__avr__stdint.html#ga1f1825b69244eb3ad2c7165ddc99c956">uint16_t</a>)(addr); \
    <a class="code" href="group__avr__stdint.html#gaba7bc1797add20fe3efdf37ced1182c5">uint8_t</a> __result;           \
    __asm__                     \
    (                           \
        <span class="stringliteral">&quot;lpm&quot;</span> <span class="stringliteral">&quot;\n\t&quot;</span>            \
        <span class="stringliteral">&quot;mov %0, r0&quot;</span> <span class="stringliteral">&quot;\n\t&quot;</span>     \
        : <span class="stringliteral">&quot;=r&quot;</span> (__result)       \
        : <span class="stringliteral">&quot;z&quot;</span> (__addr16)        \
        : <span class="stringliteral">&quot;r0&quot;</span>                  \
    );                          \
    __result;                   \
}))
</pre></div>
</div>
</div>
<a class="anchor" id="ade9afae7533e1b3054afd46cafd4d0a4"></a><!-- doxytag: member="pgmspace.h::__LPM_dword_classic__" ref="ade9afae7533e1b3054afd46cafd4d0a4" args="(addr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define __LPM_dword_classic__</td>
          <td>(</td>
          <td class="paramtype">addr&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">(__extension__({                            \
    <a class="code" href="group__avr__stdint.html#ga1f1825b69244eb3ad2c7165ddc99c956">uint16_t</a> __addr16 = (<a class="code" href="group__avr__stdint.html#ga1f1825b69244eb3ad2c7165ddc99c956">uint16_t</a>)(addr);   \
    <a class="code" href="group__avr__stdint.html#ga33594304e786b158f3fb30289278f5af">uint32_t</a> __result;                      \
    __asm__                                 \
    (                                       \
        <span class="stringliteral">&quot;lpm&quot;</span>           <span class="stringliteral">&quot;\n\t&quot;</span>              \
        <span class="stringliteral">&quot;mov %A0, r0&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>              \
        <span class="stringliteral">&quot;adiw r30, 1&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>              \
        <span class="stringliteral">&quot;lpm&quot;</span>           <span class="stringliteral">&quot;\n\t&quot;</span>              \
        <span class="stringliteral">&quot;mov %B0, r0&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>              \
        <span class="stringliteral">&quot;adiw r30, 1&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>              \
        <span class="stringliteral">&quot;lpm&quot;</span>           <span class="stringliteral">&quot;\n\t&quot;</span>              \
        <span class="stringliteral">&quot;mov %C0, r0&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>              \
        <span class="stringliteral">&quot;adiw r30, 1&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>              \
        <span class="stringliteral">&quot;lpm&quot;</span>           <span class="stringliteral">&quot;\n\t&quot;</span>              \
        <span class="stringliteral">&quot;mov %D0, r0&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>              \
        : <span class="stringliteral">&quot;=r&quot;</span> (__result), <span class="stringliteral">&quot;=z&quot;</span> (__addr16)  \
        : <span class="stringliteral">&quot;1&quot;</span> (__addr16)                    \
        : <span class="stringliteral">&quot;r0&quot;</span>                              \
    );                                      \
    __result;                               \
}))
</pre></div>
</div>
</div>
<a class="anchor" id="a51a9c87d5a2447c4e481d6c0cde5915e"></a><!-- doxytag: member="pgmspace.h::__LPM_dword_enhanced__" ref="a51a9c87d5a2447c4e481d6c0cde5915e" args="(addr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define __LPM_dword_enhanced__</td>
          <td>(</td>
          <td class="paramtype">addr&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">(__extension__({                            \
    <a class="code" href="group__avr__stdint.html#ga1f1825b69244eb3ad2c7165ddc99c956">uint16_t</a> __addr16 = (<a class="code" href="group__avr__stdint.html#ga1f1825b69244eb3ad2c7165ddc99c956">uint16_t</a>)(addr);   \
    <a class="code" href="group__avr__stdint.html#ga33594304e786b158f3fb30289278f5af">uint32_t</a> __result;                      \
    __asm__                                 \
    (                                       \
        <span class="stringliteral">&quot;lpm %A0, Z+&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>              \
        <span class="stringliteral">&quot;lpm %B0, Z+&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>              \
        <span class="stringliteral">&quot;lpm %C0, Z+&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>              \
        <span class="stringliteral">&quot;lpm %D0, Z&quot;</span>    <span class="stringliteral">&quot;\n\t&quot;</span>              \
        : <span class="stringliteral">&quot;=r&quot;</span> (__result), <span class="stringliteral">&quot;=z&quot;</span> (__addr16)  \
        : <span class="stringliteral">&quot;1&quot;</span> (__addr16)                    \
    );                                      \
    __result;                               \
}))
</pre></div>
</div>
</div>
<a class="anchor" id="a1b369c790673cf91213297ead210b7a7"></a><!-- doxytag: member="pgmspace.h::__LPM_enhanced__" ref="a1b369c790673cf91213297ead210b7a7" args="(addr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define __LPM_enhanced__</td>
          <td>(</td>
          <td class="paramtype">addr&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">(__extension__({                \
    <a class="code" href="group__avr__stdint.html#ga1f1825b69244eb3ad2c7165ddc99c956">uint16_t</a> __addr16 = (<a class="code" href="group__avr__stdint.html#ga1f1825b69244eb3ad2c7165ddc99c956">uint16_t</a>)(addr); \
    <a class="code" href="group__avr__stdint.html#gaba7bc1797add20fe3efdf37ced1182c5">uint8_t</a> __result;           \
    __asm__                     \
    (                           \
        <span class="stringliteral">&quot;lpm %0, Z&quot;</span> <span class="stringliteral">&quot;\n\t&quot;</span>      \
        : <span class="stringliteral">&quot;=r&quot;</span> (__result)       \
        : <span class="stringliteral">&quot;z&quot;</span> (__addr16)        \
    );                          \
    __result;                   \
}))
</pre></div>
</div>
</div>
<a class="anchor" id="a7121f301197b01eae138d18274dde754"></a><!-- doxytag: member="pgmspace.h::__LPM_float_classic__" ref="a7121f301197b01eae138d18274dde754" args="(addr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define __LPM_float_classic__</td>
          <td>(</td>
          <td class="paramtype">addr&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">(__extension__({                            \
    <a class="code" href="group__avr__stdint.html#ga1f1825b69244eb3ad2c7165ddc99c956">uint16_t</a> __addr16 = (<a class="code" href="group__avr__stdint.html#ga1f1825b69244eb3ad2c7165ddc99c956">uint16_t</a>)(addr);   \
    <span class="keywordtype">float</span> __result;                         \
    __asm__                                 \
    (                                       \
        <span class="stringliteral">&quot;lpm&quot;</span>           <span class="stringliteral">&quot;\n\t&quot;</span>              \
        <span class="stringliteral">&quot;mov %A0, r0&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>              \
        <span class="stringliteral">&quot;adiw r30, 1&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>              \
        <span class="stringliteral">&quot;lpm&quot;</span>           <span class="stringliteral">&quot;\n\t&quot;</span>              \
        <span class="stringliteral">&quot;mov %B0, r0&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>              \
        <span class="stringliteral">&quot;adiw r30, 1&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>              \
        <span class="stringliteral">&quot;lpm&quot;</span>           <span class="stringliteral">&quot;\n\t&quot;</span>              \
        <span class="stringliteral">&quot;mov %C0, r0&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>              \
        <span class="stringliteral">&quot;adiw r30, 1&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>              \
        <span class="stringliteral">&quot;lpm&quot;</span>           <span class="stringliteral">&quot;\n\t&quot;</span>              \
        <span class="stringliteral">&quot;mov %D0, r0&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>              \
        : <span class="stringliteral">&quot;=r&quot;</span> (__result), <span class="stringliteral">&quot;=z&quot;</span> (__addr16)  \
        : <span class="stringliteral">&quot;1&quot;</span> (__addr16)                    \
        : <span class="stringliteral">&quot;r0&quot;</span>                              \
    );                                      \
    __result;                               \
}))
</pre></div>
</div>
</div>
<a class="anchor" id="ad7f1d1a85be927ecf0912371791ec7cb"></a><!-- doxytag: member="pgmspace.h::__LPM_float_enhanced__" ref="ad7f1d1a85be927ecf0912371791ec7cb" args="(addr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define __LPM_float_enhanced__</td>
          <td>(</td>
          <td class="paramtype">addr&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">(__extension__({                            \
    <a class="code" href="group__avr__stdint.html#ga1f1825b69244eb3ad2c7165ddc99c956">uint16_t</a> __addr16 = (<a class="code" href="group__avr__stdint.html#ga1f1825b69244eb3ad2c7165ddc99c956">uint16_t</a>)(addr);   \
    <span class="keywordtype">float</span> __result;                         \
    __asm__                                 \
    (                                       \
        <span class="stringliteral">&quot;lpm %A0, Z+&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>              \
        <span class="stringliteral">&quot;lpm %B0, Z+&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>              \
        <span class="stringliteral">&quot;lpm %C0, Z+&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>              \
        <span class="stringliteral">&quot;lpm %D0, Z&quot;</span>    <span class="stringliteral">&quot;\n\t&quot;</span>              \
        : <span class="stringliteral">&quot;=r&quot;</span> (__result), <span class="stringliteral">&quot;=z&quot;</span> (__addr16)  \
        : <span class="stringliteral">&quot;1&quot;</span> (__addr16)                    \
    );                                      \
    __result;                               \
}))
</pre></div>
</div>
</div>
<a class="anchor" id="a4fbd191cba8015caf1278918dffdeeab"></a><!-- doxytag: member="pgmspace.h::__LPM_word_classic__" ref="a4fbd191cba8015caf1278918dffdeeab" args="(addr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define __LPM_word_classic__</td>
          <td>(</td>
          <td class="paramtype">addr&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">(__extension__({                            \
    <a class="code" href="group__avr__stdint.html#ga1f1825b69244eb3ad2c7165ddc99c956">uint16_t</a> __addr16 = (<a class="code" href="group__avr__stdint.html#ga1f1825b69244eb3ad2c7165ddc99c956">uint16_t</a>)(addr);   \
    <a class="code" href="group__avr__stdint.html#ga1f1825b69244eb3ad2c7165ddc99c956">uint16_t</a> __result;                      \
    __asm__                                 \
    (                                       \
        <span class="stringliteral">&quot;lpm&quot;</span>           <span class="stringliteral">&quot;\n\t&quot;</span>              \
        <span class="stringliteral">&quot;mov %A0, r0&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>              \
        <span class="stringliteral">&quot;adiw r30, 1&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>              \
        <span class="stringliteral">&quot;lpm&quot;</span>           <span class="stringliteral">&quot;\n\t&quot;</span>              \
        <span class="stringliteral">&quot;mov %B0, r0&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>              \
        : <span class="stringliteral">&quot;=r&quot;</span> (__result), <span class="stringliteral">&quot;=z&quot;</span> (__addr16)  \
        : <span class="stringliteral">&quot;1&quot;</span> (__addr16)                    \
        : <span class="stringliteral">&quot;r0&quot;</span>                              \
    );                                      \
    __result;                               \
}))
</pre></div>
</div>
</div>
<a class="anchor" id="ab62d92f898b21110be73d3d70ee99069"></a><!-- doxytag: member="pgmspace.h::__LPM_word_enhanced__" ref="ab62d92f898b21110be73d3d70ee99069" args="(addr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define __LPM_word_enhanced__</td>
          <td>(</td>
          <td class="paramtype">addr&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">(__extension__({                            \
    <a class="code" href="group__avr__stdint.html#ga1f1825b69244eb3ad2c7165ddc99c956">uint16_t</a> __addr16 = (<a class="code" href="group__avr__stdint.html#ga1f1825b69244eb3ad2c7165ddc99c956">uint16_t</a>)(addr);   \
    <a class="code" href="group__avr__stdint.html#ga1f1825b69244eb3ad2c7165ddc99c956">uint16_t</a> __result;                      \
    __asm__                                 \
    (                                       \
        <span class="stringliteral">&quot;lpm %A0, Z+&quot;</span>   <span class="stringliteral">&quot;\n\t&quot;</span>              \
        <span class="stringliteral">&quot;lpm %B0, Z&quot;</span>    <span class="stringliteral">&quot;\n\t&quot;</span>              \
        : <span class="stringliteral">&quot;=r&quot;</span> (__result), <span class="stringliteral">&quot;=z&quot;</span> (__addr16)  \
        : <span class="stringliteral">&quot;1&quot;</span> (__addr16)                    \
    );                                      \
    __result;                               \
}))
</pre></div>
</div>
</div>
</div>

<hr width="80%">
<p><center>Automatically generated by Doxygen 1.6.1 on 30 Nov 2009.</center></p>

</body>
</html>