📄 i2c_8h.html
字号:
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a28" doxytag="i2c.h::TWCR_CMD_MASK"></a>#define </td><td class="memItemRight" valign="bottom"><b>TWCR_CMD_MASK</b> 0x0F</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a29" doxytag="i2c.h::TWSR_STATUS_MASK"></a>#define </td><td class="memItemRight" valign="bottom"><b>TWSR_STATUS_MASK</b> 0xF8</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a30" doxytag="i2c.h::I2C_OK"></a>#define </td><td class="memItemRight" valign="bottom"><b>I2C_OK</b> 0x00</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a31" doxytag="i2c.h::I2C_ERROR_NODEV"></a>#define </td><td class="memItemRight" valign="bottom"><b>I2C_ERROR_NODEV</b> 0x01</td></tr><tr><td colspan="2"><br><h2>Enumerations</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">enum </td><td class="memItemRight" valign="bottom"><b>eI2cStateType</b> { <br> <b>I2C_IDLE</b> = 0, <b>I2C_BUSY</b> = 1, <b>I2C_MASTER_TX</b> = 2, <b>I2C_MASTER_RX</b> = 3, <br> <b>I2C_SLAVE_TX</b> = 4, <b>I2C_SLAVE_RX</b> = 5<br> }</td></tr><tr><td colspan="2"><br><h2>Functions</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a38" doxytag="i2c.h::i2cInit"></a>void </td><td class="memItemRight" valign="bottom"><a class="el" href="i2c_8h.html#a38">i2cInit</a> (void)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Initialize I2C (TWI) interface. <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a39" doxytag="i2c.h::i2cSetBitrate"></a>void </td><td class="memItemRight" valign="bottom"><a class="el" href="i2c_8h.html#a39">i2cSetBitrate</a> (u16 bitrateKHz)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Set the I2C transaction bitrate (in KHz). <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a40" doxytag="i2c.h::i2cSetLocalDeviceAddr"></a>void </td><td class="memItemRight" valign="bottom"><a class="el" href="i2c_8h.html#a40">i2cSetLocalDeviceAddr</a> (u08 deviceAddr, u08 genCallEn)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Set the local (AVR processor's) I2C device address. <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a41" doxytag="i2c.h::i2cSetSlaveReceiveHandler"></a>void </td><td class="memItemRight" valign="bottom"><a class="el" href="i2c_8h.html#a41">i2cSetSlaveReceiveHandler</a> (void(*i2cSlaveRx_func)(u08 receiveDataLength, u08 *recieveData))</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Set the user function which handles receiving (incoming) data as a slave. <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a42" doxytag="i2c.h::i2cSetSlaveTransmitHandler"></a>void </td><td class="memItemRight" valign="bottom"><a class="el" href="i2c_8h.html#a42">i2cSetSlaveTransmitHandler</a> (u08(*i2cSlaveTx_func)(u08 transmitDataLengthMax, u08 *transmitData))</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Set the user function which handles transmitting (outgoing) data as a slave. <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a43" doxytag="i2c.h::i2cSendStart"></a>void </td><td class="memItemRight" valign="bottom"><a class="el" href="i2c_8h.html#a43">i2cSendStart</a> (void)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Send an I2C start condition in Master mode. <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a44" doxytag="i2c.h::i2cSendStop"></a>void </td><td class="memItemRight" valign="bottom"><a class="el" href="i2c_8h.html#a44">i2cSendStop</a> (void)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Send an I2C stop condition in Master mode. <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a45" doxytag="i2c.h::i2cWaitForComplete"></a>void </td><td class="memItemRight" valign="bottom"><a class="el" href="i2c_8h.html#a45">i2cWaitForComplete</a> (void)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Wait for current I2C operation to complete. <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a46" doxytag="i2c.h::i2cSendByte"></a>void </td><td class="memItemRight" valign="bottom"><a class="el" href="i2c_8h.html#a46">i2cSendByte</a> (u08 data)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Send an (address|R/W) combination or a data byte over I2C. <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a47" doxytag="i2c.h::i2cReceiveByte"></a>void </td><td class="memItemRight" valign="bottom"><a class="el" href="i2c_8h.html#a47">i2cReceiveByte</a> (u08 ackFlag)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Receive a data byte over I2C. <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a48" doxytag="i2c.h::i2cGetReceivedByte"></a>u08 </td><td class="memItemRight" valign="bottom"><a class="el" href="i2c_8h.html#a48">i2cGetReceivedByte</a> (void)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Pick up the data that was received with <a class="el" href="i2c_8c.html#a19">i2cReceiveByte()</a>. <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a49" doxytag="i2c.h::i2cGetStatus"></a>u08 </td><td class="memItemRight" valign="bottom"><a class="el" href="i2c_8h.html#a49">i2cGetStatus</a> (void)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Get current I2c bus status from TWSR. <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a50" doxytag="i2c.h::i2cMasterSend"></a>void </td><td class="memItemRight" valign="bottom"><a class="el" href="i2c_8h.html#a50">i2cMasterSend</a> (u08 deviceAddr, u08 length, u08 *data)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">send I2C data to a device on the bus <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a51" doxytag="i2c.h::i2cMasterReceive"></a>void </td><td class="memItemRight" valign="bottom"><a class="el" href="i2c_8h.html#a51">i2cMasterReceive</a> (u08 deviceAddr, u08 length, u08 *data)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">receive I2C data from a device on the bus <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a52" doxytag="i2c.h::i2cMasterSendNI"></a>u08 </td><td class="memItemRight" valign="bottom"><a class="el" href="i2c_8h.html#a52">i2cMasterSendNI</a> (u08 deviceAddr, u08 length, u08 *data)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">send I2C data to a device on the bus (non-interrupt based) <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a53" doxytag="i2c.h::i2cMasterReceiveNI"></a>u08 </td><td class="memItemRight" valign="bottom"><a class="el" href="i2c_8h.html#a53">i2cMasterReceiveNI</a> (u08 deviceAddr, u08 length, u08 *data)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">receive I2C data from a device on the bus (non-interrupt based) <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a54" doxytag="i2c.h::i2cGetState"></a>eI2cStateType </td><td class="memItemRight" valign="bottom"><a class="el" href="i2c_8h.html#a54">i2cGetState</a> (void)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Get the current high-level state of the I2C interface. <br></td></tr></table><hr size="1"><address style="align: right;"><small>Generated on Sun Oct 29 03:41:08 2006 for Procyon AVRlib by <a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.2 </small></address></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -