Les paso el algoritmo para que introduzcan el programa a la memoria FLASH de un AVR AT90S1200.
Sólo considérenlo como una introducción porque no lo puse a prueba.
Para la programación SERIAL de la FLASH del AT90S1200:
1. Aplicar alimentación a Vcc y GND mientras RESET y SCK están a GND. Si no se puede asegurar que SCK=0 durante la alimentación, dar un PULSO en RESET y SCK=0.
2. Esperar al menos 20ms.
3. Habilitar programación (códigos que están abajo)
4. Introducir comandos (códigos)
5. Poner RESET=1 para iniciar una operación normal
* NOTA: Si se borra el chip, esperar un tiempo de 8ms a 18ms, dar un pulso positivo en RESET e iniciar desde el punto 2.
Los códigos a mandar serialmente se conforman de 4 bytes:
Habilita Programación
10101100 01010011 XXXXXXXX XXXXXXXX
Borra integrado
10101100 100XXXXX XXXXXXXX XXXXXXXX
Escribir programa
0100H000 0000000a bbbbbbbb iiiiiiii
Donde:
H=1 Palabra alta H=0 Palabra Baja
abbbbbbbb= Dirección hexadecimal de la localidad en memoria FLASH
iiiiiiii= dato(alto o bajo) a grabar en localidad FLASH
Escribir EEPROM
11000000 00000000 00bbbbbb iiiiiiii
Donde:
bbbbbb=localidad eeprom
iiiiiiii= dato a grabar en localidad
Sobre la conexión de MISO, MOSI y CLK no les pudo dar información, pero espero que a alguien les sean útiles estos códigos.
Toda la información sobre la programación SERIAL o PARALELA de este AVR la pueden encontrar en su hoja de características.