En la comunicación en serie, el host necesita aceptar 4 bytes de datos. Cuando escribo esto, me indica el tipo de datos incorrecto. Por favor ayúdame a echar un vistazo.
Espero que pueda ayudarte~~~
Private Sub MSComm1_OnComm()
Atenuar RecibirDatos como único
Atenuar temperatura como variante
Atenuar RecibirDatosBuffer_h, RecibirDatosBuffer_l como único
Si MSComm1. CommEvent = comEvReceive Entonces
i = i + 1
temp = AscB(MSComm1. Llama a ufvn_cls 'Borrar los puntos de coordenadas de la pantalla anterior
Llama a ufvn_reset ' Vuelva a dibujar la línea de coordenadas
Si i = 1 entonces
Si temp = 128 entonces 'El bit de identificación enviado por la computadora inferior garantiza que los datos enviados estén completos y sean correctos para poder ingresar i = 2
i = 1
De lo contrario
i = 0
Finalizar si
Finalizar si
Si i = 2 Entonces 'Recibir datos altos
RecibirDatosBuffer_h = temp<
Text1.Text = RecibirDatosBuffer_h
MSComm1.InBufferCount = 0
Finalizar si
Si i = 3 Entonces 'Recibir datos bajos
RecibirDataBuffer_l = temp
MSComm1.InBufferCount = 0
Text2.Text = Text1. Text + ReceiverDataBuffer_l / 100
i = 0
ufvn(130) = Val(Text2.Text) * 24 'Convierte los datos recibidos en coordenadas
For j = 1 To 129 'Vuelve a dibujar los datos de la siguiente pantalla para conectarlos a la forma de onda completa
ufvn(j) = ufvn(j + 1) 'Transmite el avance de datos
Siguiente j
Llame a ufvn_main 'Vuelva a dibujar la forma de onda en este momento
Finalizar si
Finalizar si
Fin Sub