TODOPIC
Microcontroladores PIC => Todo en microcontroladores PIC => Mensaje iniciado por: radioelf en 22 de Diciembre de 2006, 12:47:45
-
Hola, quiero poder programar un pic remotamente y me hace falta conocer el formato con el que se genera el HEX para la configuración de los fuses, el formato del HEX para el código del programa ya lo encontré en MPASM/MPLINK User's Guide, pero no tengo claro lo de los fuses, si miro el código veo que la penúltima linea hay el valor de la configuración de los fuses , en mi caso es 3F32, la posición de memoria donde se tendría que escribir es la 2007 (16F876A) y es en este dato que no lo veo claro, os comento paso a paso lo que yo interpreto:
:02400E00323F3F
:->inicio
02->Numero de bytes de la linea
400E->dirección en donde seran grabados
00->tipo de linea
323F->dato a configurar
3F->cheksum
Lo que no entiendo es si la direción es 2007 porque aparece 400E?
:100D10008A2E9D2E38208C1E872E1A088C12D60003
:100D20001930C000C00B952E9D2E38208C1E922E9F
:100D30001A088C12D700C5155F201A081A08181255
:100D40008C12181644088300420843088A000900E0
:02400E00323F3F
:00000001FF
-
La explicación es la siguiente.
Los pics tienen memoria de programa de 14bits , es decir que cada dato en memoria de programa ocupa 2 bytes.
Que tenga la ubicación 0x2007 en formato de 14 bits, equivale a que es el byte 0x400E.
Espero se haya entendido.
-
Hola e nuevo, entieno que 0x2007 es 10000000000111 pero no tendria que ser 00100000 00000111 en dos Bytes-> 0x20 0x07?
-
es que es lo mismo
0010000000000111
10000000000111
400E->dirección en donde seran grabados ,, esta direccion puede ir de 0x0000 a 0xFFFF
Microchip indica la dirección 0x2007 como direccion de programa en words , pero en el hex viene direccionado en bytes .
2007 * 2 = 400E
-
OK ahora si que lo entendí, Gracias :-/