-         

Ergebnis 1 bis 2 von 2

Thema: I2C Problem auf PIC Entwicklerboard

  1. #1

    Frage I2C Problem auf PIC Entwicklerboard

    Anzeige

    Moin Leute...

    hier meine Hardware:
    PIC: 16F877 oder 16F877A oder 16F887(diesen würde ich bevorzugen)

    Entwicklerboard:http://www.digitale-elektronik.de/sh...roducts_id=128
    (dort unten auf der Seite gibt es auch die beispielprogramme und die ganzen downloads)

    Umgebung:arbeite im Moment mit Mplab(ist das ok? oder gibt es da andere gute umgebungen)

    programmiere im moment in Assembler

    Programmer: PickKit 2 (habe mir dann eine adapter Platine gebaut für den http://www.digitale-elektronik.de/sh...e3300000dff4c6)

    (hoffe habe nichts vergessen )


    habe folgendes Problem:
    versuche seit ein paar tagen mit einem PIC-Entwicklerboard mich in die PIC-programmierung reinzuarbeiten... auf dem Board gibt es alle möglichen Komponenten und auch Beispielprogramme unter anderem auch eins welches die aktuelle Raumtemperatur über einen LED-Treiber-Baustein(SAA1064) auf vier 7-Segmentanzeigen darstellen soll. Aber dieses Beispielprogramm funktioniert nicht bzw. der I2C-Bus. Habe am Temperaturfühler gemessen der gibt eine analoge Spannung an den AN0 Pin des PIC habe auch die Adresse am Treiberbaustein eingestellt laut Datenblatt. Auf den beiden I2C-Leitungen liegt dauerhaft ein High-Signal. Wie kann ich eigentlich die I2C Frequenz einstellen? Muss ich sonst noch was beim PIC beachten bzgl. I2C? Habe zuvor noch nie was mit I2C gemacht und finde auch das Beispielprogramm sehr unübersichtlich und habe alles mögliche nachgemessen so dass ich der Meinung bin, dass das Problem nur Softwaretechnisch sein könnte oder nicht? wäre cool wenn mir da jemand weiterhelfen könnte oder evtl ein Programmvorschlag machen könnte um ein eigenes programm zu schreiben welches mit diesem Baustein(SAA1064) arbeitet.
    (reiche auch gern auf wunsch noch meinen Programmcode nach)


    Danke schonmal im Voraus
    LG icebobb

  2. #2
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    03.09.2009
    Ort
    Berlin (Mariendorf)
    Beiträge
    938
    Hallo icebobo.

    Zitat Zitat von icebobo Beitrag anzeigen
    Wie kann ich eigentlich die I2C Frequenz einstellen?
    Das sagt mir, dass du anscheinend noch keinen Blick in die I2C-Dokumentation des Controllers getan hast .

    Zitat aus dem Datasheet:
    "SSPADD register holds the slave device address
    when the SSP is configured in I2C Slave mode. When
    the SSP is configured in Master mode, the lower
    seven bits of SSPADD act as the baud rate generator
    reload value."

    Siehe auch Table 9-3, I2C Clock Rate w/ BRG
    Meine relevante Zeile dort für den nachfolgenden Codeausschnitt wäre: F_CY = 1MHz, f_SCL = 100kHz, Reloadwert = 0x0A, ich weiche davon mit d'9' um zehn Prozent nach oben ab, weiss aber nicht mehr, warum; es funktioniert aber gut und ist ohnehin ziemlich unkriitisch.

    Bei mir sieht die Initialisierung mit 4MHz-Resonator für 100kHz I2C-Takt so aus:
    Code:
    I2C_INIT100
             bsf     STATUS, RP0      ; Bank 1
             movlw   d'9'             ;
             movwf   SSPADD           ; Reload-Wert für Clock-Takt
             bcf     STATUS, RP0      ; Bank 0
             ;
             movlw   b'00001000'      ; I2C Master Mode mit SSPADD
             movwf   SSPCON           ;
             bsf     SSPCON,SSPEN     ; und aktivieren
             ;
             return                   ;
    Gruß
    RoboHolIC

Ähnliche Themen

  1. Verkaufe Entwicklerboard „EasyPic v7 Connectivity inkl. Programmer/In-Circuit Debugger
    Von Andre_S im Forum Kaufen, Verkaufen, Tauschen, Suchen
    Antworten: 0
    Letzter Beitrag: 27.05.2013, 11:05
  2. Problem mit Entwicklerboard
    Von cesupa im Forum Elektronik
    Antworten: 19
    Letzter Beitrag: 28.10.2006, 11:58
  3. Controller/Entwicklerboard für ATtiny's?
    Von Ricolein im Forum Schaltungen und Boards der Projektseite Mikrocontroller-Elektronik.de
    Antworten: 3
    Letzter Beitrag: 30.03.2006, 19:25
  4. 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, 16:25
  5. *I2C* maximale eingänge per i2c auf 8 digitale Pins
    Von Christian Sturm im Forum Elektronik
    Antworten: 9
    Letzter Beitrag: 22.06.2004, 20:44

Stichworte

Berechtigungen

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