возврат сборки - PullRequest
       9

возврат сборки

1 голос
/ 06 октября 2009

небольшая часть моего кода

swi  r6,r0,LCD_ CONT  
addi r10,r0,6  

firstdelay:  
addi r10,r10,-1  
bnei r10,firstdelay  
swi  r0,r0,LCD_ CONT  
addi r10,r0,30

seconddelay:  
addi r10,r10,-1  
bnei r10,seconddelay  
swi  r5,r0,LCD_DATA  

Я должен откладывать несколько раз по всей программе, но хочу, чтобы она была маленькой. Я хотел бы написать что-то вроде:

swi  r6,r0,LCD_ CONT  
addi r10,r0,[delayamount]  
bri  Delay  
swi  r0,r0,LCD_ CONT  
addi r10,r0,[newdelayamount]  
bri  Delay

Delay:  
addi r10,r10,-1  
bnei r10,Delay  
[return to where I was previously in the code]

поэтому моя проблема: как мне вернуться туда, где я был в коде, без необходимости создавать многократные задержки и просто проходить через код прямо. спасибо всем!

1 Ответ

1 голос
/ 06 октября 2009

Может быть, это поможет: Использование функций (обратите внимание: «код операции rtsd затем используется для возврата к вызывающей функции»).

...