📄 i2c_8c.html
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"><title>Procyon ARMlib-LPC2100: i2c.c File Reference</title><link href="dox.css" rel="stylesheet" type="text/css"></head><body><!-- Generated by Doxygen 1.3.6 --><div class="qindex"><a class="qindex" href="main.html">Main Page</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="globals.html">Globals</a></div><h1>i2c.c File Reference</h1>I2C interface using Philips LPC internal I2C hardware. <a href="#_details">More...</a><p><code>#include "lpc210x.h"</code><br><code>#include "config.h"</code><br><code>#include "<a class="el" href="global_8h-source.html">global.h</a>"</code><br><code>#include "<a class="el" href="timer_8h-source.html">timer.h</a>"</code><br><code>#include "<a class="el" href="i2c_8h-source.html">i2c.h</a>"</code><br><p><a href="i2c_8c-source.html">Go to the source code of this file.</a><table border=0 cellpadding=0 cellspacing=0><tr><td></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="a0" doxytag="i2c.c::i2cInit" ></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="i2c_8c.html#a0">i2cInit</a> (void)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Initialize I2C (TWI) interface. <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a1" doxytag="i2c.c::i2cSetBitrate" ></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="i2c_8c.html#a1">i2cSetBitrate</a> (u16 bitrateDiv)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Set the I2C transaction bitrate (in KHz). <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a2" doxytag="i2c.c::i2cSetLocalDeviceAddr" ></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="i2c_8c.html#a2">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><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a3" doxytag="i2c.c::i2cSendStart" ></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="i2c_8c.html#a3">i2cSendStart</a> (void)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Send an I2C start condition in Master mode. <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a4" doxytag="i2c.c::i2cSendStop" ></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="i2c_8c.html#a4">i2cSendStop</a> (void)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Send an I2C stop condition in Master mode. <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a5" doxytag="i2c.c::i2cWaitForComplete" ></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="i2c_8c.html#a5">i2cWaitForComplete</a> (void)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Wait for current I2C operation to complete. <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a6" doxytag="i2c.c::i2cSendByte" ></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="i2c_8c.html#a6">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><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a7" doxytag="i2c.c::i2cReceiveByte" ></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="i2c_8c.html#a7">i2cReceiveByte</a> (u08 ackFlag)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Receive a data byte over I2C. <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a8" doxytag="i2c.c::i2cGetReceivedByte" ></a>u08 </td><td class="memItemRight" valign=bottom><a class="el" href="i2c_8c.html#a8">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#a7">i2cReceiveByte()</a>. <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a9" doxytag="i2c.c::i2cGetStatus" ></a>u08 </td><td class="memItemRight" valign=bottom><a class="el" href="i2c_8c.html#a9">i2cGetStatus</a> (void)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Get current I2c bus status from TWSR. <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a10" doxytag="i2c.c::i2cMasterSendNI" ></a>u08 </td><td class="memItemRight" valign=bottom><a class="el" href="i2c_8c.html#a10">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><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>u08 </td><td class="memItemRight" valign=bottom><a class="el" href="i2c_8c.html#a11">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) <a href="#a11"></a><br><br></td></tr></table><hr><a name="_details"></a><h2>Detailed Description</h2>I2C interface using Philips LPC internal I2C hardware. <p><p>Definition in file <a class="el" href="i2c_8c-source.html">i2c.c</a>.<hr><h2>Function Documentation</h2><a class="anchor" name="a11" doxytag="i2c.c::i2cMasterReceiveNI" ></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> u08 i2cMasterReceiveNI </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">u08 </td> <td class="mdname" nowrap> <em>deviceAddr</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td></td> <td class="md" nowrap>u08 </td> <td class="mdname" nowrap> <em>length</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td></td> <td class="md" nowrap>u08 * </td> <td class="mdname" nowrap> <em>data</em></td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p>receive I2C data from a device on the bus (non-interrupt based) <p>cbi(TWCR, TWIE); <p>Definition at line <a class="el" href="i2c_8c-source.html#l00220">220</a> of file <a class="el" href="i2c_8c-source.html">i2c.c</a>.<p>References <a class="el" href="i2c_8c-source.html#l00161">i2cGetReceivedByte()</a>, <a class="el" href="i2c_8c-source.html#l00142">i2cReceiveByte()</a>, <a class="el" href="i2c_8c-source.html#l00134">i2cSendByte()</a>, <a class="el" href="i2c_8c-source.html#l00117">i2cSendStart()</a>, <a class="el" href="i2c_8c-source.html#l00123">i2cSendStop()</a>, and <a class="el" href="i2c_8c-source.html#l00128">i2cWaitForComplete()</a>. </td> </tr></table><hr size="1"><address style="align: right;"><small>Generated on Tue Jul 13 03:38:12 2004 for Procyon ARMlib-LPC2100 by<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border=0 > </a>1.3.6 </small></address></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -