-
        
+ Antworten
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 13

Thema: I²C Problem mit Mega16 und BASCOM...

  1. #1
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.06.2004
    Ort
    Bad Schussenried in Oberschwaben
    Alter
    26
    Beiträge
    1.461

    I²C Problem mit Mega16 und BASCOM...

    HI!

    Ich habe mich letztens entschlossen, ein I²C Display zu bauen.
    Das ist jetzt fertig, aber der I²C mit dem Mega 16 funktioniert nicht.

    SCL ist wie im Datenblatt auf Portc.0, SDA ist wie im Datenblatt auf
    Portc.1.

    Folgender Quelltext in BASCOM:
    Code:
    '===CONFIGURATIONS===
       $baud = 9600
       $crystal = 16000000
       $regfile = "m16def.dat"
    
       Config Pinc.6 = Output                                   '595 Load-Leitung
       Config Pinc.7 = Output                                   '595 Takt
       Config Pina.1 = Output                                   '595 Daten
    
       Config Pina.0 = Input                                    '165 Daten
       Config Pinb.1 = Output                                   '165 Takt
       Config Pinb.0 = Output                                   '165 Load
    
       Config Scl = Portc.0                                     'I²C SDA
       Config Sda = Portc.1                                     'I²C SCL
    
    
    '===ALIASE
       Beep Alias Portd.2
    
    '===VARIABLEN===
    
       Dim A As Byte
       Dim B As Byte
       Dim D As Byte
       Dim E As Byte
    
       Dim F As Byte
       Dim S As Byte
    
    '===PROGRAMMBEGINN===
    
    Begin:
    
    I2cinit
    
    Sound Beep , 250 , 1000                                     'Ein bisschen gepiepse zum Anfang...
    Sound Beep , 250 , 900
    Sound Beep , 250 , 800
    Sound Beep , 500 , 500
    
    
    Starting:
    
    Waitms 500                                                  'Watren
    
    
    '====Eigentlicher PROGRAMMSTART====
    
    
    Source:                                                     'TESTPROGRAMM
    
    B = &B01110001                                              'Addresse des PCF8574 mit DB0-DB7 am Ausgang...
    D = &B01110011                                              'Addresse des PCF8574 mit RS, E und R/W am Ausgang...
    
    I2cstart
       I2cwbyte D
       I2cwbyte &B00000000
    I2cstop
    
    Waitms 25
    
    I2cstart
       I2cwbyte B
       I2cwbyte &B00001100
    I2cstop
    
    Waitms 25
    
    I2cstart
       I2cwbyte D
       I2cwbyte &B10000000
    I2cstop
    
    Waitms 25
    
    I2cstart
       I2cwbyte D
       I2cwbyte &B00000000
    I2cstop
    
    Waitms 25
    
    I2cstart
       I2cwbyte B
       I2cwbyte 97
    I2cstop
    
    Waitms 25
    
    I2cstart
       I2cwbyte D
       I2cwbyte &B10000000
    I2cstop
    
    Waitms 25
    
    I2cstart
       I2cwbyte D
       I2cwbyte &B00000000
    I2cstop
    
    
    End
    (Ich habe ihn der Übersicht wegen etwas gekürzt... Funktionen weggelassen usw...)

    Das Tolle: Laut meinem Scope kommt nix aus den Ausgängen raus.

    Meine Bascom-Version: 1.11.7.4

    Achso und das Display ist wie auf:
    http://www.destroy-yourself.de/julia...amr/i2clcd.htm
    nur mit 2x20 Zeichen.
    Es wird mit 2 PCF8574P angesteuert.

    Nicht das ihr mich jetzt falsch versteht; aus dem I²C kommt nix raus,
    und deshalb funzt das LCD nicht. Das LCD ist im Moment nur Nebensache.

    Auf der I²C Verteilerplatine gehen 2 PullUps von je 5,6kOhm von SCL und SDA nach VCC.

    Was ist hier falsch? Ehrlich gesagt weis ich nicht, wo ich suchen soll...

    Vielen Dank schon jetzt mal...

    Liebe Grüße, Tobi
    http://www.tobias-schlegel.de
    "An AVR can solve (almost) every problem" - ts

  2. #2
    Administrator Robotik Einstein Avatar von Frank
    Registriert seit
    30.10.2003
    Beiträge
    4.943
    Blog-Einträge
    1
    Was mir auf den ersten Blick falsch erscheint ist die I2C-Adresse deiner PCF Bausteine. Wenn du ein Byte schreiben willst, dann muß Bit 0 der Slave Adresse immer Low sein. Bei dir ist das Hex 71, das kann also nicht hinkommen. Hex 71 ist nur zum lesen von Werten geeignet. Vermutlich ist daher die Hex Adresse für Schreiboperationen bei Dir Hex 70.
    Also probier damit mal dein Glück.

    Gruß Frank

  3. #3
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.06.2004
    Ort
    Bad Schussenried in Oberschwaben
    Alter
    26
    Beiträge
    1.461
    Hi Frank!

    Kann gut sein, dass die Addressen falsch sind . Aber es kommt ja zu
    den Pins nix raus...

    Aber ich werde jetz mal kurz die Addressen ändern.
    Du meinst die Addressen müssen so aussehen:

    B = &B01110000 'Addresse des PCF8574 mit DB0-DB7 am Ausgang...
    D = &B01110010 'Addresse des PCF8574 mit RS, E und R/W am Ausgang...

    Also das R/W-Bit auf 0. OK.
    Ich test's mal.

    Ich werde berichten...

    Liebe Grüße, und Danke!
    Tobi
    http://www.tobias-schlegel.de
    "An AVR can solve (almost) every problem" - ts

  4. #4
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    01.11.2003
    Ort
    Freiburg im Breisgau
    Alter
    28
    Beiträge
    2.624

    Re: I²C Problem mit Mega16 und BASCOM...

    Zitat Zitat von tobimc
    Das Tolle: Laut meinem Scope kommt nix aus den Ausgängen raus.
    Hi Tobi!
    Ich beneide Dich um das Oszi! *auch haben will*
    Wo hast Du Dir das gekauft?
    Wie teuer war das?
    Wie heißt es?

  5. #5
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.06.2004
    Ort
    Bad Schussenried in Oberschwaben
    Alter
    26
    Beiträge
    1.461
    HI!

    Also, an SCL und SDA liegt der normale 5V-Pegel an (PullUp). Der Atmel zieht das nicht runter. Keine Startbedingung, kein garnix.
    Selbst mit Trigger und einer Auflösung von 1µS kann ich nicht das geringste Signal erkennen.

    @Florian:
    Seid ihr nicht auf Klassenfahrt? *verwirrt*
    Das Speischeroszi ist schon etwas älter, hat mein Vater schon vor 1-3 Jahren be Big-C bestellt. Man schliesst es an einen PC an.
    Wie es heißt... muss ich mal nachgucken.
    Inzwischen gibt's neuere und bessere aber die sind nicht ganz billig.
    Zu Weihnachten und Ostern lohnt sich das aber auf jeden Fall!

    Viele liebe Grüße, Tobi
    http://www.tobias-schlegel.de
    "An AVR can solve (almost) every problem" - ts

  6. #6
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    01.11.2003
    Ort
    Freiburg im Breisgau
    Alter
    28
    Beiträge
    2.624
    Hi Tobi!
    Ich bin erst ab Montag (Morgen) auf Klassenfahrt!
    Ich habe auch schon drüber nachgedacht, ob ich mir eins kaufe, angestoßen von der aktuellen Ausgabe der Elektor.
    Naja, mal sehn, derzeit passen sie leider nicht in meinen Ethar! :o(

  7. #7
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.06.2004
    Ort
    Bad Schussenried in Oberschwaben
    Alter
    26
    Beiträge
    1.461
    HI!

    Wes denn niemand, was falsch läuft? Das ist echt komisch!

    @Florian:
    das ist halt der ENORME Nachteil von den Dingern...
    Sie sind schweineteuer.

    Liebe Grüße an alle,
    Tobi
    http://www.tobias-schlegel.de
    "An AVR can solve (almost) every problem" - ts

  8. #8
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    01.11.2003
    Ort
    Freiburg im Breisgau
    Alter
    28
    Beiträge
    2.624
    Jup, leider! :o(

  9. #9
    Administrator Robotik Einstein Avatar von Frank
    Registriert seit
    30.10.2003
    Beiträge
    4.943
    Blog-Einträge
    1
    Ist mir unverständlich tobimc,
    normalerweise muss da was raus kommen. Wenn kein Messfehler vorliegt kann ich mir nur vorstellen das Port im Eimer ist, mehr fällt mir dazu auch nicht ein.
    Zumindest beim Mega8 hab ich schon oft andere Pin´s als I2C benutzt, das sollte auch beim Mega16 unproblematisch sein. Allerdings hatte ich beim Mega16 gerne die Hardware I2C-Pins genommen, auch wenn ich die Bascom Befehle (Software Ansteuerung) nutze. Man kann dann später einfach auf Hardware-TWI Ansteuerung wechseln ohne die Schaltung zu ändern.

  10. #10
    Benutzer Stammmitglied
    Registriert seit
    19.09.2004
    Beiträge
    31
    Hallo tobimc,
    Kannst du mir den vollständigen Quelltext Senden.
    Gruß, Steinmader

+ Antworten
Seite 1 von 2 12 LetzteLetzte

Berechtigungen

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