You are on page 1of 3

3/10/2016

USII2CSLAVEforATtinyCPUs|AVRFreaks

Signup
Login
Whatareyouinterestedin?
EntireSite

Search

USI I2C SLAVE for ATtiny CPUs

http://community.atmel.com/projects/usii2cslaveattinycpus

1/3

3/10/2016

USII2CSLAVEforATtinyCPUs|AVRFreaks

Posted by jim116 on Thu. Mar 22, 2012 11:04 AM

Fivestar widget

Total votes: 1

COMPLETE ASSEMBLER CODE FOR USI I2C SLAVE for ATtiny CPUs
USE external pullups for SDA,SCL pins (4.7k to V+)
USAGE:
I2C WRITE DATA TO SLAVE
1byte: ADDRESS (=0xAC)
2byte: SUBADDRESS (=< SRAM SIZESTACK from 0 to 120 for ATtiny2313)
3byte: DATA (will be written to SRAM position =SRAM_START+SUBADDRESS)
4byte: DATA (will be written to SRAM position =SRAM_START+SUBADDRESS+1)
5byte: DATA (will be written to SRAM position =SRAM_START+SUBADDRESS+2)
...
etc.
I2C READ DATA FROM SLAVE
1byte: ADDRESS+1 (=0xAC+1)
2byte: DATA (read from SRAM position =SRAM_START+SUBADDRESS)
3byte: DATA (read from SRAM position =SRAM_START+SUBADDRESS+1)
...
etc.
I2C WRITE SUBADDRESS TO SLAVE, READ DATA FROM SLAVE
1byte: ADDRESS (=0xAC)
2byte: SUBADDRESS (=< SRAM SIZESTACK)
Repeated Start
1byte: ADDRESS+1 (=0xAC+1)
2byte: DATA (read from SRAM position =SRAM_START+SUBADDRESS)
3byte: DATA (read from SRAM position =SRAM_START+SUBADDRESS+1)
...
etc.
I HAVE SPENDED A LOT OF TIME AND THEN FIND BUG IN ALL ATMEL DOCS:
SCL DDR and PORT MUST BE ALWAYS =1 !!!!!!!!!!!!!!!!! *
SDA PORT MUST BE ALWAYS =1 !!!!!!!!!!!!!!!!! *
ATtiny2313 memory use summary [bytes]:
Segment Begin End Code Data Used Size Use%

[.cseg] 0x000000 0x000132 278 0 278 2048 13.6%


[.dseg] 0x000060 0x000061 0 1 1 128 0.8%
[.eseg] 0x000000 0x000000 0 0 0 128 0.0%

Attachment(s):

usi.zip(http://community.atmel.com/sites/default/files/project_files/usi.zip)

Tags:

http://community.atmel.com/projects/usii2cslaveattinycpus

2/3

3/10/2016

USII2CSLAVEforATtinyCPUs|AVRFreaks

Complete code
,
AVR Studio 4

2015 Atmel Corporation


Privacy (http://www.atmel.com/About/privacy.aspx)
Contact (http://www.atmel.com/About/contact/distributors/default.aspx?
contactType=Online%20Directory)

Site Use Terms (http://www.atmel.com/About/legal.aspx)


Cookies (http://www.atmel.com/About/cookies.aspx)

http://community.atmel.com/projects/usii2cslaveattinycpus

3/3

You might also like