PIC montāža valodā bibliotēka vajadzīga

C

comp_freak

Guest
Es lietoju PIC16f877 par manu projektu, iepriekš man bija izmantoti, lai montāžas kodēšanas ar motorola MCU,

tomēr divi do airthmatic operācijas pievienot, sub 16 bitu skaitu i parasti darīt ar divpakāpju

1) pirmā do darbība zemāks baitu, veikals rezultāts
2) par to darbība augšējā baits, un uzglabāt rezultātu

Tomēr viens no eksperts stāstīja man par pic tur izejas bibliotēkām, kas u var izmantot .. pēc tam vajadzētu būt arithmatic bibliotēka, kur tas viss airthmatic un loģiskās izteiksmes dažādiem bit, piemēram, 16,32 biti jābūt pieejamai ..ja kāds no jums knw ja šī bibliotēka atrodas un kā to izmantot ..

Es esmu patiešām neapmierinātas cuz i did par 1st searchin par mikroshēmā mājas i couldnt atrast.i knw bibliotēka pastāv C kodu,, bet man nav ne jausmas par to montāžu valodu bibliotēka ..some1 pls knw šo stuff tikai dod man kādu ideju ..kur iegūt šīs bibliotēkas

 
Es mēdzu izmantot pic MC vairāk nekā 4 gadus, es nezinu jebkura lieta par šo liberary par assemply valodu, ja jūs programmu pic ar assemply, ne sūtīt attēli un savu laiku un rakstīt jums pieder routin
shafee

 
Man ir šāds bibliotēka, ka es uzrakstīju.Šeit ir divi makro no manas bibliotēkas jums nepieciešams:

Kods:

; Pievieno divi veseli skaitļi kopā (int_c = int_a int_b).

; Vesels skaitlis ir divu baitu skaitu.

; Int_aH: adrese augstu baits no skaitlim. Zemu baits tiek pieņemts

, Kas nākamajā adresi (int_aH 1) tā, ka skaitlim ir int_aH: int_aL.

; Int_bH: adrese augstu baits no skaitlim. Zemu baits tiek pieņemts

, Kas nākamajā adresi (int_bH 1) tā, ka skaitlim ir int_bH: int_bL.

; Int_cH: adrese augstu baits no skaitlim. Zemu baits tiek pieņemts

, Kas nākamajā adresi (int_cH 1) tā, ka skaitlim ir int_cH: int_cL.

; Int_cH var būt vienāds ar int_aH vai int_bH

; Ietekmē WREG un STATUSS

;------------------------------------------------- -----------------------------

INT_ADD makro int_aH, int_bH, int_cH

vietējās int_aL, int_bL, int_cL

int_aL = int_aH 1

int_bL = int_bH 1

inc_cL = int_cH 1

ja int_aH == int_cH; Īpašs gadījums int_a = int_a int_b

movf int_bL, w

addwf int_aL, f

movf int_bH, w

btfsc STATUSS, C

addlw 0x01

addwf int_aH, f

vēl

ja int_bH == int_cH; Īpašs gadījums int_b = int_a int_b

movf int_aL, w

addwf int_bL, f

movf int_aH, w

btfsc STATUSS, C

addlw 0x01

addwf int_bH, f

vēl

movf int_aL, w

addwf int_bL, w

movwf int_cL

movf int_aH, w

btfsc STATUSS, C

addlw 0x01

addwf int_bH, w

movwf int_cH

endif

endif

endm; Atņem divi veseli skaitļi (int_c = int_a - int_b).

; Vesels skaitlis ir divu baitu skaitu.

; Int_aH: adrese augstu baits no skaitlim. Zemu baits tiek pieņemts

, Kas nākamajā adresi (int_aH 1) tā, ka skaitlim ir int_aH: int_aL.

; Int_bH: adrese augstu baits no skaitlim. Zemu baits tiek pieņemts

, Kas nākamajā adresi (int_bH 1) tā, ka skaitlim ir int_bH: int_bL.

; Int_cH: adrese augstu baits no skaitlim. Zemu baits tiek pieņemts

, Kas nākamajā adresi (int_cH 1) tā, ka skaitlim ir int_cH: int_cL.

; Int_cH var būt vienāds ar int_aH vai int_bH

; Ietekmē WREG un STATUSS

;------------------------------------------------- -----------------------------

INT_SUB makro int_aH, int_bH, int_cH

vietējās int_aL, int_bL, int_cL

int_aL = int_aH 1

int_bL = int_bH 1

inc_cL = int_cH 1

ja int_aH == int_cH; Īpašs gadījums int_a = int_a - int_b

movf int_bL, w

subwf int_aL, f

movf int_bH, w

btfss STATUSS, C

addlw 0x01

subwf int_aH, f

vēl

movf int_bL, w

subwf int_aL, w

movwf int_cL

movf int_bH, w

btfss STATUSS, C

addlw 0x01

subwf int_aH, w

movwf int_cH

endif

endm

 
thanx daudz ...im joprojām strādā pie tā ...ja es varu atrast kaut ko jaunu ļaus u update .....

 

Welcome to EDABoard.com

Sponsor

Back
Top