Hej. Jag är ny här på forumet och på PIC:ar och har inte hittat hur man kan använda arrayer i loopar.
Jag har provat med följande kod, men det funkar inte. Meningen är att rotera den första in-variabeln ett steg. Sen öka i med ett. Sen rotera nästa in-variabel ett steg. Osv. (Ni fattar säkert vad jag har tänkt) Hur ska man göra?
1 cblock 14h
2 in:3h ; Array för 3 byte
3 i
4 endc
5
6
7 Mainloop
8 rlf in+i,f ; Rotera in-variablerna
9 incf i,f
10 goto Mainloop
Hur kan man använda Array på PIC
Ska du använda pekare i en PIC så är det registren INDF och FSR du ska titta på.
Du lägger in adressen i FSR och läser eller skriver sen till INDF.
Ungefär...
edit: fast just ditt exempel är nog betydligt enklare att köra utan loop, även mindre kod:
Det får vara en stor array eller så för att indirekt adressering ska vara lönt...
Du lägger in adressen i FSR och läser eller skriver sen till INDF.
Kod: Markera allt
movlw in
movwf FSR
mainloop:
rlf INDF,f
incf FSR
goto mainloop
edit: fast just ditt exempel är nog betydligt enklare att köra utan loop, även mindre kod:
Kod: Markera allt
rlf in
rlf in+1
rlf in+2