logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Weryfikacja kodu asemblerowego 8051 – pętle, MOVX, sterowanie P1.6

elektronikopo 02 Lis 2007 11:52 819 2
REKLAMA
  • #1 4439368
    elektronikopo
    Poziom 20  
    Posty: 494
    Pomógł: 1
    Ocena: 14
    LJMP START
    ORG 100H
    START:
    MOV R5,#100
    LOP2:
    MOV R4,#255
    LOP:
    MOV R0,#30H
    MOV R1,#38H
    MOV A,#00000001B
    MOVX @R0,A
    MOV A,#01011011B
    MOVX @R1,A


    CLR P1.6
    CPL P1.6
    MOV A,#00000000B
    MOVX @R0,A
    MOV A,#00000000B
    MOVX @R1,A

    CLR P1.6
    CPL P1.6
    MOV A,#00000000B
    MOVX @R0,A
    MOV A,#00000000B
    MOVX @R1,A
    CLR P1.6
    CPL P1.6

    DJNZ R4,LOP
    DJNZ R5,LOP2








    MOV R6,#100
    LOP3:
    MOV R7,#255
    LOP4:
    MOV A,#00000000B
    MOVX @R0,A
    MOV A,#00000000B
    MOVX @R1,A
    CLR P1.6
    CPL P1.6
    MOV A,#00000000B
    MOVX @R0,A
    MOV A,#00000000B
    MOVX @R1,A
    CLR P1.6
    CPL P1.6
    MOV A,#00000000B
    MOVX @R0,A
    MOV A,#00000000B
    MOVX @R1,A
    CLR P1.6
    CPL P1.6
    MOV A,#00000000B
    MOVX @R0,A
    MOV A,#00000000B
    MOVX @R1,A
    CLR P1.6
    CPL P1.6
    DJNZ R5,LOP3
    DJNZ R6,LOP4
    LJMP START
  • REKLAMA
  • #2 4439623
    adamowicz
    Poziom 21  
    Posty: 374
    Pomógł: 43
    Ocena: 76
    Witam.
    Na pierwszy rzut oka można zminimalizować program wprowaczając podprogramy np. z tego kawałaka kodu:
    CLR P1.6
    CPL P1.6
    MOV A,#00000000B
    MOVX @R0,A
    MOV A,#00000000B
    MOVX @R1,A
    Piszesz na '51 z zewnętrznym RAM czy wykorzystujesz np. EEprom w 89S8252. Warto w asm stosować opisy tego co robisz i do czego dana procedura , fragment kodu służy.
    Pozdrawiam
  • #3 4442629
    elektronikopo
    Poziom 20  
    Posty: 494
    Pomógł: 1
    Ocena: 14
    dziekuje za pomoc
REKLAMA