PicBasic: Ange arrayelement med hjälp av annan variabel

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
Malm
Inlägg: 215
Blev medlem: 22 februari 2004, 12:55:06
Ort: Borås

PicBasic: Ange arrayelement med hjälp av annan variabel

Inlägg av Malm »

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?
Användarvisningsbild
cykze
EF Sponsor
Inlägg: 1539
Blev medlem: 8 april 2004, 10:40:28
Ort: Uppsala

Inlägg av cykze »

Provat med arrayen(i) ?
Malm
Inlägg: 215
Blev medlem: 22 februari 2004, 12:55:06
Ort: Borås

Inlägg av Malm »

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
Användarvisningsbild
$tiff
Inlägg: 4941
Blev medlem: 31 maj 2003, 19:47:52
Ort: Göteborg
Kontakt:

Inlägg av $tiff »

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"?
Skriv svar