Forum: Mikrocontroller und Digitale Elektronik PIC16F


von Manfred Glahe (Gast)


Lesenswert?

Hallo Pic Anwender,
wer kann mir Hinweise geben wo ich eine möglichst offizielle Angabe über 
folgende (DAUER-) Assembleranweisungen finde:

movlw   DAUER-1
movwf   fsr

Das fuktioniert zwar so , aber ich finde in den MPLAB Unterlagen keinen 
Hinweis auf die Zulässigkeit dieser erweiterten Funktion.

MfG Manfred Glahe

von Steffen (Gast)


Lesenswert?

Wenn irgendwo z.B. steht

DAUER   EQU   0x22

dann wird w mit dem Literal 0x22-1 also 0x21 geladen und dann w ins FSR. 
Eine erweiterte Funktion kann ich da nicht erkennen oder wie ist die 
Frage gemeint?

MfG
Steffen

von Manfred Glahe (Gast)


Lesenswert?

Hallo Steffen,
ich lade das fsr Register mit der Adresse der Variablen DAUER. Meine 
Programmschleife erfordert aber noch ein incf fsr und so würde ich beim 
1. Durchlauf der Schleife einen "Versatz" um plus 1 bekommen. Um dies 
auszugleichen läd DAUER-1 schon eine Adresse vorher. Beim HC11 geht 
sowas offiziell.
Nochmal die Anweisungen:

BLOCK2:  movlw  DAUER-1
         movwf  fsr
BLOCK1:  incf   fsr
         movfw  indf
         movwf  BYTAUS

Die Frage ist ist das hier auch zulässig?

MfG  Manfred Glahe

von Steffen (Gast)


Lesenswert?

Ja, das ist zulässig. In der Hilfe von MPLAB müsste das irgendwo beim 
Assembler stehen.

MfG
Steffen

von Fadil Lukmansyah (Gast)


Lesenswert?

Hello!! i need compiler software for microchip microcontoler and
downloder (HEX files into chip) for PIC16F628A and PIC16F873 series

von sackgesicht (Gast)


Lesenswert?

@Manfred
Um zeit zu sparen, kann das FSR auf "auto increment" gestellt werden
(evtl. nicht bei allen PICs). Das "INCF FSR" ist dann nicht nötig,
das FSR wird dann bei (nach) jedem Zugriff auf INDF automatisch
inkrementiert.

von Manfred Glahe (Gast)


Lesenswert?

Hallo ......gesicht,

danke für Deine Mühe, ist aber längst abgehakt.

Derzeit habe ich neue Probleme mit dem dsPIC30F2010 und dem Debugger
von MPLAB ICD2 In-circuit Debugger, vorletzte Version. Wenn Du darüber
etwas sagen kannst, dann wäre es hilfreich. Eine deklarierte Variable
mit 2Byte Platzhalter funktioniert im Simulator einwandfrei, im
Debugger bekomme bei Zugriff diese Fehlermeldung im WatchWindow:
Restrikted Memory. Es handelt sich nur um ein einziges überschaubares
Ass.Prog. und nach dem Programmieren habe ich an Porte auch das
erwartete Muster. Offensichtlich liegt es nur am Debugger, weshalb ich
da auch selbst nicht mehr weitermache, mangels entsprechender Kompetenz
in diesem Bereich.

MfG Manfred Glahe

von sackgesicht (Gast)


Lesenswert?

oops, habe garnicht gesehen, dass der Ursprungs-Thread schon Jahre alt
ist...

Nein, tut mir leid. Meie Kenntnisse in diese Richtung beschränken sich
auf

 MPLAB
 PICStart Plus
 Verschiedene PIC16/PIC17

...

von Carsten (Gast)


Lesenswert?

Hallo Manfred,

hast du in den "Build Options" unter "MPLAB LINK30" auch "Link for
ICD2" ausgewählt?

von Manfred Glahe (Gast)


Lesenswert?

Hallo Carsten,

den Button gibt es hinter dem Fenster bei mir nicht. Im Outputwindow
wird aber explizit angezeigt, "connected to ICD2". Außerdem handelt
es sich doch nur um den EINEN Parameter, alle anderen arbeiten ja
einwandfrei und werden auch im watchwindow richtig angezeigt. Ich werde
mir mal die neueste Version runterladen und schauen wie es da aussieht.
Danke an Euch für Eure Hilfe. Merkwürdig ist dieser Fehler schon.

MfG Manfred Glahe

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.