TODOPIC

Microcontroladores PIC => * PROYECTOS * => Mensaje iniciado por: carlos182 en 24 de Abril de 2009, 21:47:41

Título: Alarma de zona (para casa) necesito ayuda.
Publicado por: carlos182 en 24 de Abril de 2009, 21:47:41
Borrar post
Título: Re: Alarma de zona (para casa) necesito ayuda.
Publicado por: MLO__ en 24 de Abril de 2009, 22:08:11
Hola.

Para guardar los datos lo puedes hacer en la EEPROM del PIC y para el reloj podes usar un DS1302 o un DS1307. Lo de los sensores no es complicado son solo 1 o 0. Para conectar al puerto serial lo haces por medio de un MAX232.

Saludos
Título: Re: Alarma de zona (para casa) necesito ayuda.
Publicado por: darck_khronos en 24 de Abril de 2009, 22:14:29
podrias usar labview para hacer el monitoreo de ese pic usando el Rs232
Título: Re: Alarma de zona (para casa) necesito ayuda.
Publicado por: carlos182 en 24 de Abril de 2009, 22:29:39
Hola.

Para guardar los datos lo puedes hacer en la EEPROM del PIC y para el reloj podes usar un DS1302 o un DS1307. Lo de los sensores no es complicado son solo 1 o 0. Para conectar al puerto serial lo haces por medio de un MAX232.

Saludos

Bien, se puede accesar a la EEPROM mediante Basic? Digamos que necesito un contador que haga algo como:

Ciclo:
i = i + 1
0x(i) = ptob.1
goto Ciclo

Donde 0x(i) me imagino que es la dirección de memoría en la EEPROM. Pero como se hace en Basic para saber en qué dirección escribir ? (Encontre la información de los bancos y sé cuales direcciones tienen memoria para usarse).

Estaría bien hacer ese ciclo?

EDIT: Bueno me puse a investigar sobre la EEPROM, pero nadamás encontré ejemplos y explicación de lenguaje ASM.
Sé que mediante MicroCode puedo combinar los 2 tipos de archivo, pero tengo una duda.
¿Cómo sé si no estoy usando la misma memoria para distintas cosas?
Por ejemplo, en el codigo basic pongo:

x VAR BYTE
contador VAR BYTE

IF PORTB.0 = 0 THEN
       PORTA.0 = 0
       ELSE
       X = 1
ENDIF

PORTA.0 = X

Bien, ahí declaré una variable byte "x", pero como sé en qué dirección se almacena?
Que pasa si uso las direcciones

    ADDR_L equ 0x20
    DATA_L equ 0x21

en ensamblador, para almacenar los eventos?
No habrá algun problema ?