lo que significa inicializar Puertos en el microcontrolador Pic como 0x00

-1

Por qué se entiende por declaración como TRIS = 0x00 o LATB = 0x00, Por qué 0x00 durante la programación de microcontrolador PIC en C.

    
pregunta Rajat

1 respuesta

2

No estoy seguro de qué es exactamente lo que crees que es extraño, pero cubriré mis dos ideas.

¿Por qué 0x00, por qué no 0?

0x00 es lo mismo que 0 . Se acaba de escribir en notación hexadecimal. La razón para hacerlo es que a menudo se inicializan los valores utilizando una notación hexadecimal, porque es relativamente fácil ver cada bit individual. Good old C no tenía la notación de 0b00000000 binario. Si escribe 0x00 en lugar de 0 , algunas tablas pueden parecer un poco más bonitas:

TRISA = 0x00;
TRISB = 0xC0;
TRISC = 0x01;

¿Por qué inicializar en absoluto?

Estos registros de hardware se inicializan a un estado específico, como se describe en el manual. Algunos se quedan sin cambios, o no definidos después de un reinicio.

Naturalmente, si quieres que tengan otro valor, debes escribirlo.

Incluso si ya se han inicializado a cero, es posible que desee ser explícito al respecto:

  • Ayuda a documentar tu código. No tiene que buscar los valores predeterminados, está justo ahí en su código. Alguien que no esté tan familiarizado con el procesador en particular no tiene que asumir nada.
  • Algunos registros se inicializan de forma diferente según el tipo de reinicio. Esto puede no ser deseado.
  • Es posible que desee realizar un "reinicio suave", saltando al inicio de su programa sin pasar por un reinicio de hardware. Los registros pueden quedar en un estado desconocido.
respondido por el pipe

Lea otras preguntas en las etiquetas