Haga una pregunta sobre el controlador LCD del microcontrolador
Permítanme explicar primero la primera pregunta: 0x80 es la primera dirección de la primera línea de LCD1602 y 0x40 es la primera dirección de la segunda línea. ¿Por qué contar? De hecho, está calculando el código de dirección. El método de cálculo es compensar la primera dirección. El parámetro x es el desplazamiento e y controla si lo es la primera o la segunda línea. Por ejemplo, cuando x=0 e y=0, el carácter se mostrará en el primer carácter de la primera línea de la pantalla LCD, y cuando x=15 e y=1, el carácter se mostrará en el último carácter de la segunda línea.
Segunda pregunta: basta con mirar la tabla comparativa del ASIC ii. Antes de 0x20, representa símbolos especiales, comúnmente utilizados en computadoras. Todos los caracteres después de 0x20 (0x20 es un espacio, la pantalla LCD también puede mostrarlo) se pueden mostrar en la pantalla LCD. Debido a que el compilador agregará automáticamente un carácter nulo al final de cada cadena para indicar el final de la cadena (el código ASIC II del carácter nulo es 0x00, antes de 0x20), cuando se detecta que el código ASIC II es menor que 0x20 caracteres Saltará automáticamente del bucle. En realidad, esta situación se puede cambiar a
while(DData[ListLength]!=0x00), o while(DData[ListLength]!='\0'). "0" también representa el carácter nulo.