-         

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 13

Thema: PLL-VCO über I²C vom PC aus steuern,Kommunikations-Problem

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    27.03.2009
    Beiträge
    17

    PLL-VCO über I²C vom PC aus steuern,Kommunikations-Problem

    Anzeige

    Hallo RN Gemeinde,

    ich habe aus einem alten Auto-Radio die Empfängerbaugruppe ausgebaut.
    Darauf befinden sich zwei IC`s der TEA6810V (Front-end and PLL synthesizers) und der TEA6825T (PLL VCO).Der TEA6825T verfügt über eine I²C Schnittstelle um den TEA6810V mit der Referenz- Frequenz zu versorgen.Ich wollte nun den TEA6825T via I²C ansteuern um damit über den PC die Feinabstimmung der Radiofrequenz bzw. die Empfangsfrequenz zu wählen.Ich habe mir die Datenblätter beider Ic`s angeschaut,und versucth mit einem einfachen VB6 Programm die Slave ID (1100001) vom PC über RS232-I²C Koppler (http://www.horter.de/i2c/i2c-pc-seri...seriell_1.html) zu senden.Leider gelingt mir das nicht,entweder ist die Slave Id falsch oder ich habe einen Fehler in der Ansteueung bzw. im Programmcode.Vieleicht liest ja der eine oder andere von euch mehr aus dem Datenblatt heraus als ich,und kann mir helfen.

    Datenblatt TEA6810V http://pdf1.alldatasheet.com/datashe.../TEA6810V.html
    Datenblatt TEA6825T http://pdf1.alldatasheet.com/datashe.../TEA6825T.html

    Das sind die beiden Datenblätter, und hier nochmal der VB6 Quellcode.

    Code:
    Dim istda As Boolean
    
    Private Sub AdresseTxt_Change()
    
    End Sub
    
    Private Sub meinCom_onChangeE1()
    
    End Sub
    
    Private Sub SendenBtn_Click()
        meinCom.initI2C
        meinCom.startI2C
            istda = meinCom.ausgebenI2C(AdresseTxt.Text)
            If Not istda Then
                MsgBox ("I²C-Sklave antwortet nicht auf Anfrage vom Meister-I²C!")
            Else
                meinCom.ausgebenI2C (WertTxt.Text)
            End If
                meinCom.stopI2C
    End Sub
    
    Private Sub Form_Load()
        meinCom.open (1)
    End Sub
    
    Private Sub Form_Unload(Cancel As Integer)
        meinCom.Close
    End Sub
    
    Private Sub WertTxt_Change()
    
    End Sub
    Ich hoffe der eine oder andere kann mir weiter helfen.

    MfG Brotspinne

  2. #2
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    08.12.2005
    Beiträge
    535
    Brotspinne,

    dem Datenblatt nach ist die I2C-Adresse 1100 0010, also 0xC2. Das LSB ist im Datenblatt mit X markiert, weil es sich je nach Read- oder Write-Betrieb ändert.

    mare_crisium

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    27.03.2009
    Beiträge
    17
    Hallo mare_crisium,
    Diese Slave ID habe ich auch schon probiert,ohne Erfolg.Also entweder ist die Software falsch oder ich mache einen Fehler.Ich lese und lese die Datenblätter und I²C Spezifikation aber komm nicht weiter.Ich werde mal suchen ob es ein Diagnoseprogramm gibt...!

  4. #4
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    08.12.2005
    Beiträge
    535
    Brotspinne,

    schade, ich dachte schon das wär's . Nächster Tip: Die Pull-up Widerstände an SCL und SDA (10k an +5V) hast Du eingebaut?

    mare_crisium

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    27.03.2009
    Beiträge
    17
    Morgen mare_crisium,

    ich habe den I²C-RS232 Konverter so aufgebaut wie oben im Schaltbild auf der Webseite zu sehen.Einzigste Änderung ich habe anstatt 270 Ohm Vorwiderstänbden für die LED`s 330 Ohm genommen.Aber das hat ja nichts mit den Signalen zu tun.Der Konverter macht ja nichts anderes als die RS232 Signalpegel von -3 bis -12 und 3 und 12 Volt in I²C Pegel umzuwandeln also 0V oder 5V (Low or High).Auf dem Konverter sind jumper womit man die Signale terminieren kann,indem man sie mit 4,7K gegen Masse zieht.Extra Pull-ups habe ich nicht, 10K habe ich auch schon oft gelesen aber ich geh davon aus das der Konverter ausreicht.Aber ich lass mich gern eines besseren belehren,Nur raus mit den Vorschlägen...!

    MfG Brotspinne

  6. #6
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    08.12.2005
    Beiträge
    535
    Nee, Brotspinne,

    belehren will ich sicher niemanden ! Die angesprochenen Pull-up-Widerstände sind im Schaltplan als R4 und R5 (jeder 4,7kOhm) eingezeichnet. Jeder für sich kann mit einer Brücke aktiviert werden (JP1-1 und JP1-2). Diese Brücken müssen gesteckt sein. Die LEDs tragen zum Pull-up nichts bei; sie sind über die 7405 vom Bus entkoppelt. Die Pull-ups aber sind zwingend erforderlich (siehe z.B. dieses sehr informative Handbuch von NXP - früher Philips Semiconductors -

    http://www.nxp.com/acrobat_download/.../AN10216_1.pdf

    (Seite 13, Slide 31).

    Also, wenn die Brücken gesteckt sind, dann haben wir's höchstwahrscheinlich doch mit einem Softwareproblem zu tun.

    Ciao,

    mare_crisium

  7. #7
    Neuer Benutzer Öfters hier
    Registriert seit
    27.03.2009
    Beiträge
    17
    Hallo mare_crisium, also das mit dem belehren habe ich eigentlich nicht böse gemeint.Ist nur ne Redewendung hier im üblichen Sprachgebrauch.

    Also ich habe jetzt die Jumper für SDA und SCL gesetzt also werden über 4,7K gegen GND gezogen.Leider klappt das ansprechen des Bausteins mit dem Codesnipsel von oben nicht.Ich habs mit 11000010 probiert mit 11000011 ohne Erfolg.Wäre schön wenn man ein anderes Programm hätte um das nochmal zu Testen.
    Ach ja mal ein paar Infos: Kabellänge vom RS232 zum I²C Koppler ca:20cm,Kabel vom Koppler zum Empfänger ca. 35-45cm,RTS von RS232 wird zu SCL für den I²C Bus,DTR u. DSR wird zu SDA für den I²C.Ja ich überprüfe die Verkabelung nun zum 4. mal kann aber keineen fehl Anschluss feststellen.Entweder ist der Schaltktreis kaputt oder die Software nicht kompatible.

    MfG Broti

  8. #8
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    08.12.2005
    Beiträge
    535
    Brotspinne,

    is' schon gut ! Die Kabellängen, die Du erwähnst, sind in Ordnung; über diese Längen darf die Kommunikation kein Problem machen. Die MAX232s sind so robust wie Küchenschaben. Da musst Du Dich schon anstrengen, um so einen kaputt zu kriegen. Die Belegung ist auch so richtig; allerdings ist es mir schon oft vorgekommen, dass ich am Sklaven-Chip SDA und SCL vertauscht habe.

    Ein anderes Programm kann ich Dir nicht bieten; ich habe mir meinen Umsetzer selbst ausgedacht und gebaut (mit einem ATmega und spreche ihn vom PC her über die RS232-Schnittstelle mit einem in Object-Pascal (Delphi 5) geschriebenen Programm an.

    Vielleicht ist es am Besten, Du probierst's mit dem "I2Ps-Funktionstest.xls und port.dll als ZIP-Datei (57 kB)" aus, das unten auf der Seite zum download bereitsteht? Falls Du kein Excel hast, kannst Du "Openoffice" herunterladen; das liefert ein Tabellenkalkulationsprogramm mit, unter dem sollte das Makro auch läuft.

    Ciao,

    mare_crisium

  9. #9
    Neuer Benutzer Öfters hier
    Registriert seit
    27.03.2009
    Beiträge
    17
    Morgen mare_crisium,

    Also ich habe jetzt mal den funktiontest gemacht und bei mir wird SDA nicht wieder zu Null.Die Pull-ups auf dem Koppler sind gesetzt,wie meinen die das mit am Slave auf Masse ziehn?Überbrücken zur not?Keine Ahnung woran das liegt das SDA nicht wieder Null wird.Vieleicht hast du ja eine Vermutung!Exel habe ich das ist nicht das Problem .

    Edit:Ich habe jetzt nochmal den Test gemacht und SDA auf Masse gebrückt, dann funktionierts im Exelprogramm und SDA wird dann Null!/Edit

  10. #10
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    08.12.2005
    Beiträge
    535
    Huch, Brotspinne,

    dass der Test funktioniert, freut mich. Das ist schonmal ein deutlicher Fortschirtt .

    Aber: SDA auf Masse gebrückt??? Wenn Du einen Ausgang des 7405 gegen Masse kurzschliesst, dann glüht der Chip normalerweise einmal kurz auf und dann hat er abgenippelt... Zwischen welchen Leitungen und wo sitzt denn die Brücke? Kommt mit der Brücke der SDA überhaupt noch auf >4,0V? Erklär' mal genauer!

    Ciao,

    mare_crisium

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

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