4 votos

PIC16: ¿Cómo modifico las palabras de configuración?

Como yo lo entiendo, la configuración de las palabras son diferentes a la estándar de 8 bits de los registros. Son de 14 bits de ancho, y que sólo pueden ser consultadas en "modo de programación".

De la lectura de la hoja de datos no entiendo cómo ingresar al modo de programación y, a continuación, modifique la configuración de la palabra. Puedo modificar la programación de la palabra de mi código en C (por ejemplo, dentro de la main de la función), o debo de alguna manera instruir a mi programador (PICKIT 3) para hacer un poco de magia antes de la main función se alcanza?

44voto

simon Puntos 5346

Similar a uno pregunta no mucho antes. Ese hilo también puede proporcionar información relevante para usted:

¿Cómo establecer los bits de configuración para un 16F1829 PIC en MPLAB X?

4voto

jns Puntos 449

Esto tiene que ser hecho por el programador (técnicamente esto es lo que el PICKIT 3 es, no es un gestor de arranque).

Usted puede configurar la configuración de las palabras de MPLAB, o mediante la inserción de "#pragma config" declaraciones en el C código. Esto es preferible, como termina comprobado en el control de código fuente y que no se pierde.

http://www.kwantlen.ca/science/physics/engineering/APSC1299/files_for_lab/pragma_config.html

Usted no puede modificar la configuración de las palabras dentro de un PIC programa.

0voto

Clay Nichols Puntos 4252

Yo no entiendo muy bien cómo me estoy destinado a entrar en el modo de programación y, a continuación, modifique la configuración de la palabra? Puedo modificar la programación de la palabra de dios en mi código de C (por ejemplo, dentro de la función principal)?

La configuración de palabras se asignan en el programa de instrucción/memoria. Se asignan en una ubicación de la dirección, que no es accesible durante el funcionamiento normal del dispositivo (se puede acceder sólo durante el modo de programación). Estos bits de configuración especificar algunos de los modos del dispositivo, y son programados por un programador de dispositivos, o mediante el uso de la In-Circuit Serial Programming (ICSP) característica de la gama media de dispositivos. Por lo que debe establecer estos configuración de bits en el código, pero fuera de cualquier función, utilizando un compilador específico #pragma o macro.

Desde el XC8 Guía del Usuario:

La configuración de los bits de la línea de base y de gama media de dispositivos puede configurar con el __CONFIG macro que fue apoyado en HI-TECH C, por ejemplo:

#include <xc.h>
__CONFIG(WDTDIS & HS & UNPROTECT);

Para utilizar esta macro, asegúrese de incluir en su archivo de origen. Para los dispositivos que tienen más de una palabra de configuración, cada una de las siguientes invocación de __CONFIG() modificar la siguiente configuración de palabra en de la secuencia. Normalmente este aspecto:

#include <xc.h>
__CONFIG(WDTDIS & XT & UNPROTECT); // Program config. word 1
__CONFIG(FCMEN);

La forma más sencilla de configurar el dispositivo de la configuración de los bits es a través de MPLAB X. Instrucciones tomado de aquí:

  1. Desde el menú principal, seleccione Ventana ▶ PIC Memoria Vistas ▶ Configuración de Bits
  2. En la configuración de los bits de la ventana, haga clic en cualquier valor en la columna de Opción y se convertirá en un cuadro combinado que le permitirá seleccionar el valor que desea.
  3. Haga clic en Generar Código Fuente del botón de Salida
  4. El IDE genera automáticamente el código necesario para inicializar todos los bits de configuración a los valores especificados en la ventana. Este código puede ahora ser copiado y pegado en uno de los archivos de origen, o puede guardarlo en su propio archivo y agregarlo al proyecto. Para guardar el archivo, haga clic derecho en cualquier lugar en la ventana de salida y seleccione Guardar Como en el menú emergente.

Leer más:

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X