Forum: Mikrocontroller und Digitale Elektronik Anfänger bittet um Unterstützung beim Programmieren eines PIC 16F627A


von Christian (Gast)


Angehängte Dateien:

Lesenswert?

Hallo liebe Profis,

ich beginne in die weite Welt der PIC-Programmierung einzusteigen, was 
tatsächlich nicht einfach ist.
Ich studierte inzwischen viele Beispielprogramme, insbesondere bei 
sprut.de.

Man beginnt natürlich mit einfachen Programmen, um hinter die 
Geheimnisse zu kommen. Nach vielem erfolglosen probieren, bitte ich um 
einen Hinweis, warum mein kleines Progrämmchen nicht funktioniert. Hier 
handelt es sich um ein einfaches Ansteuern von Ausgängen in Abhängigkeit 
einer Belegung an den Eingängen.

Ich arbeite mit einem Versuchsbord der Firma Vellmann K8048. Das 
Programm läßt sich ohne Fehler kompilieren und in den PIC laden. Leider 
passiert aber gar nichts. Also schlussfolgere ich, das irgend eine 
Vereinbarung nicht stimmt. Leider kann ich diese nicht finden.

Vielleicht kann jemand mir einen Hinweis geben.

Vielen Dank für die Unterstützung.

Mit freundlichem Gruß

Christian

von Jens M. (Gast)


Lesenswert?

Häufige Fehler:

- Spannung fehlt
- Programmer muckt (Programm vergleichen)
- Analog Funktion an?
- Watchdog BOR etc an
- externer oder falscher Quarz nicht vorhanden (erst mal internen 
nehmen)
- Falsche Quarzfrequenz (default nach PON nehmen und nicht dran 
rumfummeln)
- Board / PIC kaputt (Läuft ein Beispielprogramm)?

t.b.c.

von W.S. (Gast)


Lesenswert?

Ich kann den Sinn in deinem Codebeispiel nicht sehen. Zumindest ist bei 
kurzem Draufgucken nicht feststellbar, daß dieser Code überhaupt was tut 
- und ich bin zugegebenermaßen momentan zu faul, um ihn einer 
tiefgründigen Analyse zu unterziehen.

Nur soviel:
- benutze lesbare Marken
- laß sinnlose Sequenzen weg,  wie z.B.
        BTFSS dies,das
        GOTO  Marke2
        GOTO  Marke1     <-- dieser Befehl ist überflüssig
Marke1: BTFSS ...

- versuche, dein Programm zu strukturieren.
- springe nicht gar soviel mit Goto herum, das braucht man nicht so oft.

Wenn du ein Bit einem anderen folgen lassen willst, dann mach es anders, 
eventuell so:
    BTFSC  PortA,1
    BSF    PortB,3
    BTFSS  PortA,1
    BCF    PortB,3
macht "PortB,3 folgt PortA,1"

W.S.

von Christian (Gast)


Lesenswert?

Hallo,

vielen Dank für die Antworten. Der Hinweis zum Quarz war der 
entscheidende Punkt. Nach Korrektur funktioniert das Programm.

W.S. Hinweisen werde ich folgen und die Gestaltung ändern.

Als Entschuldigung: Als Anfänger beginnt man mit dem, was am einfachsten 
erscheint und nimmt dankbar jeden Hinweis zur Verbesserung auf.

Mit freundlichem Gruß

Christian.

von GroberKlotz (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Christian,

nachdem ich Dein ASM-File gesehen habe, kramte ich mal in meinen alten 
Dateien und habe dabei dieses Lauflicht gefunden.
Ohne schulmeistern zu wollen, vergleiche mal die Lesbarkeit meines 
ASM-Files mit dem Deinen.

>Hinweisen werde ich folgen und die Gestaltung ändern
>
Wenn Du ausführlich kommentierst und wie schon gesagt vernünftige 
Bezeichnungen für Variablen, Labels usw. verwendest, lernst Du zum einen 
was dabei und kannst auch später mal den Programmlauf einfach 
nachvollziehen.

Übrigens: Habe auch erst 2010 mit den µC's angefangen. Dabei habe ich 
mich für lange Zeit sehr stark bei sprut [http://www.sprut.de/index.htm] 
mit dem nötigen Wissen "betankt".

Entschuldigen brauchst Du Dich für Deinen Beitrag sicher nicht! Es gibt 
keine dummen Fragen, nur dumme Antworten! :-)

Weiterhin viel Spass mit den PIC's von microchip

mfG GroberKlotz

von Christian (Gast)


Lesenswert?

Hallo GroberKlotz,

vielen Dank für das *.asm file.

Sprut ist/war meine "Bibel"

Mit freundlichem Gruß

Christian

von Norbert P. (poff)


Lesenswert?

Hallo GroberKlotz,
nach unendlich vielen Fehlversuchen habe ich ebenfalls dein "altes" 
ASM-File genutzt, da auch bei mir das Sprut-Lauflicht nicht richtig 
arbeiten wollte. Ich verwende zum Einstieg den Brenner8P von Sprut, die 
Microchip Entwicklungsumgebung MPLAB und einen P16F628 für meinen 
Übungsaufbau.
Jetzt läuft es und ich habe endlich ein Erfolgserlebnis. Sogar kleine 
Änderungen im Programm haben die gewünschten Auswirkungen.
Vielen Dank dafür!
Schöne Grüße, Norbert

von GroberKlotz (Gast)


Lesenswert?

Hallo Norbert,

Danke für die Rückmeldung, freut mich, dass Du zum Ziel gekommen bist.

mfG Grober Klotz

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.