Estoy simplificando un poco aquí, pero su microcontrolador tiene mucha memoria volátil dentro. Tiene RAM, registros de CPU, SFR, etc. También tiene otros circuitos lógicos que tienen algún tipo de ‘memoria’ en su interior. Pero las celdas de memoria volátiles están destinadas a mantener un valor previamente establecido siempre que tengan poder. Cuando se desconecta la alimentación y luego se vuelve a conectar, no puede predecir qué valores pueden tener estas celdas. Algunos de ellos pueden mantener sus valores previamente establecidos, algunos de ellos pueden haber perdido sus valores anteriores.
Por esta razón, todos los microcontroladores tienen un pin de reinicio, que cuando se activa, restablece todas las celdas de memoria interna a sus estados iniciales válidos. Por ejemplo, establece todos los registros de la CPU en 0 y el contador del programa al inicio de la memoria flash. Y las placas que usan microcontroladores tendrán un circuito POR (reinicio de encendido) que, al encenderse, activa el pin de reinicio durante un tiempo suficientemente largo para garantizar que se haya realizado un reinicio. Una vez que esto sucede, el microcontrolador comenzará a extraer instrucciones una por una. Si un circuito POR no está presente o no funciona correctamente, es posible que deba reiniciarlo manualmente para que se inicie la ejecución del programa.
- ¿Cuál es el alcance de VLSI y los sistemas integrados?
- ¿Cuál es el siguiente paso para una persona que está interesada en los sistemas embebidos después de trabajar en placas ATmega, MSP430 o Arduino y construyó pocos proyectos de hardware decentes? ¿Qué hay de trabajar en Linux embebido?
- ¿Los dispositivos militares usan los mismos microcontroladores que nosotros estamos usando, como los microcontroladores AVR, PIC y ARM?
- Cómo comenzar a programar en C para sistemas embebidos
- ¿Cuál es la hoja de ruta para convertirse en un desarrollador de productos integrados? ¿Es AVR ATmega32 un buen comienzo y cuál es el siguiente paso?