- LiFePO4 Speicher Test         
Ergebnis 1 bis 10 von 11

Thema: I2C macht PIC Anfänger Problem

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Roboter Genie Avatar von oderlachs
    Registriert seit
    17.05.2010
    Ort
    Oderberg
    Alter
    74
    Beiträge
    1.175
    Blog-Einträge
    1

    I2C macht PIC Anfänger Problem

    Hallo Freunde !

    Bestimmt hänge ich wieder in den Fussangeln für Anfänger fest, aber ich komme nicht weiter. Nachdem ich mich schon mal mit I2C so recht und schlecht abgequält habe, dachte ich nun übernimm mal ein Tutorial aus dem Internet.

    Ich habe zwei PIC Entwicklerboards(MCU:PIC16F877A) per I2C verdrahtet nach folgendem Beispiel / Anleitung: https://electrosome.com/i2c-pic-micr...tart_Condition

    Nun habe ich zwar keine 8er Dipschalter verwendet, sondern stecke das mit Drahtbrücken.

    Auf beiden Boards bleiben alle 8 LEds auf ON , auch wenn ich die PortB Eingänge auf GND also Low lege. Die Stromversorgung erfolgt vom grösseren Bord, so das es dabei auch zu keinen Störungen(2.Netzteil) kommen kann.

    Vielleicht kann kann ja mal ein Profi sich den Code ansehen und darüber urteilen.

    Mit besten Dank im Voraus

    Gerhard
    Arduinos, STK-500(AVR), EasyPIC-40, PICKIT 3 & MPLABX-IDE , Linux Mint

  2. #2
    Erfahrener Benutzer Roboter-Spezialist Avatar von witkatz
    Registriert seit
    24.05.2006
    Ort
    NRW
    Alter
    54
    Beiträge
    542
    Blog-Einträge
    17
    Zitat Zitat von oderlachs Beitrag anzeigen
    Vielleicht kann kann ja mal ein Profi sich den Code ansehen und darüber urteilen.
    Hallo Gerhard,
    während du auf den Profi wartest, kann ich als Laie einen Hinweis los werden.
    In den Kommentaren auf der zitierten Seite lese ich, dass der Master einfrieren kann, wenn er zu früh startet und der Slave noch nicht bereit ist. Deine PICs bekommen gleichzeitig Spannung, laufen gleichzeitig hoch und evtl. ist ein Timingproblem die Ursache. Versuche vielleicht, den Start des Masters mit einem delay vor der Endlosschleife zu verzögern.

    Gruß
    witkatz

  3. #3
    Erfahrener Benutzer Roboter Genie Avatar von oderlachs
    Registriert seit
    17.05.2010
    Ort
    Oderberg
    Alter
    74
    Beiträge
    1.175
    Blog-Einträge
    1
    Hallo Witkatz !

    Na Du bist ja in meinen Augen schon ein Profi !! Ich habe mal ein "__delay_ms(100....1000)" eingefügt...kein Erfolg.

    Ich habe ja zu meinem EasyPIC-40 Board ja Beispiele, aber die sind alle nicht XC-8 Compiler kompatibel, so das ich alles umschreiben muss. Darum versuche ich ja manches aus dem Web um mich einfach mal ein zu lernen.
    Durch Zufall bin ich im Web auf ein Beispiel gestossen , wo ich sah wie ich einzelne Bits eines Registers ansprechen kann. Habe so etwas nirgends gefunden in den MPLABX /Compiler Beschreibungen auch im Datenblatt nicht.
    Ich hatte immer das ganze Register zum Vergleich rangezogen, das war immer umständlich.

    Es ist eben grosser Mist, wenn man in English ne Null ist und solch ein Hobby hat.

    Da mir gerade ein paar Amazon-Gutscheine ins Haus geflattert sind, möchte ich mal da schauen, ob nicht ein gutes Buch, auch für C/C++ Programmierer, für PIC's dort zu finden ist.

    Auf meine alten Hobbyistentage möchte ich nicht noch wieder anfangen mich wie zu Zeiten von C-64, 8080 und 8085 mit Assembler rumzuschlagen.

    Gruss und Dank

    Gerhard
    Arduinos, STK-500(AVR), EasyPIC-40, PICKIT 3 & MPLABX-IDE , Linux Mint

  4. #4
    Benutzer Stammmitglied
    Registriert seit
    21.03.2013
    Beiträge
    87
    Versuch es mal mit einem CCS Compiler.
    Da gibt es einfache und funktionierende Befehle für solche und andere Probleme.
    Eine kostenlose Demo gibt es auch.

  5. #5
    Erfahrener Benutzer Roboter Genie Avatar von oderlachs
    Registriert seit
    17.05.2010
    Ort
    Oderberg
    Alter
    74
    Beiträge
    1.175
    Blog-Einträge
    1
    Hallo Indeas, vielen Dank für den Hinweis.
    Ich bekomme das unter Linux nicht gebacken mit dem CCS, schon versucht. Ich müsste doch bestimmt auch wieder umdenken/umlernen, wie ich dann den Code schreibe.

    Ich denke ich bleibe da beim XC-8 Compiler "free" von Microchip, bevor ich mir noch selbst mehr Fussangeln auslege

    Gruss und Dank

    Gerhard
    Arduinos, STK-500(AVR), EasyPIC-40, PICKIT 3 & MPLABX-IDE , Linux Mint

  6. #6
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    03.09.2009
    Ort
    Berlin (Mariendorf)
    Beiträge
    1.023
    Gretchenfrage @ Gerhard:
    Wie hältst du's mit den PullUp-Widerständen an den I2C-Leitungen? Sind die vielleicht doppelt (also auf beiden Boards je einmal) und recht niederohmig?

    Gruß
    Christian
    Geändert von RoboHolIC (11.07.2017 um 23:58 Uhr) Grund: Visier-hochschieb-und-lächel

Ähnliche Themen

  1. Problem mit mySmartUSB light, µC macht nix...
    Von Kunkel im Forum C - Programmierung (GCC u.a.)
    Antworten: 4
    Letzter Beitrag: 31.03.2010, 01:54
  2. Ein Anfänger macht Neuanfang
    Von moiko im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 13
    Letzter Beitrag: 09.03.2009, 22:31
  3. Eagle - Problem, er macht automatisch Verbindungen
    Von Elektronik303 im Forum Konstruktion/CAD/3D-Druck/Sketchup und Platinenlayout Eagle & Fritzing u.a.
    Antworten: 5
    Letzter Beitrag: 06.06.2008, 14:16
  4. Anfänger Meine Schaltung macht merkwürdige Sachen
    Von The KOR im Forum Elektronik
    Antworten: 11
    Letzter Beitrag: 11.05.2008, 14:18
  5. Anfänger Problem
    Von smookie im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 10
    Letzter Beitrag: 21.06.2006, 17:56

Berechtigungen

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

Labornetzteil AliExpress