¿Cómo se usa el puntero en la programación integrada?

Digamos que tiene un byte o dos de datos para almacenar que desea poner a disposición incluso después de que el dispositivo se apaga y se vuelve a encender. En ese caso, a menos que tenga acceso a NVRAM de algún tipo, debería escribir en flash / eeprom interno. Pero no puede simplemente inicializar una variable para acceder a ella (leer o escribir). Necesita la ubicación para ser reparado. Por lo tanto, lo almacena en la ubicación 0x3F3 y accede a él desde la misma ubicación. Inicializa un puntero “apuntando” a esta ubicación en particular y lo usa en su código.

// La sintaxis puede ser incorrecta, pero concéntrate en la idea.
#define MYFIXEDLOCATION (* ((corto volátil sin signo) 0x3F3))
int foo = 9;
int prevData = MYFIXEDLOCATION;
MYFIXEDLOCATION = foo;

// Esto lee primero los datos ya almacenados en 0x3F3 en prevData y escribe el valor de foo en la ubicación 0x3F3

Espero que esto aclare.

Los punteros también se pueden usar para pasar los argumentos como referencia, digamos que accedo a la salida de un sensor (sensor de temperatura) en una variable que cambia dinámicamente. Cuando paso esto a una función como valor, no obtendré el valor actual, solo obtendré el valor cuando copie el valor en la variable. Si paso esto como referencia usando el puntero, puedo acceder a la salida del sensor en cualquier caso, que también será el valor actual. De esta manera se pueden utilizar punteros.
Por favor, corríjame si estoy equivocado.

Los punteros son direcciones que apuntan a datos o estructuras de datos en la memoria.
Si cambia el puntero, los datos parecen cambiar.
Puede pasar datos a subrutinas con un puntero o por valor.

Los punteros para la programación integrada y para la programación en general son los mismos (suponiendo que el lenguaje de programación sea el mismo).
La Universidad de Stanford tiene algunas GRANDES clases de programación en iTunesU. Los recomiendo mucho. Los punteros se explican temprano y luego se expanden en profundidad. Muchos otros libros cubren este tema.

Puntero como el nombre dice “puntos”. Centrarse en una implementación típica es un poco difícil como una respuesta de Quora.

Imagine que conoce a una nueva persona con la que se hace amigo. Ahora si te pregunta tu dirección

  1. ¿Construyes tu casa frente a él?
  2. ¿Señalas una dirección de tu casa?

El concepto es así de simple.

Los punteros se utilizan para disminuir la carga sobre la memoria. No necesita replicar los datos una y otra vez, pero use una dirección que “apunte” a la ubicación de los datos.

Este concepto se usa en todas partes. Donde hay datos y programación, los punteros jugarán un papel bueno. Desafortunadamente, esto es omitido por muchos mientras estudian.

More Interesting

¿Cuáles son algunos proyectos de sistemas integrados basados ​​en sensores que se pueden implementar en la vida real?

¿Cuál es la mejor manera de comenzar con los microcontroladores de Texas?

¿Cómo se programa un microcontrolador?

Cómo usar un temporizador de microcontrolador 8051 para calcular el tiempo entre dos eventos configurando SFR con ejemplo

¿Por qué se da mayor importancia a los proyectos en FPGA?

¿Decidí mi proyecto b.tech como domótica basada en labview usando la placa arduino? ¿Qué piensa usted al respecto? ¿Qué parámetros se pueden considerar en este proyecto?

¿Qué instrucciones están escritas para los conductores y en qué idioma están programadas?

¿Alguien puede ayudarme a encontrar la dirección de Pc0-Pc5? La hoja de datos: http://www.pmt-fl.com/downloads/picocap/DB_PCap01Ax_0301_en.pdf

¿Cuál es la diferencia entre el diseño de sistemas integrados y la tecnología integrada de IoT?

¿Es el BeagleBone una buena plataforma para aprender Embedded C?

Mirando el SOC de los microprocesadores y microcontroladores, creo que no hay diferencia entre los dos, ya que ambos pueden reemplazarse entre sí. ¿Es correcto este entendimiento?

¿Qué perfil de trabajo es adecuado para un ingeniero integrado sin codificación?

¿Cuál es la razón detrás del microcontrolador 8051 no está ejecutando el código hasta que lo reinicie manualmente?

¿Qué carrera es mejor para comenzar, incrustado o desarrollador Java?

¿Cuáles son las oportunidades de carrera en sistemas embebidos?