Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum

Re: AVR32 Kategorie: I²C-Bus (von Daneie - 1.05.2015 18:55)
Als Antwort auf Re: AVR32 von Bob - 29.04.2015 13:14
Ich nutze:
C-Control Pro AVR32
> > > > > > > Hallo,
> > > > > > >
> > > > > > > Ich arbeite jetzt seid einigen Wochen mit meinem AVR32 App. board und komme eigentlich super zurecht.
> > > > > > >
> > > > > > > Jetzt wollte ich nur gerne über I2C mehrere LCD Displays ansteuern. Das bekomme ich das einfach nicht hin.
> > > > > > >
> > > > > > > Ich nutze:
> > > > > > >
> > > > > > > C-Control AVR32 Application Board
> > > > > > >
> > > > > > > LCD Display
> > > > > > >
> > > > > > > I²C Verteiler Modul
> > > > > > > ------------------
> > > > > > > Das ganze schlieÃ?e ich an den Unit Bus des Boards an. Sobald ich das tue zeigt das Display auf dem Board
> > > > > > > nichts mehr an und es gelingt mir nicht, die Angeschlossenen Displays anzusprechen.
> > > > > > >
> > > > > > > Bitte um schnelle Hilfe
> > > > > > > Vielen Dank
> > > > > >
> > > > > > Hallo
> > > > > > das Application Board hat keinen LCD-Port.
> > > > > > Du brauchst zB 3,3V, die hat der Unit-Bus nicht.
> > > > > > Nimm am besten deinen Lötkolben und löte die einen LCD-Bus
> > > > > > auf das Application Board.
> > > > > > Im Schaltplan vom Mainboard siehst du wie du die Anschlüsse verdrahten musst.
> > > > > > Die Schaltpläne hast du im Online-Manual links oben.
> > > > > >
> > > > > > Viel SpaÃ?
> > > > > > Max
> > > > >
> > > > >
> > > > >
> > > > > Das habe ich jetzt gemacht. Leider läuft das ganze immer noch nicht. Sobald ich etwas in den LCD Port stecke,
> > > > > zeigt das display auf dem Board nichts mehr an, trotz selber Adresse des Displays. Das angeschlossene Display
> > > > > zeigt natürlich auch nichts an.
> > > >
> > > > Hallo Jonas,
> > > > zwei Mal die gleiche Adresse geht nicht, du musst
> > > > deinem ext Display ein andere Adresse zuweisen.
> > > > Wennâ??s dann nicht geht, überprüfe die IIC-Leitungen
> > > > direkt vom Prozessor (P34 und P35) zum Display mit dem Ohmmeter,
> > > > ob 3,3V und 5V am Display ankommen und P46 fürs Licht.
> > > > Vergiss nicht auf Kurzschlüsse mit benachbarten Pins zu
> > > > prüfen.
> > > > GruÃ? Max
> > > >
> > > >
> > > Hi ich nutze ebenfalls das AVR32 Appl. Board und komme mit dem neuen I²C_Write Befehl nicht
> > > zurecht. möchte einen Sensor ansprechen und wei� jetzt nicht so richtig ob ich den header brauche.
> > > bei der Mega128 hat es gereicht Byte für Byte mit je einem Mega128-I2C_Write-Befehl an den Sensor
> > > zu schicken
> >
> > Hallo,
> > was hast du für einen Sensor?
> > Max
>
> Hallo,
> danke für das lebenszeichen hier im forum. freue mich über jede hilfe
> also es ist kein Sensor, sondern ein Digital-Analogwandler und zwar der MCP4726.
> Es kann auch sein, dass ich ihn falsch verwende. mit dem mega128 hab ich den DA-Wandler mit 5V an
> allen Pins betrieben und jetzt bis auf Vref (weiterhin 5V) alles andere auf 3,3V. kann es sein dass das
> gegen die zulässigen Spannungsdifferenzen verstö�t? [Vref muss unbedingt bei 5V sein, wie ich die
> anderen Pins wieder auf 5V "levelshifte" wü�te ich notfalls]
> !!! -> jedenfalls verstehe ich den neuen IIC-Befehl der AVR32 trotzdem nicht so richtig. Wie übertrage ich
> mit dem Befehlt im Falle des DA-Wandlers Daten?? im header oder im daten-array? und wenn in diesem
> datenarray - dann alles auf einmal so wie im I2C beispiel oder mit einzelnen Writebefehlen wie im RelBus
> Beispiel?? oder getrennt?? das Konfig.-Byte im Header und den Rest im Datenarray? habe schon hin
> und herprobiert und es hat nicht so richtig funktioniert. Habe eine Probe gemacht--positiv und der
> rückgabewert des I2C_Write befehls ist 0001.
> wiegesagt mit dem Mega128 hat alles super funktioniert mit:
> I2C_init()
> I2C_Start()
> I2C_Write(0xC0)          'Adresse
> I2C_Write(Conf)           'Konfiguration
> I2C_Write(Teilwert1)     'Vout
> I2C_Write(Teilwert2)
> I2C_Stop()

Probierâ??s mal so

Dim vIICData(2) As Byte

vIICData(0)=Teilwert1
vIICData(1)=Teilwert2


If I2C_Probe(0xC0) = 1 Then                      'Komunikationstest

   'aus 0xC0 wird 0x60 weil Bit 0 nicht gebraucht wird das übernimmt I2C_Write bzw I2C_Read

   IICOK = I2C_Write(0x60,Conf,1,vIICData,2)           'das entspricht deinen 7 Zeilen  

   If IICOK = 1 Then : Goto Fehler : End If            'Sprung zur Fehlerbehandlung
End If


GruÃ? Daneie


    Antwort schreiben


Antworten:

Re: AVR32 (von Bob - 4.05.2015 8:19)
    Re: AVR32 (von Bob - 5.05.2015 13:04)