Búsqueda personalizada
Regístrate gratis para participar de los foros, o si ya estás registrado haz login.
| comentario del autor | Mar May 26, 2009 1:43 am | |
|
|
||
| asistió a la solución | Mar May 26, 2009 7:45 am | |
|
Un gran salto.- 1)-Errores comunes son los relacionados a la parte de la oscilacion ya el el 18f trae pll .- 2)-Registro LATx (Latch).- Y obviamente un monton mas pero bueno en fin, lo mas logico es que nos cuentes especificamente donde radica tu problema asi lo solucionamos.- Subi si queres el codigo que estas usando y lo miramos.- Saludos.- |
||
| comentario del autor | Mar May 26, 2009 11:21 am | |
|
;PIC 18F2450 ADCON1 EQU 0XFC1 CMCON EQU 0XFB4 PC EQU 0xFF9 STATUS EQU 0xFD8 TRISA EQU 0xF92 TRISB EQU 0xF93 PORTA EQU 0xF80 PORTB EQU 0xF81 DEL EQU 0x10 NUEVO1 EQU 0x11 NUEVO2 EQU 0x12 NUEVO3 EQU 0x13 ANILLO EQU 0x14 CINCO EQU 0x15 ONCE EQU 0x16 ROT EQU 0x17 MEDI EQU 0x18 VER1 EQU 0x19 VER2 EQU 0x1A OPER EQU 0x1B ASCII EQU 0x1C RETT EQU 0x1D REG2 EQU 0x1E REG3 EQU 0x1F ;************************************************************** ; Inicio del programa ;************************************************************** ORG 0X000 GOTO INICIO INICIO MOVLW 0X0F ;SE DESACTIVA LA FUNCION DE ENTRADA ANALOGICA MOVWF ADCON1 ; PARA TODAS LAS LINEAS MOVLW 07H ;SE DESACTIVA LA FUNCION DE ENTRADA DE COMPARADOR MOVWF CMCON ; DE RA0 A RA3 MOVLW 0XC0 ;SE CONFIGURAN RA0 A RA5 COMO SALIDAS MOVWF TRISA CLRF PORTA ;SE INICIALIZAN LOS PINES EN CERO CLRF TRISB ;SE CONFIGURAN COMO SALIDAS TODOS LOS RB CLRF PORTB ;SE INICIALIZAN LOS PINES EN CERO MOVLW 0x38 ;INSTRUCCIONES 2 LINEAS EN EL LCD 111000 CALL CONTROL ;COLOCA EL DATO EN EL BUS DEL LCD MOVLW 0x06 ;110 MENSAJE FIJO EL CURSOR SE DESPLAZA A LA DERECHA CALL CONTROL ;COLOCA EL DATO EN EL BUS DEL LCD MOVLW 0x0C ;1100 ENCIENDE EL DISPLAY Y APAGA EL CURSOR CALL CONTROL ;COLOCA EL DATO EN EL BUS DEL LCD MOVLW 0x01 ;BORRA EL DISPLAY Y CLOCA EL CURSOR EN 1,1 CALL CONTROL ;COLOCA EL DATO EN EL BUS DEL LCD GOTO INI1_1 ;SALTA A LINE1_1CIALIZACION DEL DISPLAY RETA1_1RDO MOVLW 0xFF ;AJUSTE DE TIEMPOS MOVWF DEL DECRE DECFSZ DEL,1 GOTO DECRE RETLW 0x00 CONTROL BCF PORTA,0 GOTO DATO2 DATO BSF PORTA,0 ;RS=1 ESTA RUTINA GENERA DATO2 BSF PORTA,1 ;E=1 LAS SEÑALES DE CONTROL MOVWF PORTB ;Y ENVIA EL DATO AL CALL RETA1_1RDO ;MODULO CON INTERFACE BCF PORTA,1 ;A 0CH0 BITS CALL RETA1_1RDO RETLW 0x00 ORG 0X300 LINE1_1 ADDWF PC,1 ;LINEA1 MENSAJE1: PROG:1 120°C 120MIN. RETLW "P" RETLW "R" RETLW "O" RETLW "G" RETLW ":" RETLW "1" RETLW " " RETLW "1" RETLW "2" RETLW "0" RETLW "°" RETLW "C" RETLW " " RETLW "1" RETLW "3" RETLW "0" RETLW "m" RETLW "i" RETLW "n" RETLW 0X00 GOTO FIN LINE2_1 ADDWF PC,1 ;LINEA2 MENSAJE1: T.REST: 120MIN. RETLW "T" RETLW "." RETLW "R" RETLW "E" RETLW "S" RETLW "T" RETLW ":" RETLW " " RETLW "1" RETLW "3" RETLW "0" RETLW "m" RETLW "i" RETLW "n" RETLW 0X00 GOTO FIN INI1_1 MOVLW 0X80 CALL CONTROL MOVLW 0x00 ;REGISTRO DE TABLE MOVWF ASCII ;AL MODULO ; CICLO1_1 MOVF ASCII,0 ;HACE BARRIDO DE LA TABLA LINE1_1 CALL LINE1_1 CALL DATO MOVLW 0x9F ;RETARDO ENTRE CARACTERES MOVWF RETT RETA1_1 DECFSZ RETT,1 GOTO RETA1_1 INCF ASCII,1 ;INCREMENTA EL REGISTRO ASCII EN UNO Y SIGUE CON EL SIGUIENTE CARACTER MOVLW 0x13 ;FIN DE TABLA XORWF ASCII,0 ;PREGUNTA SI YA TERMINO BTFSS STATUS,2 ;EL MENSAJE PARA SEGUIR GOTO CICLO1_1 ;CON LA OTRA PARTE DEL ; INI2_1 MOVLW 0XC0 CALL CONTROL MOVLW 0x00 ;REGISTRO DE TABLE MOVWF ASCII ;AL MODULO CICLO2_1 MOVF ASCII,0 ;HACE BARRIDO DE LA TABLA LINE1_1 CAMB2_1 CALL LINE2_1 CALL DATO MOVLW 0x9F ;RETA1_1RDO ENTRE CARACTERES MOVWF RETT RETA2_1 DECFSZ RETT,1 GOTO RETA2_1 INCF ASCII,1 ;INCREMENTA EL REGISTRO ASCII EN UNO Y SIGUE CON EL SIGUIENTE CARACTER MOVLW 0x0E ;FIN DE TABLA XORWF ASCII,0 ;PREGUNTA SI YA TERMINO BTFSS STATUS,2 ;EL MENSAJE PARA SEGUIR GOTO CICLO2_1 ;CON LA OTRA PARTE DEL FIN GOTO FIN END |
||
| comentario del autor | Mar May 26, 2009 11:41 am | |
|
|
||
| sin valorar | Mar May 26, 2009 12:57 pm | |
|
1)-Lo de los cuadraditos si te aparecen puede ser por el ajuste del contraste del lcd. 2)-simule tu prog y funciona el unico detalle es que manda 2 veces la misma letra
http://img29.imageshack.us/img29/6315/lcdtest.jpg Ahora lo veo bien y me fijo.- Otra cosa decime a que frec lo usas, y a que lo probe a 4Mhz.- Saludos.- |
||
| sin valorar | Mar May 26, 2009 2:07 pm | |
|
Despues de mirar el codigo encontre error en las llamada a las tablas y ademas luego de leer la primera tabla saltaba al fin del programa, por eso no mostraba la segunda linea.-
http://img5.imageshack.us/img5/237/lcdtest2o.jpg Te adjunto el programa modificado para que lo compares con el original.- Suerte y saludos.- lcd_test.rar (154.39 kb) - Asm, Hex y proyecto en Mplab Ide.- |
||
| comentario del autor | Mar May 26, 2009 3:04 pm | |
|
el pic esta conectado: mclr con resist de 1k a vcc y el reloj, con un crestal de 4mhz y dos capacitores de 22pf a masa entre osc1 y osc2 en el adjunto te envio la pantalla impresa de la configuración. gracias. CONFIG_SETUP1.doc (136 kb) - |
||
| asistió a la solución | Mar May 26, 2009 3:31 pm | |
|
Saludos.- |
||
| comentario del autor | Mar May 26, 2009 3:42 pm | |
|
el pic esta conectado: mclr con resist de 1k a vcc y el reloj, con un crestal de 4mhz y dos capacitores de 22pf a masa entre osc1 y osc2 en el adjunto te envio la pantalla impresa de la configuración. gracias. CONFIG_SETUP1.doc (136 kb) - |
||
| comentario del autor | Mar May 26, 2009 10:54 pm | |
|
No entiendo a que se refiere el XT+PLL, la otra opción es XT=USB-XT, de todas maneras no fnciona con ninguna de las dos. Habre quemado el PIC? y es eso lo que jode? Una vez que alimento el pic, mido las salidas RB y están todas a 5V, RA0 5V, el resto de las RA 2,5V y las RC 1,5V, esto no es rarísimo? |
||