- Akku Tests und Balkonkraftwerk Speicher         
Ergebnis 1 bis 10 von 39

Thema: I2C Einstieg

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    21.05.2012
    Beiträge
    511
    Hast du eine LED dran, mit der du die verschiedenen Programmphasen sichtbar machen kannst? Die LED sukkzessive immer später im Programmablauf einschalten.Vielleicht bleibt der Controller in einer der Funktionen stecken.

    Wie ist der Reset realisiert? Über den Programmer, oder über das Spannung einschalten? Gibt es da unterschiedliches Verhalten? Die Initialisierung nach dem Reset kann (zumindest bei PICs) je nach Resetursache (PowerUp, BrownOut, WatchDog, Sleep) durchaus unterschiedlich sein.
    Für die Led habe ich ja den Summer ...

    Vielleicht bleibt der Controller in einer der Funktionen stecken.
    Das sage ich ja: und zar nach dem zweiten mal anschalten direkt am Anfang. Oder ??

    Wie ist der Reset realisiert?
    Beim Proggen macht das der Progger selbst. Wenn ich es im Verlauf ändern möchte, habe ich dafür einen Taster.

    Nur mal zur Info : Ich verwende RN-Control, also müsste Hardwaremäßig alles passen. Ich habe auch ein anders Board mit Mega 32 probiert, doch es hat sich genau so verhalten. Das würde dann ja auch für ein anders Problem sprechen. Es liegt bestimmt an der Software, nur was ist die Frage ???

    um den Pullup einzuschalten, muss das Portregister gesetzt werden.
    Wie ??

    Ich hoffe einer von euch findet die Lösung ...

  2. #2
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    21.05.2012
    Beiträge
    511
    Also, ich konnte mir nun ein wenig selbst weiterhelfen (nach längerem testen...)

    Zur Info noch mal ich verwende RN-Control, USB-AVR-Progger von Robotikhardware und ftdi Board für seriell 5V-Pegel

    Das ist der Code:
    Code:
    $regfile = "m32def.dat"
    $crystal = 16000000
    $baud = 9600
    $hwstack = 200
    $swstack = 200
    $framesize = 400
    
    Config Portd.7 = Output
    
    
    Config Adc = Single , Prescaler = Auto , Reference = Avcc
    Start Adc
    Waitms 10
    
    'TWI konfigurieren
    Config Sda = Portc.1
    Config Scl = Portc.0
    Config Twi = 100000
    
    Dim X As Byte
    Dim A As Byte
    Dim B As Byte
    Dim Lesen As Byte
    
    Dim W As Word
    
    Dim Inpu As Byte
    
    
    Sound Portd.7 , 400 , 450
    Sound Portd.7 , 400 , 250
    Sound Portd.7 , 400 , 450
    Wait 2
    
    I2cinit
    Waitms 10
    
    
    
    Input "1 = schreiben und 0 = lesen" , Inpu
    
    Select Case Inpu
    
    Case 1
    '---- schreibe in EEprom ----
      For A = 1 To 10
    
        W = Getadc(6)                                           'Messwert
        Print W
        X = W / 4                                               'damit der Speicher reicht
        Print "Durch 4 geteilt: " ; X
        Waitms 200
    
        I2cstart                                                'Start I2C
        I2cwbyte &HA0                                           'Sende Slave Adresse
        I2cwbyte A                                              'Sende Speicheradresse
        I2cwbyte X                                              'Sende Wert
        I2cstop                                                 'Stop I2C
        Waitms 10                                               'warte 10ms
    
        Print "ins EEprom = " ; X ; "  "                        ' Ausgabe der geschriebenen Werte
        Print
        Print
    
        Waitms 500
      Next A
    
      Sound Portd.7 , 400 , 450                                 'damit ich weiß, wann er fertig ist
      Waitms 40
      Sound Portd.7 , 400 , 450
    
    
    
    Case 0
    
    '--- lesen vom EEprom ----
      For B = 1 To 10
    
        I2cstart                                                'Start I2C
        I2cwbyte &HA0                                           'sende Slave Adresse
        I2cwbyte B                                              'sende Speicheradresse
    
        I2cstart                                                'Start I2C
        I2cwbyte &HA1                                           'sende Slave Adresse +1 für Lesen
        I2crbyte Lesen , Nack                                   'lese Adresse vom EEprom
        I2cstop                                                 'Stop I2C
    
        Print "Lese  EEprom= " ; Lesen ; "  "                   'Ausgabe der EEprom Werte
        Waitms 500
        Sound Portd.7 , 400 , 450                               'damit ich weiß, wann er fertig ist
        Waitms 40
        Sound Portd.7 , 400 , 450
    
      Next B
    
    
    End Select
    
    
    End
    Und jetzt haltet euch gut fest ! Der Code (leicht verändert) funktioniert auch, aber was anderes ist ganz komisch:

    Als ich es jetzt getestet hatte habe ich erst das Programm geproggt, seriell angesteckt, lesen oder schreiben gedrückt, den M32 machen lassen, dann ausgeschaltet, seriell abgesteckt, wieder angesteckt, wieder angeschaltet, und wieder einen Taster gedrückt.............

    So hat der Code funktioniert. Wenn ich aber den seriellen Anschluss dran lasse und dann direkt wieder anschaltet funktioniert gar nichts mehr. ????

    Meine Vermutung (die hört sich ein wenig blöde an): Es muss irgendwie die Leitung beim seriellen Kram "verstopft" sein oder irgend sowas ?????

Ä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
  •  

Solar Speicher und Akkus Tests