|
122
|
Informática / Electrónica / Re: Problema con Pogramador PIC Tipo ZIF
|
en: 18 Abril 2011, 16:16 pm
|
Es raro por que borrar me deja borrar el chip sin problemas,se enciende el LED rojo y pone,chip has been erased,vamos que a sido borrado,y cunao grabo se enciende tambien el LED rojo,pero me sale un mensaje diciendo "Received function not supported by this firmware version"
|
|
|
123
|
Informática / Electrónica / Problema con Pogramador PIC Tipo ZIF [SOLUCIONADO]
|
en: 18 Abril 2011, 15:51 pm
|
Hola que tal,se me rompio mi antiguo programador de PIC,hoy me llego el nuevo,es este de la imagen: viene con su programa,instala un driver como si uviese un Puerto COM 7,pero va por UBS,bueno lo detecta y tal pero cuano quiero grabar el programa echo en ASM con MPASM,me dice que la sinstrucciones no son soportadas por la version del firmware alguien tiene ese programmer y sabe usarlo o algo?¿ saludos
|
|
|
124
|
Informática / Electrónica / Re: Escribir/Leer EEPROM PIC16F84 (Asm)
|
en: 17 Abril 2011, 17:12 pm
|
Por cierto ahora ue dcies eso,se puede crear macros (o funciones) en ams para tenerlas echas ya?¿
una funcion que pida por ejemplo 2 parametros para realizar una suma,hay alguna forma?¿
asin haria la sfunciones al principio i me olbidaria de programarlas cada vez
saludos
|
|
|
125
|
Informática / Electrónica / Re: Escribir/Leer EEPROM PIC16F84 (Asm)
|
en: 17 Abril 2011, 16:00 pm
|
Gracias,me ayudas mucho la verdad aun que nos obliguen hacer el trabajo en ASM,me gusta mucho este lenguaje,hay cosas que cuestan mucho de entender,peor cunao lo consigues en verdad si lo sabes manejar no es tan dificl,y comprendes mejor como trabajan los lenguajes como Csabes quetocas exactamente del PIC,creo que eos es algo que solo ASM puede brindar,por eso me gusta tanto,aun que C es hiperpotente,esta en todos los lados hehe, saludos dese Bcn
|
|
|
126
|
Informática / Electrónica / Re: Escribir/Leer EEPROM PIC16F84 (Asm)
|
en: 17 Abril 2011, 14:09 pm
|
Hey gracias por tu paciencia,ara mirare esas instrucciones,se que en C seria mucho mejor aun que el programa ocupara mas,pero es que nos obligan sabes,e slo que nos toca ahora,mas adelante imagino que no,oye una pregunta curiosa,cres que morira el lenguaje ASM en el ambito de los PIC,apesar de que sea mas rapido y eso,hay empresas que programen en ASM?¿ saludos y gracias
|
|
|
127
|
Informática / Electrónica / Escribir/Leer EEPROM PIC16F84 (Asm)
|
en: 17 Abril 2011, 13:46 pm
|
Hola gente como estais?¿ llevo 2 dias intentando escribir en la EEPROM del PIC16F84,sigueindo el DataSheet del PIC,pero no consigo hacerlo,e echo un programa que guarda "0x01" en la EEPROM,despues lo lee y lo mete en un Registro,despues mediante condicional IF comprueba que si ese registro es igual a 0x01 prenda el LED ys i no pues finaliza el programa,pero no funciona aqui pongo el codigo aver si ven algun erro y pueden ayudarme list p=16f84 ; Pic a usar radix hex ; Sistema hexadecimal ;_____Asignacion de puertos_______ status equ 0x03 ; Direccion registro STATUS porta equ 0x05 ; direccion Pueros A trisa equ 0x85 ; Direccion TRISA portb equ 0x06 ; Direccion puertos B trisb equ 0x86 ; Direccion TRISB Registro1 equ 0x0C ; Registro 1 ;_____Memoria EEPROM______________ ;Direccion de los registros para trabajar con la EEPROM del 16f84 EEDATA equ 0x08 EEADR equ 0x09 EECON1 equ 0x88 EECON2 equ 0x89 ADDRES_W equ 0x10 ; Direccion en la que quiero escribir el dato Dat equ 0x01 ; Dato a guardar ;______Codigo_____________________ reset org 0x00 goto inicio org 0x05 inicio ;_____Configurar puertos__________ bsf status,5 ; Pasar al banco 1 movlw b'00000' movwf trisa ; Puerto A como salida clrw ; Limpiar registro W movlw b'11111111' movwf trisb ; Puerto B como entrada bcf status,5 ; Volver al banco 0 ;_____Esrcibe en la EEPROM________ bcf status,5 ; Me aseguro que este en el banco 0 movlw ADDRES_W ; Paso la direccion a W movwf EEADR ; y la paso al registro de la EEPROM EEADR movlw Dat ; Pongo en W el dato que quiero grabar movwf EEDATA ; y lo paso al registro de dato de la EEPROM bsf status,5 ; paso al banco 1 bsf EECON1,2 ; Pido permiso de escritura (BIT 2: WREN) ;____Proceso de seguridad_______ movlw 0x55 movwf EECON2 movlw 0xAA movwf EECON2 bsf EECON1,1 ; Ejecuto escritura!! no?¿?¿ :S (bit1: WR = WriteData) bcf status,5 ; Regreso al banco 0 ;_____ Lee EEPROM_________________ movlw ADDRES_W ; Direccion a leer movwf EEADR ; Se la paso al registro de direcciones de la EEPROM bsf status,0 ; Paso al banco 1 bsf EECON1,0 ; Activo READ DATA, (bit0) bcf status,0 ; Regreso de banco movf EEDATA,W ;guardo el valor leido en W (?¿) movwf Registro1 ;Lo paso al registro1 (no?¿) IF Registro1 == 0x01 bcf portb,0 ;Prende led por PINB0 else end Fin del programa
no me da ningun error pero no funciona (Como simulador uso Proteus 7) saludos
|
|
|
129
|
Informática / Electrónica / Re: Pasar 1 a PUERTO B Ensamblador
|
en: 15 Abril 2011, 22:46 pm
|
Okey,es verdad y sabia la existencia de esas dos funciones que bobo soy,hablando de esto del ASM,yo tambien programe en C,pero me pase al ASM,me cae mejor,parece una tonteria pero nose,me gusta mas aparate que e slo que nos enseñan,es que el profesor dice que con ASM puedes controlar la mas minima parte del PIC,y que si fuera para PC no valdira la pena,pero para Microcontroladores va muy bien,ya que son programas mas rapidos,y pequeños,y en el caso de los PIC hya que tener en cuenta el tamaño del programa etc etc etc,unos rollazos que nos pega xd en fin volvieno al tema,una ultima duda cuando yo ago: movf R1,PUERTOB eso pasa R1 a PuertoB el puertoB tiene 8 bits,el bit de R1 en que posicion de PORTB se pone? en el bit 1 o en el 2o en cual?¿
|
|
|
130
|
Informática / Electrónica / Re: Pasar 1 a PUERTO B Ensamblador
|
en: 15 Abril 2011, 19:19 pm
|
Oye,se me a ocurrido una cosa,la instruccion movf se usaria asin: movf PORTB,R1
mi pregunta es,el PORTB tiene 8 bits que son los 8 pines B del PIC,cuando ejecuto esa instruccion el valor de R1 en que bit se pone? en el 1 (RB0) supongo no?¿ si es asin,como poria rotar ese bit a la posicion qu yo quiero,osea moverlo a la izquierda para ponerlo en el pin que yo quiera?¿ aun que creo que en Atmel que es el que usas tu,los MOV son diferentes xd,son como el ensamblador del PC,tu cuando haces esto: MOV portb,b
pasas el contenido de "b" a porb verad?¿ en el del 16f84 es al reves: movf portb,b
alli es viceversa,portb pasa a "b" xd corrigeme si me equivoco pero es lo que me parece...xd saludos
|
|
|
|
|
|
|