Forum: Mikrocontroller und Digitale Elektronik I2C an PORT PINS


von Wolfgang (Gast)


Lesenswert?

hat schon mal jemand einen I2C - Bus über normale PORT PINS 
angeschlossen, ich verwende einen Atmega128 und die I2C Schnittstelle 
des Controllers
ist bereits belegt. Welche Geschwindigkeit ist damit zu realisieren ?

Gruß
Wolfgang

von Mark de Jong (Gast)


Lesenswert?

Hallo Wolfgang,

Was ist dein ziel?

Braucht Du ein zweites I2C kanal um mehrere ICs mit gleiche I2C addresse 
anzuschließen?

Wenn Ja, dan kannst Du auch die standard I2C bus nehmen und einen MUX 
(4052,etc) nehmen.

In Software is einen I2C-master auch kein Problem, bis zu 100..400kHz.

Grüße Mark.

von Wolfgang (Gast)


Lesenswert?

Danke Mark
Mein Problem ist, das ich keinen Einfluß auf die Hardwareentwicklung 
habe, und nun ein LCD Display welches an den PORT PD6 &PD7 angeschlossen 
ist ansteuern muß.
Im LCD sitzt nun ein PCF I2C Controller den ich möglichst schnell 
ansteuern muß.
Mich interisiert eine mögliche Übertragungsschwindligkeit und falls 
jemand so etwas bereits gemacht hat, vielleicht ein kleines 
Programmbeispiel, da ich bis jetzt nur in C Programmiert habe und eine 
solche Schnittstelle in Assembler bestimmt schneller ist.
 Gruß Wolfgang

von Peter D. (peda)


Lesenswert?

Hi Wolfgang,

hier meine I2C Routine:

http://www.specs.de/~danni/appl/soft/c51/eeprom/index.htm


Die PCF Bausteine können nur max 100kHz, d.h. Du mußt reichlich NOPs 
oder Delayschleifen einfügen, um so langsam zu werden.
Assembler bringt also nichts.


Peter

von Wolfgang (Gast)


Lesenswert?

Hi Peter

Vielen dank für dein Programm, das wird mir sicherlich sehr helfen
Ich werde aber Wahrscheinlich ohne ACK arbeiten müssen, auserdem muß ich 
zwischendurch das nächste Byte noch berechnen.

Danke Wolfgang

von Bernhard T (Gast)


Lesenswert?

Da steht doch was im Tut...
Gibt es irgendwo I2C-Funktionen für avr-gcc?
Fertige I2C-Routinen findet man z.B. auf 
http://www.mysunrise.ch/users/pfleury/avr-software.html.
Gruss  Bernhard

von Wolfgang (Gast)


Lesenswert?

Hi Bernhard
diese Routinen benutzen den I2C Ausgang trotzdem Danke
Wolfgang

von Bernhard T (Gast)


Lesenswert?

I2C Master Interface This library consists of a C include file 
i2cmaster.h and an assembler module i2cmaster.S.
It can be used to communicate with I2C devices (serial eeprom, serial 
RTC etc) from any AVR device.
i2cmaster.zip
nicht any AVR hat TWI.
Gruss Bernhard

von Wolfgang (Gast)


Lesenswert?

ups
da hab ich beim Überfliegen des Programms wohl was falsch interpretiert
Danke
Wolfgang

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.