MCU PIC16F88, SW MPLAB X IDE, Assembler
Mám direktívy:
Kód: Vybrat vše
RRF DELAY, f ;alebo
DECF DELAY, fČo znamená to ´f´ v týchto príkazoch?
Dík.
Moderátor: Moderátoři
Kód: Vybrat vše
RRF DELAY, f ;alebo
DECF DELAY, fAtlan píše:Stiahni si cesky preklad pre pic 16f84.
MiloPS3 píše:...ty sis ten DS ani neotevrel...
MiloPS3 píše:...tohle neni direktiva,to sou zakladni prikazy...
Kód: Vybrat vše
RRF DELAY, f ;alebo
DECF DELAY, fKód: Vybrat vše
movlw petter Pseudoinstrukce představují tzv. direktivy překladače. Protože tyto pseudoinstrukce nejsou řádnými intrukcemi mikroprocesoru, při běhu programu se nevykonávají - plní svojí funkci pouze při překladu zdroj. programu a říkají překladači, co má při překladu dělat. Tzn. K procesoru se nedostane. Pseudoinstrukce se používají i k mnoha dalším činnostem, můžeme pomocí nich dělat následující: přiřazovat symboly konkrétním objektům, inicializovat nebo rezervovat paměťový prostor, ovládat čítač instrukcí (PC) atd.
MiloPS3 píše:...to vsechno je uvedeny v soubore k prislusnemu procesoru tady v p16f88.inc...
Kód: Vybrat vše
; Register Definitions
W EQU H'0000'
F EQU H'0001'
;----- Register Files -----------------------------------------------------
;-----Bank0------------------
INDF EQU H'0000'
TMR0 EQU H'0001'
PCL EQU H'0002'
STATUS EQU H'0003'Kód: Vybrat vše
INCF DELAY, fKód: Vybrat vše
INCF DELAY, wOd obsahu registru je odečtena jednička a výsledek je uložen do střadače pro d=0 nebo do registru pro d=1.
Kód: Vybrat vše
DECF NIEČO, f
DECF NIEČO, wKód: Vybrat vše
DECF NIEČO, 1
DECF NIEČO, 0Kód: Vybrat vše
leva_kapsa EQU 0
prava_kapsa EQU 0b1
DECF FSR,leva_kapsa
DECF FSR,prava_kapsa
Atlan píše:Este tak 3 strany asm, a dostaneme sa k deleniu a nasobeniu a vysledkom bude prechod na C jazyk...
Kód: Vybrat vše
MOVF FSR,0x20 ;predpokladám že STATUS IRP = 0, takže BANK0
MOVF PORTA,W
MOVWF INDF
INCF FSR,f
MOVF PORTB,W
MOVWF INDF
INCF FSR,f
MOVF PORTC,W
MOVWF INDF
...Kód: Vybrat vše
MOVF FSR,0x20 ;nastavím prvú adresu na 0x20
MOVF INDF,0x01 ;vrazím do nej hodnotu 1 dec
INCF FSR,f ;posuniem sa na ďalšiu adresu, teda 0x21
...