Grazie per l'informazione ma avrei bisogno di ulteriori delucidazioni.
Intendi dire così:
codice:
public class Smsp
{
//  tipoDiSerialPort serialPort1; 
    Form1 serialPort1;

//  public Smsp(tipoDiSerialPort parametroPassato) //passaggio al costruttore 
    public Smsp(Form1 parametroPassato) // passaggio al costruttore 
    {
        pendingAnswersCtr = 0;
        broad_packet = 0;
        serialPort1 = parametroPassato; // riferimento
    }

    private void SmspAvvioTx()
    {
//      serialPort1.Write("pluto", 0, 5); // <-- così non posso 
        serialPort1.serialPort1.Write("pluto", 0, 5); // ma così sì
    }
}
Se volessi chiamare il metodo SmspAvvioTx() dalla classe Form1 come devo fare
visto che ora è presente un parametro al costruttore?
Es. questa istanza non è piu' valida: Smsp ser1Smsp = new Smsp();
Grazie.