- 3D-Druck Einstieg und Tipps         
Ergebnis 1 bis 10 von 16

Thema: PIC16F887 - I2C - LCD Version gestorben neue per LEDs

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Lebende Robotik Legende Avatar von PICture
    Registriert seit
    10.10.2005
    Ort
    Freyung bei Passau in Bayern
    Alter
    74
    Beiträge
    11.077
    Ich habe noch nie Probleme mit Assemblerprogrammen, obwohl ich schon früher verschiedene Prozessoren und µC's programmiert habe. Jedes Assemblerprogram ist eben wie ein Befehlsatz für die CPU.

    Was für dich sehr seltsam ist, ist für mich einfach normal ...

    MfG

  2. #2
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    02.09.2009
    Ort
    Berlin (Mariendorf)
    Beiträge
    1.023
    Hallo zerb.

    Leider sitze ich grad am "falschen" PC, auf dem kein MPLAB installiert ist. Darum kann ich nur ein paar intuitive Dinge von mir geben.
    1) Wenn's Probleme mit der Syntax gibt, lohnt sich bestimmt der Griff zur Hilfefunktion: Suche nach den Begriffen 'init' und 'rdata'; vielleicht sind das reservierte Wörter des Assemblers oder des Präprozessors für die Objektcodeerzeugung. Ich selber arbeite bis dato auch nur auf der einfachsten Ebene (genau wie du: keine Code/Daten/sonstige Segmente, nur eine .ASM-Datei), aber "RDATA" riecht nach Speicherreservierung, Datensegment oder sowas.
    2) Ich bin beim Wechsel von Win2k nach Linux etwas auf die Nase gefallen, weil die in der zweiten Nachkommastelle erhöhte Präprozessorversion einige Unsauberkeiten meiner "freien Syntaxauslegung" nicht mehr schlucken wollte: das waren Berechnungen mit Adresslabels, die Klammern bei den Includedateien und vielleicht auch noch irgendwas mit dem Hash #. Sieh also bei den fraglichen Stellen nochmal genau in der Dokumentation nach, falls du einen Releasewechsel, z.B. durch Neuinstallation von MPLAB, mitgemacht haben könntest.

    Dann sind mir noch ein paar potentielle Fehlerquellen aufgefallen:
    - gemischte Verwendung von BANKSEL und expliziter STATUS-Bit RP0-Manipulation
    - Default-Destination z.B. bei xorwf
    - der größer/kleiner-Vergleich in der Kaskade sollte m.E. mit Subtraktion und dem Carry-Bit gemacht werden statt mit Zero. Vll. hab ich deinen Sourcecode aber noch nicht richtig verstanden.

    Gruß
    Christian.

Berechtigungen

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

fchao-Sinus-Wechselrichter AliExpress