Haz una pregunta
  Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

05/03/2006 #1


contador con pic16f84
Hola: soy nuevo en la programacion de pics por lo que estoy buscando circuitos que contengan al pic16f84. En esta ocasion necesito el circuito y el programa de un contador de 0 a 999 con tres displays, ( que incluya un reset ) la entrada es con un sensor que entrega pulsos positivos.
Si alguien puede ayudarme se lo agradesco.
06/03/2006 #2


En esta ocasion necesito el circuito y el programa de un contador de 0 a 999 con tres displays
Otro!! que quiere que le hagan todo (te lo armamos tambien), yo cuando soy nuevo en algo (como muchos) estudio el problema empieso a trabajar en el y solo voy consultando sobre problemas que van apareciendo y no que me hagan el trabajo desde cero. :x

Ser nuevo en algo significa estudio,trabajo,pruebas y no haganme por pavor el trabajo.
08/03/2006 #3

Avatar de EinSoldiatGott

Antes que nada un Saludo

Aprovecho este tema del pic16f84 para evitar crear otro.

El motivo es que comienzo a penas a utilizar este pic, en realidad es un pic16f84a. Estoy comenzando con un programa sencillo, es el siguiente:

Código:
LIST		P=16F84A
RADIX		HEX


;*******************************		DEFINICIÓN DE VARIABLES

W			EQU			0
F			EQU			1
PUERTOA		EQU			0X05
PUERTOB		EQU			0X06

;*******************************		MAIN

ORG			0
GOTO		INICIO

ORG			5
INICIO
BSF			ESTADO,5
CLRF		PUERTOB
MOVLW		0XFF
MOVWF		PUERTOA
BCF			ESTADO,5


BUCLE
MOVF		PUERTOA,W
COMF		PUERTOA,W
MOVWF		PUERTOB
GOTO		BUCLE

END


Ya escrito, lo guardo como .asm y ahora trato de pasarlo a .Hex, e ahi el problema, en el mpasm elijo las opciones como en la siguiente imágen:



Pero al darle en Assemble me aparece este cuadro y no cra ningún .hex



Dudo que el código este mal escrito, a que se deben esos errores que me aparecen?????

Saludos y de antemano muchas gracias por su atención

EDIT************************
Esto es lo que me aparece en el archivo de error pero no le encuentro sentido

Warning[205] D:\DOCUMENTOS\PIC\INTERRUPLEDS.ASM 1 : Found directive in column 1. (LIST)
Warning[205] D:\DOCUMENTOS\PIC\INTERRUPLEDS.ASM 2 : Found directive in column 1. (RADIX)
Warning[205] D:\DOCUMENTOS\PIC\INTERRUPLEDS.ASM 14 : Found directive in column 1. (ORG)
Warning[203] D:\DOCUMENTOS\PIC\INTERRUPLEDS.ASM 15 : Found opcode in column 1. (GOTO)
Warning[205] D:\DOCUMENTOS\PIC\INTERRUPLEDS.ASM 17 : Found directive in column 1. (ORG)
Warning[203] D:\DOCUMENTOS\PIC\INTERRUPLEDS.ASM 19 : Found opcode in column 1. (BSF)
Error[113] D:\DOCUMENTOS\PIC\INTERRUPLEDS.ASM 19 : Symbol not previously defined (ESTADO)
Warning[203] D:\DOCUMENTOS\PIC\INTERRUPLEDS.ASM 20 : Found opcode in column 1. (CLRF)
Warning[203] D:\DOCUMENTOS\PIC\INTERRUPLEDS.ASM 21 : Found opcode in column 1. (MOVLW)
Warning[203] D:\DOCUMENTOS\PIC\INTERRUPLEDS.ASM 22 : Found opcode in column 1. (MOVWF)
Warning[203] D:\DOCUMENTOS\PIC\INTERRUPLEDS.ASM 23 : Found opcode in column 1. (BCF)
Error[113] D:\DOCUMENTOS\PIC\INTERRUPLEDS.ASM 23 : Symbol not previously defined (ESTADO)
Warning[203] D:\DOCUMENTOS\PIC\INTERRUPLEDS.ASM 27 : Found opcode in column 1. (MOVF)
Warning[203] D:\DOCUMENTOS\PIC\INTERRUPLEDS.ASM 28 : Found opcode in column 1. (COMF)
Warning[203] D:\DOCUMENTOS\PIC\INTERRUPLEDS.ASM 29 : Found opcode in column 1. (MOVWF)
Warning[203] D:\DOCUMENTOS\PIC\INTERRUPLEDS.ASM 30 : Found opcode in column 1. (GOTO)
Warning[205] D:\DOCUMENTOS\PIC\INTERRUPLEDS.ASM 32 : Found directive in column 1. (END)
08/03/2006 #4
Moderador general

Avatar de Andres Cuenca

Hola EinSoldiatGott, tu problema se debe a que no has declarado correctamente la cabecera, hazlo de esta forma:

