-         

Ergebnis 1 bis 7 von 7

Thema: Probleme mit MPLAB

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    12.01.2007
    Beiträge
    28

    Probleme mit MPLAB

    Anzeige

    hi
    nun habe ich es endlich geschaft das mein Progamiergerät progamme in den PIC schiebt und möcht dieses nun auch testen.

    Ich hatte das Programm auf einem anderen rechner geschrieben und comiliert. wenn ich jetzt auf meinem rechner was ändern will dan bringt er mir beim Compilieren Fehlermeldungen.

    Als erstes mal das Programm:

    ; File: test1.asm
    ; Datum: 17.4.2007, Toni Thiele
    list p=16f84a
    #include p16f84a.inc
    ; Set configuration bits using definitions from the include file, p16f84.inc
    __config _LP_OSC & _PWRTE_OFF & _WDT_OFF & _CP_OFF
    ; registrierzuordnung
    STATUS equ 03h
    TIMER equ 01h
    TRISIO equ 085h
    PORTIO equ 05h
    ZAEHL1 equ 0ch
    ZAEHL2 equ 0dh
    ZAEHL3 equ 0eh
    org 0 ;Startadresse für programm-conter festlegen
    ;***port-setup***
    bsf STATUS, 5 ;wechsle auf Bank1
    movlw 0011 ;lade Bitmuster für I/O belegung in AR
    movwf TRISIO ;verschiebe bitmuster in TRISIO
    bcf STATUS, 5 ;lösche bit 5 (rückkehr bank 0)
    ;***Programmbeginn***
    Start
    ;Automatik
    loop1 btfss PORTIO, 0 ;Schleifenabrage bit 0 (Tasterabfrage)
    goto loop1 ;schleife
    ; carry on here
    bsf PORTIO, 3 ;setzt bit 3 (ausgang)
    call Pause ;zeitverzoegerung (Out=1)
    bcf PORTIO, 3 ;lösche bit 3
    call Pause ;Zeitverzoegerung (out=0)
    bsf PORTIO, 3 ;setzt bit 3
    call Pause ;Zeitverzoegerung (out=1)
    bcf PORTIO, 3 ;lösche bit 3
    Call Pause ;zeitverzoegerung (out=0)
    ;Einzelbetrieb
    loop2 btfss PORTIO, 1; Schleifenabfrage bit 1 (Tastenabfrage)
    goto loop2
    ;carry on here
    bsf PORTIO, 3 ;setzt bit 3 (ausgang)
    call Pause ;zeitverzoegerung (out=1)
    bcf PORTIO, 3 ;lösche bit 3
    Call Pause ;zeitverzögerung (out=0)
    goto Start
    Pause
    Verzoegerung1
    decfsz ZAEHL1, 1 ;ziehe ab von 255
    goto Verzoegerung1 ;wenn nicht 0, dann springe
    decfsz ZAEHL2, 1 ;ziehe ab von 255
    goto Verzoegerung1 ;wenn nicht 0, dann springe ;sonst spring in naechste Zeile
    decfsz ZAEHL3, 15
    goto Verzoegerung1
    return
    end


    und nun die meldungen:

    Make: The target "D:\Eigene Dateien\Toni\Elektrotechnik\Pic\Projekte\Garage-Lutz\Projekte\test1.o" is out of date.
    Executing: "C:\Programme\Microchip\MPASM Suite\MPAsmWin.exe" /q /p16F84A "test1.asm" /l"test1.lst" /e"test1.err"
    Message[302] D:\EIGENE DATEIEN\TONI\ELEKTROTECHNIK\PIC\PROJEKTE\GARAGE-LUTZ\PROJEKTE\TEST1.ASM 19 : Register in operand not in bank 0. Ensure that bank bits are correct.
    Warning[207] D:\EIGENE DATEIEN\TONI\ELEKTROTECHNIK\PIC\PROJEKTE\GARAGE-LUTZ\PROJEKTE\TEST1.ASM 24 : Found label after column 1. (loop1)
    Warning[207] D:\EIGENE DATEIEN\TONI\ELEKTROTECHNIK\PIC\PROJEKTE\GARAGE-LUTZ\PROJEKTE\TEST1.ASM 36 : Found label after column 1. (loop2)
    Warning[203] D:\EIGENE DATEIEN\TONI\ELEKTROTECHNIK\PIC\PROJEKTE\GARAGE-LUTZ\PROJEKTE\TEST1.ASM 43 : Found opcode in column 1. (goto)
    Warning[202] D:\EIGENE DATEIEN\TONI\ELEKTROTECHNIK\PIC\PROJEKTE\GARAGE-LUTZ\PROJEKTE\TEST1.ASM 51 : Argument out of range. Least significant bits used.
    Warning[205] D:\EIGENE DATEIEN\TONI\ELEKTROTECHNIK\PIC\PROJEKTE\GARAGE-LUTZ\PROJEKTE\TEST1.ASM 54 : Found directive in column 1. (end)
    Error[173] D:\EIGENE DATEIEN\TONI\ELEKTROTECHNIK\PIC\PROJEKTE\GARAGE-LUTZ\PROJEKTE\TEST1.ASM 55 : Source file path exceeds 62 characters (D:\EIGENE DATEIEN\TONI\ELEKTROTECHNIK\PIC\PROJEKTE\GARAGE-LUTZ\PROJEKTE\TEST1.ASM)
    Halting build on first failure as requested.
    BUILD FAILED: Wed Apr 18 20:55:24 2007



    wie gesagt. auf dem anderen rechner ging es.

    es kann sein das im Programmaublauf noch fehler drin sind.
    ich konnte noch nicht richtig testen.

    Ich hoffe ihr könnt mir ein wenig weiterhelfen.

    mit freundlichen Grüßen

    toni

  2. #2
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    07.05.2006
    Alter
    29
    Beiträge
    122
    Hi

    Also die ersten paar Warnungen sind erstmals nicht wichtig.
    Der wirkliche Fehler, der den Assembler am compilieren hindert ist der hier:
    Error[173] D:\EIGENE DATEIEN\TONI\ELEKTROTECHNIK\PIC\PROJEKTE\GARAGE-LUTZ\PROJEKTE\TEST1.ASM 55 : Source file path exceeds 62 characters (D:\EIGENE DATEIEN\TONI\ELEKTROTECHNIK\PIC\PROJEKTE\GARAGE-LUTZ\PROJEKTE\TEST1.ASM)

    Und wie dort steht, ist der Pfad, in dem sich die Datei befindet zu lange. (Keine Ahnung wieso, dieses Problem hatte ich noch nie, aber ehrlich gesagt, ist der Pfad schon n bisschen lange.)
    Also: Die *.asm-Datei mal auf den Desktop oder in "Eigene Datein" oder sonst iergend an einem Ort mit kurzem Pfad speichern, und sie dort nochmals kompilieren.
    greez
    Anything that can go wrong, will go wrong. Kabel sind entweder zu lang oder zu kurz...

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    12.01.2007
    Beiträge
    28

    testversuche

    hi

    neues Problem. mit dem Pfad das ging super. weiß der geier wie dieser idiotische fehler zustandekommt.

    ich kann nun Compilieren, das Prog. in den Pic schieben, aber testen geht nicht. Ich hab das Prog mal vereinfacht und lasse einfach eine LED am ausgang leuchten (würd mich freuen wenns so wäre)

    Neues Prog:
    list p=16f84a
    #include <p16f84a.inc>

    __config _LP_OSC & _PWRTE_OFF & _WDT_OFF & _CP_OFF
    ;definitionen
    STATUS equ 03h
    TRISB equ 86h
    PORTB equ 06h
    org 0
    bsf STATUS, 5
    movlw 00h
    movwf TRISB
    bcf STATUS, 5

    Start
    movlw 1Fh
    movwf PORTB
    end


    Sind hier vieleicht Fehler drin?

    Ich bin auch gar nicht sicher ob mein schwinger seine Arbeit verrichtet. kann ich das auf einfache art und weise nachprüfen?

    Ich habe nen sprut brenner5 und mir mir der schaltung gleich ein Testboard aufgebaut wo ich nur einen Stecker umstecke um vom Programmieren in das testen zu gelangen.
    Ich habe bedenken weil die Taktleitung auch mit über diesen stecker gehen und nicht weiter geschirmt sind.
    ...


    ???
    Mfg

    toni


    schönen abend noch

  4. #4
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    07.05.2006
    Alter
    29
    Beiträge
    122
    hiho

    Jo also im Programm sehe ich erstmals keinen Fehler, aber nen kleinen Tip:
    wenn du das p16f84a.inc-File einbindest, musst du Status, Trisb, Portb, etc. nicht mehr zusätzlich definieren, denn genau das macht dieses File. (Kannste ja mal schauen, was in dieser Datei alles drin steht.)

    Zum Takt-Problem:
    1. Mit wieviel Herz lauft der Pic?
    2. Haste die LED am richtigen Port angesteckt?
    3. Wenn du einen Quarz verwendest: sind die 2 Kondensatoren zwischen Quarz und Masse vorhanden?
    4. Ist schon ein bisschen Kritisch, wenn der Takt über Schalter/Stecker etc. läuft. Aber um da genauere Aussagen zu machen, müsstest du schon mal die Schaltung genauer beschreiben.

    greez
    Anything that can go wrong, will go wrong. Kabel sind entweder zu lang oder zu kurz...

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    12.01.2007
    Beiträge
    28

    re

    ich werde heut mal mein Multimeter mit RS232 oszi an die Platine ranhängen und schauen ob da was schwingt.
    ich habe übrigens ein 8mhz schwinger.

    Ich habe auch noch ein krumes 8, ... mhz quarz da da kann ich ja auch nochmal probieren. Ansonst einfach näher an den pic rücken (ohne stecker und lange leiterzüge dazwischen)

    irgendwie muß es gehen!


    Mfg
    ich meld mich wieder
    Danke


    Toni

  6. #6
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    07.05.2006
    Alter
    29
    Beiträge
    122
    hiho

    also wenn du nen externen Takt von 8mhz hast, musst du in der Konfigurationszeile des Programms das hier schreiben: _HS_OSC

    HS bedeutet High-Speed und ist für Frequenzen oberhalb von 4Mhz.
    Was du gschrieben hast, LP, bedeutet Low-Power und ist für Frequ. kleiner als 1Mhz, meist so um die 200Khz, gemacht.

    Probier das mal.
    greez
    Anything that can go wrong, will go wrong. Kabel sind entweder zu lang oder zu kurz...

  7. #7
    Neuer Benutzer Öfters hier
    Registriert seit
    12.01.2007
    Beiträge
    28

    re

    Jo, das war das Problem.


    Ihr glaubt nicht wieviel Freude mir das bereitet das die LED nun leuchtet.



    Vielen Dank für eure Hilfe.

    Mfg

    toni

Berechtigungen

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