[ vladel @ 22.05.2005. 13:20 ] @
potrban mi je makro ili neka inc.datoteka u asembleru za testiranje bita na portu.
konktretno mi treba citanje sa porta ( paralelno 8-bitno)koje se prenosi u w-radni registar gde se on kao takav salje na neku labelu za ubacivanje u neki F-registar kod PIC mikrokontrolera.
pocetniksam pa bi mi svaka pomoc bila dobrodosla .
hvala
vladel
[ rsinisa @ 22.05.2005. 15:15 ] @
Nisam bash najbolje razumeo sta ti treba. Ako hoces da procitas
stanje na nekom portu i to stavis u neki F registar (odn. u RAM) uradi
to ovako

movf portb, w
movwf neki_reg

Ako hoces da ispitas stanje nekog bita registra uradi to ovako:

btfsc portb, 0 ; ispitaj stanje portb.0 i preskoci ako je 0

ili

btfss portb, 0 ; ispitaj stanje portb.0 i preskoci ako je 1

Pozdrav.
Sinisha
[ stameni @ 22.05.2005. 15:18 ] @
Citat:
potrban mi je makro ili neka inc.datoteka u asembleru za testiranje bita na portu.



Ako je reč o 16c84 / 16f84 i sličnim, ovo postižeš direktnom primenom naredbi btfsc (Bit Test f, Skip if Clear) i btfss (Bit Test f, Skip if Set).


Citat:
konktretno mi treba citanje sa porta ( paralelno 8-bitno)koje se prenosi u w-radni registar gde se on kao takav salje na neku labelu za ubacivanje u neki F-registar kod PIC mikrokontrolera.



Napamet, ovako nekako beše (konsultuj datasheet):

Code:


neki_registar    EQU 0x0c


; Svi bitovi porta B - input

bsf STATUS, RP0

movlw b"11111111"

movwf TRISB

bcf STATUS, RP0


; Čitamo PORTB u W, pa ga upisujemo na 0x0c

movf PORTB, W

movwf neki_registar

[ varbandy @ 12.06.2005. 17:13 ] @

;Evo nekoliko makroa. Ja ih redovno koristim , najbolje da se oni upisu
;direktno u MPLAB.


load macro register, data ;puni register sa podatkom
movlw data
movwf register
endm

:Primer:
load TMR0,8
;************************************************
movff macro register1, register2 ;prebacuje register1 u register2
movf register1, w
movwf register2
endm

;primer:
movff TMR0,PORTA ; vrednost TMR0 registra copira na PORTA

;Imam ih jos ako nekog interesuje mogu ih poslati
;Varbandy
[ vladel @ 12.06.2005. 22:33 ] @
vidis ja sam pocetnik i svaki makro bi mi dobro dosao,
ako imas jos baci mi na mail.
sve najbilje
vladel
[ varbandy @ 13.06.2005. 09:49 ] @

Samo mi javi koji PIC imas.Za pocetnike najjeftinija i
najbolja varijanta je 16f627

[ vladel @ 14.06.2005. 19:08 ] @
trenutno koristim zastareli 16f84(more primera na netu).
inace imam i 16f628 cini mi se da su mnogo slicni po hard strukturi.
sve najbolje
vladel
[ varbandy @ 14.06.2005. 20:15 ] @

E pa ima velike razlike izmedju f84 i f 628.
f628 ima ugradjene komparatore i tri tajmera ,veci eeprom
i sto je najbitnije dosta je jeftiniji

varbandy

Zaboravio sam da ima iserijski komunikacioni port
[ vladel @ 15.06.2005. 20:16 ] @
ispravka za f84.
presao sam se ,inace mislio sam na f627 koji si mi predlozio u priv. poruci.
sve najbolje
[ varbandy @ 15.06.2005. 21:54 ] @
Pa f627 ima 1k prog memorije dok f628 ima 2k
to je jedina razlika