Código:
list      p=16F84A            
#include <p16F84A.inc>

...
08/03/2006 #5

Avatar de EinSoldiatGott

Muchas Gracias pror la respuesta Compañero Li-ion, pero no me funcionó :(

Mi asm quedó así:

Código:
LIST		P=16F84A
#include	<p16f84A.inc>
RADIX		HEX

							;DEFINICIÓN DE VARIABLES
W		         EQU			0
F		         EQU			1
PUERTOA		EQU			0X05
PUERTOB		EQU			0X06
							;MAIN

ORG		         0
GOTO		         INICIO

ORG		         5

INICIO
BSF		        ESTADO,5
CLRF		        PUERTOB
MOVLW	        0XFF
MOVWF	        PUERTOA
BCF		        ESTADO,5


BUCLE
MOVF		       PUERTOA,W
COMF		       PUERTOA,W
MOVWF	       PUERTOB
GOTO	                BUCLE

END

Y el registro de errores es el siguiente:

La adjunté

Sospecho que es configuración de software, creo que estoy omitiendo algún paso o no???

Saludos y muchas gracias
Archivos Adjuntos
Tipo de Archivo: txt interrupleds_201.txt (6,3 KB (Kilobytes), 92 visitas)
08/03/2006 #6
Moderador general

Avatar de Andres Cuenca

EinSoldiatGott, se te paso por alto el hecho que no definiste el registro de estado:

ESTADO EQU 0X07

Prueba de esa forma.
08/03/2006 #7

Avatar de EinSoldiatGott

Siiiiiiiiiiiiii, JAJA, mucísimas gracias Mr. Li-ion, pero sospecho que se le escapó un detallilo de la dirección que debería ser 0x03.

Le estoy muy agradecido y cualquier cosa en la que humildemente pueda ayudarle me pongo a sus servicios.

Saludos desde México
08/03/2006 #8
Moderador general

Avatar de Andres Cuenca

No hay problema, estamos para ayudarnos!!

Saludos.
10/03/2006 #9

Avatar de EinSoldiatGott

Bueno pues ahora tengo otro problema relacionado con pics, resulta que me puse a aramar el programador JDM, segú yo esta todo bien armado, tuve que reemplazar los BC237 por BC319 pero no creo que sea el problema.

No comprendo el diagrama al 100%, pero entiendo que se estan utilizando los transistores como simples interruptores, así que dudo que la Beta sea algo importante. Las patillas las coloqué bien, no vi el datasheet del transistor por que se me hace más seguro probarlos en el multímetro.

Bueno la cosa es que abro el icprog y le doy que borre el PIC y no hay problema, que lo Lea y lo hace aunque el PIC esta en blanco es nuevo, pero me muestra puros 0000 y no aparecen errores, pero a la hora de decirle que lo programe, me bota un error de la dirección 0000h.

Con el multímetro verifiqué las tensiones y mientras no esta grabando de la MCLR a Vss hay 400mV y al darle cualquier instrcciones de leer programar o borrar la tensión cambia a 13.2v máximo, nunca alcanza los 14v. Es esto el motivo del error??? Y de ser así como puedo aumentar el voltaje???

Saludos y gracias de antemano
Imágenes Adjuntas
Tipo de Archivo: gif esquema01_small_724.gif (8,0 KB (Kilobytes), 3481 visitas)
Tipo de Archivo: jpg erros_direcci_n_000h_859.jpg (122,5 KB (Kilobytes), 1099 visitas)
10/03/2006 #10
Moderador general

Avatar de Andres Cuenca

Hola EinSoldiatGott, de casualidad ya te leiste este tema:

http://www.forosdeelectronica.com/about281.htm
11/03/2006 #11

Avatar de EinSoldiatGott

Li-ion dijo:
Hola EinSoldiatGott, de casualidad ya te leiste este tema:

http://www.forosdeelectronica.com/about281.htm
No compañero ese no lo había visto, habia leido otros pero este es diferente, por ejemplo en lo otros decía que activara PWRT, en comunicacion nada, y hay diferencias lo voy a probar ahora y espero que por fin funcione

Saludos y muchas gracias pro la respuesta y por el tutorial que se tomo la molestia de hacer.

**************
EDIT

Pues ya le hice todo lo que usted sugiere.
Baje la Velocidad del Puerto
Invertí Vcc
Desactivé PWRT
Intenté on oscilador Xt y RC

Dudo que sea el cableel problema mide alrrededor de metro y medio y no creo que sea eso ya que con el voltímetro comprobe que si hay las tensiones necesarias.

Creo que lo mejor será comprar todo el mterial y rearmarlo :( es que ya lo chequé y puedo asegurar que todo esta perfecto.

Saludos y gracias
14/04/2009 #12


Años después... pregunto, T1 está bien conectado?

EDITO. No he dicho nada, me confundí. Al final te funcionó?

Un saludo
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.