Har lagt ned alldeles för mycket tid på att leta runt på Google så nu frågar jag er.
Finns det något sätt att i PicBasic ange ett arrayelement med hjälp av en annan variabel, t.ex. arraynamn, där i har ett siffervärde?
PicBasic: Ange arrayelement med hjälp av annan variabel
Jag har försökt en bra stund nu utan att lyckas. Har provat både med [] och (). Den här koden fungerar inte, kanske är det jag som gjort ett fel i själva logiken?
Kod: Markera allt
outputs VAR BYTE[8]
pausetime VAR BYTE
scrollamount VAR BYTE
i VAR BYTE
x VAR BYTE
TRISA = 0
TRISB = 0
LOW PORTA
LOW PORTB
outputs[0] = PORTA.1
outputs[1] = PORTA.0
outputs[2] = PORTA.7
outputs[3] = PORTA.6
outputs[4] = PORTB.7
outputs[5] = PORTB.6
outputs[6] = PORTB.5
outputs[7] = PORTB.4
pausetime = 100
control:
scrollamount = 3
gosub scrolleds
scrolleds:
x = 0
FOR i = 0 to scrollamount
HIGH outputs(x)
PAUSE pausetime
LOW outputs(x)
PAUSE pausetime
x = x + 1
NEXT i
scrollamount = 0
Return
goto control
end
Först och främst borde "outputs" deklareras som en bit-sträng.
Sen är jag tveksam till om du bör tillämpa "HIGH" och "LOW" på den refererande strängen. Det funkar minst lika bra att sätta dem till ett respektive noll.
Du pekar på ett vektorelement genom:
variabelnamn[index]
Variablen "x" helt överflödig. Varför inte använda dig av räknaren, "i"?
Sen är jag tveksam till om du bör tillämpa "HIGH" och "LOW" på den refererande strängen. Det funkar minst lika bra att sätta dem till ett respektive noll.
Du pekar på ett vektorelement genom:
variabelnamn[index]
Variablen "x" helt överflödig. Varför inte använda dig av räknaren, "i"?