- LiFePO4 Speicher Test         
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 39

Thema: I2C Einstieg

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Moderator Robotik Einstein Avatar von Kampi
    Registriert seit
    21.11.2009
    Ort
    Monheim, Nordrhein-Westfalen, Germany
    Alter
    34
    Beiträge
    3.501
    Blog-Einträge
    9
    Hey,

    die Pins A0-A2 kannst du unbeschaltet lassen. Die brauchst du nur wenn du an einem Bus mehr als einen PCF8574 hast (damit kannst du einzelnen Bausteine anderen Adressen zuweisen).
    Die Ausgänge vom PCF8574 sind Open-Collector, sprich die schalten nach GND. Wenn du eine LED anschließen willst einfach Vcc->Widerstand->LED->Pin vom PCF
    Schaut ruhig mal auf meiner Homepage vorbei :
    http://kampis-elektroecke.de

    Oder folge mir auf Google+:
    Daniel Kampert

    Es gibt 10 Arten von Menschen. Die einen können Binär, die anderen nicht.

    Gruß
    Daniel

  2. #2
    Erfahrener Benutzer Robotik Visionär Avatar von 021aet04
    Registriert seit
    17.01.2005
    Ort
    Niklasdorf
    Alter
    36
    Beiträge
    5.063
    Die Adresspins würde auf definierte Pegel bringen (GND oder 5V). So kannst du ein Fehlverhalten von Anfang an ausschließen. Ich würde immer die kleinste mögliche Adresse wählen, wenn du mehrere verwendest brauchst du nur die Adresse erhöhen. MfG Hannes

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    17.02.2011
    Beiträge
    11
    Hallo Einsteiger,

    eine sehr gute Beschreibung der Hardware mit Schaltplan findest Du hier:

    http://www.horter.de/i2c/i2c-ausgabe/ausgabe_2a.html

    Gruß Christian

  4. #4
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    21.05.2012
    Beiträge
    511
    Also Leute, danke für eure Antworten.
    Doch es will noch nicht gehen...

    Hie der Code :

    Code:
    $regfile = "m32def.dat"
    $crystal = 16000000
    $hwstack = 200
    $swstack = 200
    $framesize = 400
    
    'TWI konfigurieren
    Config Sda = Portc.1
    Config Scl = Portc.0
    Config Twi = 100000                                         'TWI Frequenz
    
    'Adresse des PCF
    Const Pcf8574w = &H40
    Const Pcf8574r = &H41
    
    Dim Bitmuster As Byte
    Bitmuster = 1
    
    'I²C initialisieren
    I2cinit
    
    Do
    
    I2cstart                                                    'TWI Startkondition
    I2cwbyte Pcf8574w
    I2cwbyte Bitmuster
    I2cstop
    
    Wait 1
    
    I2cstart                                                    'TWI Startkondition
    I2cwbyte Pcf8574w
    I2cwbyte 0
    I2cstop
    
    Wait 1
    
    
    Loop
    End
    Zu A0-2 hab ich es so gemacht wie empfohlen: kleinste Adresse -> daraus folgere ich A0-2 auf GND ??

    eine LED an P0 angeschlossen. Müsste die dann nicht leuchten ?? Oder habe ich mal wieder einen Denkfehler ??
    Ich hoffe ihr könnt mir helfen ...

  5. #5
    Erfahrener Benutzer Robotik Visionär Avatar von 021aet04
    Registriert seit
    17.01.2005
    Ort
    Niklasdorf
    Alter
    36
    Beiträge
    5.063
    Welchen Typ hast du genau? Es gibt den PCF8574 und den PCF8574A. Das hier auf Seite 9.
    Die Adresse ist einmal Hex 40 (bzw 41) und einmal Hex 70 (bzw 71).

    MfG Hannes

  6. #6
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    21.05.2012
    Beiträge
    511
    Ich habe den PCF 8574 P von Reichelt.
    Muss ich INT irgendwie verbinden ??

  7. #7
    Erfahrener Benutzer Robotik Visionär Avatar von 021aet04
    Registriert seit
    17.01.2005
    Ort
    Niklasdorf
    Alter
    36
    Beiträge
    5.063
    Der Int kann unbeschalten bleiben. Dieser ist nur dafür gedacht wenn man den µC signalisieren will das neue Daten anliegen (wenn man einen oder mehrere I/O als Eingang verwendet). Ich kenne mich mit Bascom nicht aus, aber versuche einmal den Gesamten Port zu beschreiben. Eventuell im Sekundentakt die Werte ändern (z.B. gesamten Port 0 und dann 1). MfG Hannes

  8. #8
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    21.05.2012
    Beiträge
    511
    Ich habe den Fehler gefunden
    Es lag daran dass ich die Widerstände an SCL und SDA vergessen hab ( ich habe nicht RN-Control sondern mein eigenes Board genutzt, welches diese Widerstände nicht hat).
    Jetzt geht es also und summt vor sich hin und blinkt dazu :

    Code:
    $regfile = "m32def.dat"
    $crystal = 16000000
    $hwstack = 200
    $swstack = 200
    $framesize = 400
    
    
    Config Portd.7 = Output
    
    
    'TWI konfigurieren
    Config Sda = Portc.1
    Config Scl = Portc.0
    Config Twi = 100000                                         'TWI Frequenz
    
    'Adresse des PCF
    Const Pcf8574w = &H40
    Const Pcf8574r = &H41
    
    
    Sound Portd.7 , 400 , 450
    Sound Portd.7 , 400 , 250
    Sound Portd.7 , 400 , 450
    Wait 1
    
    'I²C initialisieren
    I2cinit
    
    Sound Portd.7 , 400 , 450
    
    Do
    
    I2cstart                                                    'TWI Startkondition
    I2cwbyte Pcf8574w
    I2cwbyte &B00000000
    I2cstop
    
    Sound Portd.7 , 400 , 450
    
    Wait 1
    
    I2cstart                                                    'TWI Startkondition
    I2cwbyte Pcf8574w
    I2cwbyte &B11111111
    I2cstop
    
    Sound Portd.7 , 400 , 450
    
    Wait 1
    
    Loop
    End

    Kann ich, wenn ich neue Prog proggen möchte auch die Kabel und Verbindungen zum PCF dranlassen ??

    Wie soll es jetzt weiter gehen ??

  9. #9
    Neuer Benutzer Öfters hier
    Registriert seit
    17.02.2011
    Beiträge
    11
    Hallo Einsteiger,

    für einen PCF8574 (alle Adressanschlüsse auf low) schaltet man folgendermaßen alle LED´s aus:
    Code:
    I2cstart
    I2cwbyte &B01000000 'Adresse
    I2cwbyte &B11111111 'Daten
    I2cstop
    Zum Einschalten mußt Du statt 1 eine 0 schreiben. Alle LES´s an:

    Code:
    I2cstart
    I2cwbyte &B01000000 'Adresse
    I2cwbyte &B00000000 'Daten
    I2cstop
    Geht natürlich auch gemischt in jeder Kombination.

    Gruß Christian

  10. #10
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    21.05.2012
    Beiträge
    511
    Und wie kann ich einen Eingang auslesen ??

Seite 1 von 2 12 LetzteLetzte

Ähnliche Themen

  1. Problem mit I2C Sensor DRMOD-I2C-RVI
    Von muerzi im Forum Sensoren / Sensorik
    Antworten: 23
    Letzter Beitrag: 22.02.2010, 18:29
  2. I2C Overview für den Einstieg
    Von Vbxler im Forum Elektronik
    Antworten: 0
    Letzter Beitrag: 19.05.2008, 18:30
  3. Problem: Zwei MEGA8 via I2C-Bus koppeln (mit I2C-slave-Lib)
    Von Ulfens im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 4
    Letzter Beitrag: 11.01.2006, 15:25
  4. *I2C* maximale eingänge per i2c auf 8 digitale Pins
    Von Christian Sturm im Forum Elektronik
    Antworten: 9
    Letzter Beitrag: 22.06.2004, 19:44
  5. Grundlegendes zum Einstieg mit I2C / AVR / RN-Control etc.
    Von Trabukh im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 31
    Letzter Beitrag: 20.06.2004, 09:58

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad