errore array

Sezione dedicata al sistema di sviluppo BASCOM-AVR per i micro AVR
At90s, Attiny, Atmega e Xmega

errore array

Postby suibaf » 14 Apr 2014, 18:53

Visto che in questa simpatica comunità siamo per ora pochini ho postato questo topic anche sul forum mcselec, facendo molta attenzione a vedere che non fosse un argomento già trattato altrimenti ti linciano!!! Qualora mi dovessero rispondere prima posterò qui la risposta in modo che possa giovarne anche qualcun altro che incontrerà il mio stesso problema.

Ho dichiarato una sub:
Code: Select all
Declare Sub Lcd_message(byval Indice_messaggio As Byte , Byval Message_array() As Byte)


Sul file di help mi sono arricurato che potessi passare ad una sub un array.
Ma quando la uso mi dà errore. Ho provato con call e senza e mi da addirittura errori diversi.(riga 276 e 312)
Sapreste indicarmi dove commetto l'errore?
Image
User avatar
suibaf
 
Posts: 122
Joined: 08 Mar 2014, 09:55
Location: Lecce

Re: errore array

Postby suibaf » 14 Apr 2014, 19:52

ecco la risposta che mi hanno dato:

in the declare you use () but when passing data, you need to pass the first element.
also notice that arrays are passed byref.
User avatar
suibaf
 
Posts: 122
Joined: 08 Mar 2014, 09:55
Location: Lecce

Re: errore array

Postby suibaf » 14 Apr 2014, 21:34

anche se io lo uso anche in questo modo senza messaggi di allarme da parte del compilatore:

Ceck_ric_reader_rfif Rcv_buff()
User avatar
suibaf
 
Posts: 122
Joined: 08 Mar 2014, 09:55
Location: Lecce

Re: errore array

Postby pier » 15 Apr 2014, 19:59

Per prima cosa mi viene da dirti che spesso i messaggi di errore si influenzano (un errore si può ripercuotere in cascata) e poi, vedendo il codice dal buco della serratura, e vedendo gli errori dichiarati sicuro che non ci sia un problema sull'array_temp()?
E' corretto Lcd_message 2, array_temp() senza indice?
pier
 
Posts: 115
Joined: 11 Aug 2013, 22:05

Re: errore array

Postby deluca » 15 Apr 2014, 22:16

@suibaf,

Code: Select all
Lcd_message 2, array_temp()

questa sintassi ti funziona? o hai cambiato in
Code: Select all
Lcd_message 2, array_temp(1)

andando ad indicare il primo elemento dell'array.

Inoltre io userei
Code: Select all
CALL Lcd_message(2, array_temp(1))

così da avere sempre l'identificativo della chiamata ad una subroutine e rendere il codice più leggibile
Ciao
Il mio sito: http://www.delucagiovanni.com ......e la chat: chat/
User avatar
deluca
Site Admin
 
Posts: 1104
Joined: 19 Jun 2011, 10:44
Location: 95123 - Catania (Italy)


Return to BASCOM-AVR

Who is online

Users browsing this forum: No registered users and 0 guests

cron