Risolto con un Timer:
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
int i = 0;
private void Form1_Load(object sender, EventArgs e)
{
serialPort1.Open();
timer1.Enabled = false;
timer1.Interval = 1000;
}
int[] numeri = {1, 2, 3, 4, 5};
private void timer1_Tick(object sender, EventArgs e)
{
i++;
serialPort1.Write(" " + numeri[i - 1].ToString());
}
private void btInvio_Click(object sender, EventArgs e)
{
timer1.Start();
}
}
Ho impostato l'intervallo del timer ad un secondo (1000 millisecondi), ed all'evento Tick (lo "scatto") ho associato l'istruzione di scrittura dell'elemento n-esimo dell'array. Ovviamente, siccome l'indice del vettore parte da zero, ho dovuto decrementarlo di uno (n-1). Il button "btInvio" serve a far partire il timer.
Grazie per il suggerimento!