La fuente de tu error es, seguramente, que cuando lees mscomm1.input, coges mas de un caracter, y la funcion ASC vale solo para un caracter. Podrias cambiar la propiedad inputlen a 1 , o sino, cortar los datos recibidos en unidades, y tratarlas uno a uno.