<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://wiki.mcselec.com/bavr/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://wiki.mcselec.com/bavr/index.php?action=history&amp;feed=atom&amp;title=I2C_USI</id>
		<title>I2C USI - Revision history</title>
		<link rel="self" type="application/atom+xml" href="http://wiki.mcselec.com/bavr/index.php?action=history&amp;feed=atom&amp;title=I2C_USI"/>
		<link rel="alternate" type="text/html" href="http://wiki.mcselec.com/bavr/index.php?title=I2C_USI&amp;action=history"/>
		<updated>2026-06-03T00:35:51Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.18.6</generator>

	<entry>
		<id>http://wiki.mcselec.com/bavr/index.php?title=I2C_USI&amp;diff=5244&amp;oldid=prev</id>
		<title>Admin: Created page with &quot;The I2C_USI library is an alternative I2C master library. It is intended to be used with processors that have an USI interface.  Using the hardware is better since it will use...&quot;</title>
		<link rel="alternate" type="text/html" href="http://wiki.mcselec.com/bavr/index.php?title=I2C_USI&amp;diff=5244&amp;oldid=prev"/>
				<updated>2015-06-15T21:22:07Z</updated>
		
		<summary type="html">&lt;p&gt;Created page with &amp;quot;The I2C_USI library is an alternative I2C master library. It is intended to be used with processors that have an USI interface.  Using the hardware is better since it will use...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;The I2C_USI library is an alternative I2C master library. It is intended to be used with processors that have an USI interface.&lt;br /&gt;
&lt;br /&gt;
Using the hardware is better since it will use less processor resources.&lt;br /&gt;
&lt;br /&gt;
If a processor has TWI, use the TWI&lt;br /&gt;
&lt;br /&gt;
If a processors has USI, use the USI&lt;br /&gt;
&lt;br /&gt;
If a processor has no hardware I2C, use the default built in software routines.&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
To use the USI in master mode, use&amp;amp;nbsp;[[CONFIG USI|CONFIG USI]].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bascomavr&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
'------------------------------------------------------------------------------&lt;br /&gt;
' (c) 1995-2014 MCS Electronics&lt;br /&gt;
' USI-MASTER.bas&lt;br /&gt;
' USI used as TWI master demo&lt;br /&gt;
'------------------------------------------------------------------------------&lt;br /&gt;
 &lt;br /&gt;
$regfile = &amp;quot;attiny2313.dat&amp;quot;&lt;br /&gt;
$crystal = 8000000&lt;br /&gt;
$hwstack = 40&lt;br /&gt;
$swstack = 16&lt;br /&gt;
$framesize = 24&lt;br /&gt;
$baud = 19200&lt;br /&gt;
 &lt;br /&gt;
config usi = twimaster , mode = fast&lt;br /&gt;
 &lt;br /&gt;
dim b as byte&lt;br /&gt;
 &lt;br /&gt;
i2cinit&lt;br /&gt;
 &lt;br /&gt;
do&lt;br /&gt;
i2cstart&lt;br /&gt;
i2cwbyte &amp;amp;H40 'send slave WRITE address for PCF8574&lt;br /&gt;
i2cwbyte &amp;amp;B10101010 'send a pattern&lt;br /&gt;
i2crepstart 'repeated start&lt;br /&gt;
 &lt;br /&gt;
i2cwbyte &amp;amp;H41 'send slave READ address&lt;br /&gt;
i2crbyte b , ack 'read a byte&lt;br /&gt;
i2crbyte b , nack 'and again&lt;br /&gt;
i2cstop 'end transaction and free bus&lt;br /&gt;
 &lt;br /&gt;
waitms 100 'some delay not required only when you print&lt;br /&gt;
loop&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;{{Languages}}&lt;br /&gt;
&lt;br /&gt;
[[Category:ASM Libraries and Add-Ons]]&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>