Manual en Español BlackcatUSB
Manual en Español BlackcatUSB
Manual en Español BlackcatUSB
A: Introduccin
B: Requisitos de software
C: Lista de dispositivos flash compatibles
D: Instalacin del controlador
E: Disposicin del hardware
F: Utilizar el modo bootloader para cambiar AVR Firmware
G: Uso del modo JTAG para la programacin en Flash
H: Uso del modo SPI para la programacin en Flash
I: Uso del modo NAND para el programador Flash
J: Utilizar el modo SPI para programar placas base MSI
K: Utilizacin del modo SPI para programar I2C EEPROM
L: Utilizar el smbolo del sistema / modo de consola
M: Primeros pasos con el motor de secuencias de comandos
N: Sintaxis bsica
O: Tipos de datos
P: Variables
Q: Eventos / Funciones
R: Declaraciones condicionales
S: bucles / iteraciones
T: Funcin de ejecucin automtica
U: Lista de comandos de consola o secuencia de comandos
V: Comandos de E / S de archivos
W: Comandos de memoria
X: Comandos GUI
Y: Comandos especficos de JTAG
Z: Comandos especficos SPI
ZZ: Comandos varios
REQUISITOS DE SOFTWARE
Un ordenador con al menos un procesador de 1 GHz y 256 MB de memoria disponible y un puerto
USB
1.1 / 2.0. USB 3.0 es compatible con el firmware JTAG / SPI / NAND, pero no con el
cargador de arranque del dispositivo suministrado por el fabricante . Esto significa que puede que
necesite cambiar el firmware del AVR utilizando un
puerto USB 2.0 nativo .
Sistemas operativos compatibles: Windows XP, Windows Vista, Windows 7, 8, 8.1 y 10.
Soporta entornos de 32 bits y 64 bits.
Microsoft .NET Framework 4.0:
Descargar: http://www.microsoft.com/download/en/details.aspx?id=17851
Esta es slo una lista parcial de los dispositivos que son compatibles, ya que el modo CFI puede
configurar automticamente a cualquier dispositivo que se detecta, y en el modo SPI el usuario
puede auto-configurar el
dispositivo necesario para ser programado.
CFI verificado dispositivos de flash compatibles:
Spansion S29GL256M AMD 29LV320DT Intel TE28F320C3T
Spansion S29GL128M AMD 29LV320MB Intel TE28F320C3B
Spansion S29GL064M AMD 29LV320MT Intel TE28F640C3T
Spansion S29GL064M AMD 29LV400BB Intel TE28F640C3B
Spansion S29GL032M AMD 29LV800BB Intel 28F320J5
Spansion S70GL02G ATMEL AT49BV / LV16X Intel 28F640J5
Spansion S29GL01G ATMEL AT49BV / LV16XT Intel 28F320J3
Spansion S29GL512 HYHYNIX HY29F400TT Intel 28F640J3
Spansion S29GL256 HYHYNIX HY29LV1600T Intel 28F128J3
Spansion S29GL128 Intel 28F160B3 Samsung K8D1716UB
AMD 28F400BT Intel 28F160B3 Samsung K8D1716UT
AMD 29DL322GB Intel 28F800B3 Samsung K8D3216UB
AMD 29DL322GT Intel 28F320B3 Samsung K8D3216UT
AMD 29DL323GB Intel 28F320B3 ST M28W160CB
AMD 29DL323GT Intel 28F640B3 ST M29D323DB
AMD 29DL324GB Intel 28F640B3 FUJITSU 29DL323GB
AMD 29DL324GT Intel TE28F800C3T FUJITSU 29DL323TE
AMD Intel 29LV160DB TE28F800C3B FUJITSU 29LV160B
AMD Intel 29LV160DT TE28F160C3T FUJITSU 29LV160T
AMD Intel 29LV320DB TE28F160C3B FUJITSU 29LV320BE
Micron 28F160C34B MXIC 25FL0165A FUJITSU 29LV320TE
Micron 28F160C34T MXIC 29LV800T FUJITSU 29LV800B
Micron 28F322P3 MXIC 29LV800B TOSHIBA TC58FVT160B
SHARP 28F320BJE MXIC 29LV161B TOSHIBA TC58FVB321
SHARP LH28F160BJHG MXIC 29LV161T TOSHIBA TC58FVT160
SHARP 28F160S3 MXIC 29LV320B TOSHIBA TC58FVT321
SHARP 28F320S3 MXIC 29LV320T SST 39VF1600
ST MT28W320 MXIC 29LV800BMC SST 39VF1601
ST 29W320DB ST M58LW064D SST 39VF3201
ST 29W320DT ST M29W800AB SST 39VF800
ST M29W160EB ST M29W160ET
Si el flash no est en la lista anterior, pngase en contacto con nosotros por correo electrnico a
: [email protected] .
Podemos agregar casi cualquier dispositivo de destello a peticin. Lo hacemos frecuentemente
para muchas empresas e individuos.
FlashcatUSB se entrega con el firmware ms reciente de SPI instalado. Esto significa que fuera del
embalaje,
puede utilizar el dispositivo para leer y escribir en cualquier dispositivo SPI. Sin embargo, si
desea utilizar un
protocolo diferente , como el modo JTAG o NAND, debe cambiar el firmware en el propio
dispositivo. Puede
cambiar el firmware del dispositivo por USB usando el modo de cargador de arranque
incorporado.
Cuando en el modo bootloader (tambin conocido como modo DFU), el software FlashcatUSB le
permitir
reprogramar el dispositivo utilizando cualquier archivo HEX compatible con Atmel AVR. En este
paquete de software, incluimos
firmware SPI, firmware JTAG y archivos de firmware NAND ubicados en la carpeta "Firmware" del
software.
Para poner el dispositivo en modo Bootloader, simplemente coloque el interruptor # 2 de ON a
OFF. Como se muestra
en el siguiente diagrama:
cargador de arranque
Con el hardware en el modo de cargador de arranque, cada vez que se restablece el dispositivo
(pulsando el botn RESET),
FlashcatUSB se iniciar en el modo cargador de arranque. Con el software en ejecucin, la
pantalla principal mostrar ahora
que el dispositivo est en el modo bootloader ("Actualizacin del Firmware del Dispositivo") y que
est listo para ser
reprogramado con el firmware del AVR.
Para cambiar el firmware del AVR, haga clic en "Cargar archivo", seleccione el archivo HEX del
firmware, haga clic en "Programa" y, una vez
completado, haga clic en el botn "Iniciar aplicacin". Despus de haber cambiado correctamente
el firmware,
Recomendamos que establezca el interruptor # 2 en ON, para evitar que el dispositivo se reinicie
en el modo DFU.
Con la versin "JTAG" del firmware del AVR instalada, puede utilizar FlashcatUSB para
interactuar
con un procesador SoC (system-on-a-chip) sobre JTAG. Esto permite que el software se
integre y se comunique directamente con dispositivos de memoria conectados, normalmente
memoria (en
forma de DRAM) y almacenamiento en la forma de memoria Flash no voltil.
Tenga en cuenta que los pinouts para JTAG se han cambiado en PCB versin 2.x. Esto se debe a
que
el pin superior derecho es ahora una lnea VCC dedicada y, por tanto, no se puede utilizar para
un
pin general de E / S como en versiones anteriores. Si tiene una versin anterior de PCB, el pinout
heredado es:
Con el firmware "SPI" instalado, puede utilizar el dispositivo como programador de alta velocidad
para
prcticamente todas las memorias Flash compatibles con SPI.
La imagen de arriba muestra las salidas de pin del puerto de E / S de 10 pines y cmo debe estar
conectado al bus SPI del dispositivo de destino. A diferencia del modo JTAG, puede utilizar el
pin VCC para alimentar el dispositivo de destino. Debe tomar nota de la potencia externa que
necesita el chip
y asegurarse de que tiene el voltaje seleccionado en la tarjeta FlashcatUSB. La mayora de los
chips SPI
usan el ajuste de 3.3v.
* Nota: las clavijas (RST) y (PROG) slo se utilizan cuando se conecta a MCU con flash
incorporado, como el
dispositivo Nordic nRF24LE1.
El diagrama anterior es cmo debe conectar el puerto de 10 pines a un paquete SOIC-16 tpico
De un dispositivo Flash compatible con SPI.
El diagrama anterior es cmo debe conectar el puerto de 10 pines a un
paquete SOIC-8 y DIP-8 tpico de un dispositivo Flash compatible con SPI.
Opcionalmente, tambin puede adquirir tomas de insercin y clips en circuito para los
paquetes de chips SPI ms comunes . Embedded Computers lleva muchos de estos en stock.
Cuando se inicia FlashcatUSB con el dispositivo SPI conectado, el software debe
detectar automticamente el chip y cargar su configuracin en consecuencia. Si se detecta el
chip, pero no lo
admite el software, puede utilizar la pestaa SPI Settings para especificar manualmente todas
las configuraciones con los valores de la hoja de datos del chip.
FlashcatUSB se puede utilizar para programar la memoria del BIOS de muchas diversas placas
madre de
una variedad de fabricantes. Algunos pueden requerir un clip SOIC, mientras que otros, como MSI,
tienen un
encabezado de pin a bordo.
Primero localice el encabezado de clavija IDC en la placa base etiquetada JSPI1. Tenga en cuenta
que esta pinheader
se omite a menudo en el manual, por lo que tendr que encontrarlo fsicamente en la pizarra.
Observe que el GND est conectado a 2 pins en JSPI1, pin 7 y pin 8. VCC est conectado al
pin 1 y al pin 2. El pin 9 (el pin izquierdo superior) no est conectado a nada.
Para programar un dispositivo EEPROM compatible con I2C o TWI, FlashcatUSB debe cargarse con
el
firmware AVR 4.01 o posterior. Tenga en cuenta que esta funcin slo est disponible en PCB 2.x
y no
funcionar con placas PCB 1.x anteriores.
La conexin de cableado slo utiliza 4 pines del puerto FlashcatUSB I / O. Cuando se conecta a
un dispositivo EEPROM, las lneas SDA y SCL tambin deben tener una resistencia que se conecte a
VCC.
Recomendamos usar valores de 4.7K, aunque cualquier resistencia de 4K a 10K debe ser
adecuada. Si
est utilizando el adaptador SPI DIP (revisin 2), no necesita resistencias, ya que el adaptador
ya las contiene.
FlashcatUSB.exe -help
Lea todos los datos de la memoria flash y gurdelo en flash.bin (en el mismo directorio
en el que est FlashcatUSB.exe).
Tambin se puede usar FlashcatUSB mltiple en una sola mquina. Primero ejecute el comando:
FlashcatUSB.exe -listpaths
Esto mostrar una ventana similar a sta: En este ejemplo, un dispositivo FlashcatUSB est
conectado a USB \ VID_16C0 & PID_05DE \ 6 & 2A68B436 & 0 & 4 Ahora puede especificar que en
la lnea de comandos usando el parmetro -PATH, Como: FlashcatUSB.exe -read -file out.bin -
path "USB \ VID_16C0 & PID_05DE \ 6 & 2A68B436 & 0 & 4" Nota: use comillas para encapsular la
cadena de ruta de acceso.
Un archivo de script es slo un documento de texto sin formato. Puede abrir y editar uno
mediante el Bloc de notas. El
contenido de un archivo de script se compone de comandos, etiquetas, eventos y condition /
loops. Cuando
se ejecuta un archivo de script, se ejecutar cualquier lnea que no est en un bloque de
eventos. El propsito de una
secuencia de comandos es realizar operaciones ms complejas que de otra manera no se pueden
realizar utilizando
la GUI estndar. Los archivos de secuencias de comandos tambin son ideales para entornos de
produccin.
Sintaxis bsica Variables de
datos
Variables
Eventos / Funciones
Declaraciones condicionales (IF ... ELSE ... ENDIF)
Loops / iteraciones (FOR ... ENDFOR) AUTORUN
Funcin
Sintaxis bsica
Las secuencias de comandos FlashcatUSB utilizan una sintaxis muy familiar, de estilo VB. Cada
lnea contiene una instruccin que
puede ser un comando a ejecutar, una condicin (IF, etc.), una instruccin de control de flujo o
el inicio de un
evento (una funcin o subprocedimiento). Para poner comentarios en el archivo de script
(declaraciones que
no tienen ningn efecto), utilice el smbolo #. Los caracteres que procedan no sern evaluados
por el
motor de secuencias de comandos.
Las declaraciones bsicas de control de flujo son: LABEL, GOTO, EXIT, RETURN.
Var1 = 10
GOTO SKIP_MINVAL
Var1 = Var1 - 5
SKIP_MINVAL:
msgbox (Var1) # Var1 = 10 A
medida que el script se ejecuta, cuando alcanza la palabra clave GOTO, el motor buscar
el documento (hacia delante y hacia atrs), para Una etiqueta que contiene el nombre
"SKIP_MINVAL".
Una vez encontrado, la ejecucin comenzar all. Debido a que el motor de secuencias de
comandos buscar en ambos sentidos, tambin
puede usar palabras clave GOTO para crear bucles.
La palabra clave EXIT se puede utilizar para salir de un evento o funcin, o para salir de un
segmento de condicin (por ejemplo, IF o bloque FOR). El uso de la sintaxis es EXIT o EXIT
<Event> o EXIT
GUIN. Si ejecuta script de salida, independientemente del evento en el que se encuentre, el
script completo dejar de
ejecutarse. Por ejemplo:
Tipos de datos
Existen 4 tipos de datos principales con los que puede trabajar. Estos son:
Bool - es un valor de TRUE o FALSE
String - es un valor de caracteres legibles en ASCII, especificado mediante comillas.
Entero- es un nmero de 32 bits (sin signo). Los valores hexadecimales se convierten
automticamente.
Data - es una matriz de bytes. Tambin se puede especificar con 0x80, 0x81, 0x82, etc.
Variables
Una variable es un nombre al que asigna un objeto. Puede asignar una cadena, datos, enteros o
valores booleanos. Por ejemplo:
ThisVar = "Hello World"
Ahora crear una variable llamada ThisVar cuyo valor de cadena es "Hello World". Para crear una
matriz de datos utilice ";" Despus de cada byte:
MyData = 0x01; 0x02; 0x03; 0x04; 0x05; 0x06
Si asigna una variable 4 o menos bytes, la variable se convertir automticamente en un tipo
entero en lugar
de un tipo de datos. Para crear una variable booleana:
DoVar = True
Y para crear un entero:
VarInt = 470
Las variables enteras se pueden sumar o restar. Las variables String y Data se pueden
combinar.
VarInt = 5
VarInt + = 10
msgbox (VarInt) #this producir el resultado de 15
Para cadenas y datos, utilice el operando "&", por ejemplo:
VarStr = "Hello"
VarStr = VarStr & "World!
Msgbox (VarStr) # Producir "Hola Mundo!"
MyData = 0x02; 0x02; 0x03; 0x04; 0x05
MyData = MyData & 0x06; 0x07
msgbox (hex (MyData)) # Producir "0x01020304050607"
El comando hexadecimal convierte la matriz de datos en una cadena hexadecimal que se puede
imprimir.
Eventos / Funciones
Un Evento es similar a una funcin que usted puede estar familiarizado. Puedes tratarlo como una
"funcin",
Puede crear eventos y luego llamarlos como funciones e incluso devolver un valor.
Tambin se pueden asignar eventos a elementos GUI, como botones. Por lo tanto, cuando hace
clic en un botn creado,
el motor ejecutar los comandos que estn en el evento que asign a ese botn.
Los eventos son muy tiles. Puede pasar variables a eventos y recuperar valores de eventos.
Cuando pasa una variable o valor a un evento, el evento crear una nueva variable para cada
argumento pasado. Estas nuevas variables se denominarn $ 1, $ 2, $ 3 y as sucesivamente para
cada variable
pasada.
Para crear un evento o una funcin, utilice la palabra clave CreateEvent seguida por un
parmetro que
especifique el nombre del evento / funcin. Y para especificar el final del Evento, utilice el
EndEvent.
EchoToMsgBox ("Hello World")
CreateEvent (EchoToMsgBox)
msgbox ($ 1)
EndEvent
Este ejemplo de cdigo abre un msgbox que dice "Hello World" cuando se ejecuta. Tambin
puede utilizar
eventos como funciones para analizar la informacin y usar el evento como si fuera una
funcin de comando . Por ejemplo:
msgbox (CombineString) ("Hello", "World"))
CreateEvent (CombineString)
StrVar = $ 1 & $ 2
Devolver StrVar
EndEvent
La salida de esto producir un msgbox que dice "Hello World".
Sintaxis bsica
Los scripts FlashcatUSB utilizan una sintaxis muy familiar, de estilo VB. Cada lnea contiene una
instruccin que
puede ser un comando a ejecutar, una condicin (IF, etc.), una instruccin de control de flujo o
el inicio de un
evento (una funcin o subprocedimiento). Para poner comentarios en el archivo de script
(declaraciones que
no tienen ningn efecto), utilice el smbolo #. Los caracteres que procedan no sern evaluados
por el
motor de secuencias de comandos.
Las declaraciones bsicas de control de flujo son: LABEL, GOTO, EXIT, RETURN.
Var1 = 10
GOTO SKIP_MINVAL
Var1 = Var1 - 5
SKIP_MINVAL:
msgbox (Var1) # Var1 = 10 A
medida que el script se ejecuta, cuando alcanza la palabra clave GOTO, el motor buscar
el documento (hacia delante y hacia atrs), para Una etiqueta que contiene el nombre
"SKIP_MINVAL".
Una vez encontrado, la ejecucin comenzar all. Debido a que el motor de secuencias de
comandos buscar en ambos sentidos, tambin
puede usar palabras clave GOTO para crear bucles.
La palabra clave EXIT se puede utilizar para dejar un evento o una funcin, o para salir de una
condicin
Segmento (por ejemplo, bloque IF o FOR). El uso de la sintaxis es EXIT o EXIT <Event> o EXIT
SCRIPT. Si ejecuta script de salida, independientemente del evento en el que se encuentre, el
script completo dejar de
ejecutarse. Por ejemplo:
Tipos de datos
Existen 4 tipos de datos principales con los que puede trabajar. Estos son:
Bool - es un valor de TRUE o FALSE
String - es un valor de caracteres legibles en ASCII, especificado mediante comillas.
Entero - es un nmero de 32 bits (sin signo). Los valores hexadecimales se convierten
automticamente.
Data - es una matriz de bytes. Tambin se puede especificar con 0x80, 0x81, 0x82, etc.
Variables
Una variable es un nombre al que asigna un objeto. Puede asignar una cadena, datos, enteros o
valores booleanos. Por ejemplo:
ThisVar = "Hello World"
Ahora crear una variable llamada ThisVar cuyo valor de cadena es "Hello World". Para crear una
matriz de datos utilice ";" Despus de cada byte:
MyData = 0x01; 0x02; 0x03; 0x04; 0x05; 0x06
Si asigna una variable 4 o menos bytes, la variable se convertir automticamente en un tipo
entero en lugar
de un tipo de datos. Para crear una variable booleana:
DoVar = True
Y para crear un entero:
VarInt = 470 Las
variables enteras pueden aadirse o restarse. Las variables String y Data se pueden
combinar.
VarInt = 5
VarInt + = 10
Msgbox (VarInt) #this producir el resultado de 15
Para cadenas y datos, utilice el operando "&", por ejemplo:
VarStr = "Hello"
VarStr = VarStr & "World!"
Msgbox (VarStr) # Producir "Hola Mundo!"
MyData = 0x02; 0x02; 0x03; 0x04; 0x05
MyData = MyData & 0x06; 0x07
msgbox (hex (MyData)) # Producir "0x01020304050607"
El comando hexadecimal convierte la matriz de datos en una cadena hexadecimal que se puede
imprimir.
Eventos / Funciones
Un Evento es similar a una funcin que usted puede estar familiarizado. Puedes tratarlo como una
"funcin",
puedes crear eventos y luego llamarlos como funciones e incluso devolver un valor.
Tambin se pueden asignar eventos a elementos GUI, como botones. Por lo tanto, cuando hace
clic en un botn creado,
el motor ejecutar los comandos que estn en el evento que asign a ese botn.
Los eventos son muy tiles. Puede pasar variables a eventos y recuperar valores de eventos.
Cuando pasa una variable o valor a un evento, el evento crear una nueva variable para cada
argumento pasado. Estas nuevas variables se denominarn $ 1, $ 2, $ 3 y as sucesivamente para
cada variable
pasada.
Para crear un evento o una funcin, utilice la palabra clave CreateEvent seguida por un
parmetro que
especifique el nombre del evento / funcin. Y para especificar el final del evento, utilice la
palabra clave EndEvent.
EchoToMsgBox ("Hello World")
CreateEvent (EchoToMsgBox)
msgbox ($ 1)
EndEvent
Este ejemplo de cdigo abre un msgbox que dice "Hello World" cuando se ejecuta. Tambin
puede utilizar
eventos como funciones para analizar la informacin y usar el evento como si fuera una
funcin de comando . Por ejemplo:
msgbox (CombineString) ("Hello", "World"))
CreateEvent (CombineString)
StrVar = $ 1 & $ 2
Devolver StrVar
EndEvent
La salida de esto producir un msgbox que dice "Hello World".
Declaraciones condicionales
Para ejecutar cdigo basado en una condicin, puede utilizar la palabra clave IF seguida de una
instruccin
que puede ser evaluada como verdadera o falsa. Similar a la "IF, ELSE, ENDIF" de otros
lenguajes de programacin.
Si (5> 2)
msgbox ("Esto se ejecutar") El
otro
msgbox ("Esto no")
EndIf
La sentencia de condicin (5> 2) es evaluada y se encuentra que es verdadera. Tambin puede
utilizar Eventos
que devuelven TRUE o FALSE. Si usted precede a la declaracin de condicin con la palabra clave
"no",
lo que la declaracin se evala en, ocurrir lo contrario. Tambin puede utilizar el "!"
Para el mismo efecto.
Si no es as (GetValue ()> 10)
msgbox ("
EndIf
CreateEvent (GetValue)
retVar = 5
return RetVar
EndEvent
En el ejemplo anterior, puede crear una funcin llamada GetValue, especificndola utilizando la
palabra clave CreateEvent. Dentro del bloque de eventos, puede ejecutar comandos u otra
sintaxis
y, a continuacin, utilizar la palabra clave Return para devolver un valor a la lnea llamante, en
este caso, la
instruccin IF que compara el valor devuelto para ser mayor que 10.
Loops / Iterations
Para realizar tareas repetitivas, puede utilizar un bucle FOR. Esto se especifica mediante la
palabra clave FOR
seguida de parmetros que especifican el nombre de una variable, el valor inicial y el valor final.
Para (i = 0 a 9)
msgbox ("Estamos en el nmero de bucle:" & i)
EndFor
Funcin AUTORUN
Si desea que el software cargue automticamente una secuencia de comandos cuando se conecta
a una tarjeta JTAG o
dispositivo SPI, puede utilizar esta funcin. Dado que algunos dispositivos comparten el mismo
cdigo de ID de la CPU y
es posible que desee tener diferentes scripts de dispositivo, puede utilizar la funcin de
ejecucin automtica. Para ello, edite
o cree el archivo Autorun.ini ubicado en la carpeta Scripts. Cada lnea (no comentada)
representa un script de dispositivo. El formato es:
<JTAG_ID o JEDEC_ID>: <SCRIPT_NAME>: <DEVICE_NAME>
Agregue tantas secuencias de comandos como necesite y cuando ejecute el software, cuando se
conecte a un
dispositivo cargar todos los scripts que coincidan con el ID de la CPU o JEDEC ID. Para cambiar
guiones,
Simplemente cambie el elemento del men en la lista desplegable. Para su comodidad, el ltimo
script
ejecutado ser recordado para uso futuro.
Comando: OpenFile
Parmetros: String, String (opcional)
Devuelve: Datos
Descripcin:
Solicita al usuario un archivo y luego lee el archivo desde el disco y devuelve una
variable de datos . El primer parmetro es el ttulo de la ventana y el segundo opcional es
el filtro de archivo estndar a utilizar.
Ejemplos: MyData = OpenFile ("Elegir archivo", "Archivos de firmware (* .bin) | * .bin")
Comando: SaveFile
Parmetros: Data, String, String (opcional)
Sintaxis: Variable de datos para escribir, Nombre
Descripcin: Solicita al usuario que guarde una variable de datos en el disco duro.
Ejemplos: SaveFile (MyData, "Dnde guardar?", "Fileread.bin")
Comando: ReadFile
Parmetros: String
Devuelve: Datos
Descripcin: Lee un archivo desde el disco duro. El primer parmetro es el nombre del
archivo (en
relacin con la ubicacin de FlashcatUSB.exe).
Ejemplos: MyData = ReadFile ("Scripts \ EEPROM.bin")
Comando: WriteFile
Parmetros: Data, String
Descripcin:
Escribe una matriz de datos en el disco duro. El primer parmetro es la
variable de matriz de datos , el segundo es la ubicacin en relacin con FlashcatUSB.exe
donde
desea guardar el archivo. Este comando no solicita al usuario.
Ejemplos: WriteFile (MyData, "Scripts \ EEPROM.bin")
Comandos de memoria
Comando: Memory.Write
Parmetros: Datos, Integer, Integer opcional
Sintaxis: Objeto de datos para escribir, desplazamiento de direccin de flash, longitud
opcional
Descripcin: Escribe una variable de datos en el dispositivo de flash. Funciona para los
dispositivos flash CFI y SPI , pero tenga en cuenta que debe haber iniciado el flash.
Ejemplos: Memory.Write (dataVar, 0,256) #Writes
Comando: Memory.Read
Parmetros: Entero, Entero, Opcional Bool
Devuelve: Datos
Descripcin: Lee los datos del dispositivo flash. Funciona para los
dispositivos flash tipo CFI y SPI , pero tenga en cuenta que debe haber iniciado el flash.
Ejemplos: dataVar = Memory.Read (0,512) #Reads 512 bytes
Comando: Memory.ReadString
Parmetros: Entero
Pgina 22 de 32
Devuelve: Cadena
Descripcin: Lee una cadena de la ubicacin especificada en el dispositivo flash. Devuelve
nada si no se encuentra el error o la cadena.
Ejemplos: dataStr = Memory.ReadString (0x5000)
Comando: Memory.ReadVerify
Parmetros: Entero, Entero
Devuelve: Datos
Descripcin:
Similar a ReadFlash (), esta funcin lo hace dos veces y compara el
resultado y si es necesario verifica todos los datos para asegurar Que los datos ledos son
100%
exactos. No devuelve nada si la verificacin falla. Esta funcin es preferible a
ReadFlash, donde la integridad de los datos es vital.
Ejemplos: dataVar = Memory.ReadVerify (0,512) #Reads 512 bytes
Comando: Memory.GetSectorCount
Devuelve: Entero
Descripcin: Borra el sector de flash especificado
Ejemplos: sectors = Memory.GetSectorCount ()
Comando: Memory.EraseSector
Parmetros: Entero
Devuelve: Nada
Descripcin: Borra el sector de flash especificado
Ejemplos: Memory.EraseSector (0)
Comando: Memory.EraseSection
Parmetros: Integer, Integer
Devuelve: Nothing
Descripcin: Borra una seccin de la memoria flash, empezando por la direccin (el primer
parmetro) y el nmero de bytes (segundo parmetro).
Ejemplos: Memory.EraseSector (0x10000,0x8000)
Comando: Memory.EraseBulk
Parmetros: Ninguno
Devuelve: Nada
Descripcin: Borra la memoria flash completa
Ejemplos: Memory.EraseBulk ()
Command: Memory.GetSectorSize
Parmetros: Entero
Devuelve: Entero
Descripcin: Devuelve el tamao
Ejemplos: dataInt = Memory.GetSectorSize (0)
Comando: Memory.Backup
Parmetros Ninguno
Descripcin:
Anteriormente conocido como "Dump", esto lee todos los datos de flash (dos veces) y
luego le pide al usuario que guarde el archivo en disco. til para hacer una
copia de seguridad de flash que tiene integridad de datos.
Ejemplos: Memory.Backup ()
Comando: Memory.Exist
Parmetros: Ninguno
Devuelve: Bool
Descripcin: Devuelve true si se ha creado un dispositivo de memoria en un ndice dado.
Ejemplos: Memoria (2) .Exist ()
Comando: Memory.WriteWord
Parmetros: Integer, Integer
Descripcin: Escribe un entero (todos los 32 bits) en una direccin especfica del dispositivo
de memoria.
Ejemplos: Memoria (2) .WriteWord (0x80010000,0x32)
Comandos GUI
Comando: writeline
Parmetros: String
Descripcin: Muestra un mensaje en la consola.
Ejemplos: writeline ("esto es slo una prueba")
Comando: msgbox
Parmetros: String
Descripcin: Muestra un mensaje al usuario mediante una ventana emergente.
Ejemplos: msgbox ("Hello World!")
Comando: status
Parmetros: String
Descripcin: Establece el texto de estado (la barra inferior del software).
Ejemplos: status ("script is complete")
Comando: Tab.Create
Parmetros: String
Devuelve: Entero
Descripcin: Crea una pestaa especfica de la aplicacin. Devuelve el ndice de la ficha.
Ejemplos: Tab.Create ("Mi dispositivo")
Comando: Tab.
Parmetros: String, Integer, Integer, Integer, Integer
Sintaxis: Nombre del grupo, (eje X), (eje Y), Longitud, Altura
Descripcin: Crea un cuadro de grupo en la pestaa.
Ejemplos: Tab.AddGroup ("Feature", 10,10,420,140)
Comando: Tab.AddBox
Parmetros: String, String, Integer, Integer
Descripcin: Crea un cuadro de entrada en la pestaa.
Ejemplos: Tab.AddBox ("BXNAME", "texto predeterminado", 30,110)
Comando: Tab.AddText
Parmetros: String, String, Integer, Integer
Descripcin: Crea una etiqueta de texto en la pestaa.
Ejemplos: Tab.AddBox ("txtName", "Qu decir", 30,110)
Comando: Tab.AddImage
Parmetros: String, String, Integer, Integer
Comando: Tab.AddButton
Parmetros: Event, String, Integer Descripcin: Agrega una imagen a la pestaa del archivo
especificado (en la carpeta de scripts) , Entero
Descripcin: Agrega un botn a su pestaa. El evento especificado se llama cuando el usuario
hace clic
en el botn.
Ejemplos: Tab.AddButton (HelloWorld, "Click Me!", 20,20)
Comando: Tab.AddProgress
Parmetros: Integer, Integer, Integer
Descripcin:
Agrega una barra de progreso a su formulario. Esta barra se actualizar automticamente a
travs de las funciones internas que usted llama (seleccionadas que pueden tardar en
procesarse). Los parmetros son el eje x, el eje y y el ancho de la barra.
Ejemplos: Tab.AddProgress (20,92,404)
Comando: Tab.Remove
Parmetros: String
Descripcin: Elimina cualquier objeto previamente agregado de tu pestaa.
Ejemplos: Tab.Remove ( "ImgName")
Comando: Tab.SetText
Parmetros: String, String
Descripcin: Cambia el texto de cualquier objeto previamente creados
ejemplos: Tab.SetText ( "txtName", "Jigga Jigga!")
Comando: Tab.ButtonEnable
Parmetros: String
Descripcin: Habilita el botn (si lo tena deshabilitado)
Ejemplos: Tab.ButtonEnable ("
Comando: SetParam
Parmetros: Integer, Integer
Sintaxis: Setting, Value
Descripcin: Establece un parmetro de dispositivo en la placa (firmware controlado). Los
retrasos se
establecen en milisegundos y es la cantidad de tiempo que el AVR debe esperar entre
leer o escribir instrucciones. El objetivo principal de este comando es afinar el
rendimiento; Cuanto ms rpido el dispositivo funcione, mayor ser la tasa de error. Esto
tambin puede afectar diferentes dispositivos de destino de manera diferente.
Ajustes: 1: Intel retardo de destello
2: AMD flash retardo de
3: Memoria leer retardo
Ejemplos: SetParam (1, 30) #Sets el retraso de flash de Intel a 30 ms
de comando: Ejctrl
Parmetros: Entero
Devuelve: Entero
Descripcin: Enva un mensaje de control JTAG al dispositivo de destino. Estos tipos de
comandos
son muy dependientes del dispositivo de destino. Esto se puede utilizar para detener
(0x10000)
o iniciar (0x0) el procesador de destino. Se devuelve el resultado del comando.
Ejemplos: Ejctrl (0x10000) #Espera el procesador de destino
Comando: FixFlash
Parmetros: Ninguno
Descripcin:
Intenta reprogramar el cargador de arranque de un dispositivo a ciegas (sin verificacin, sin
identificacin de dispositivo de comprobacin, etc.). Esto a veces tiene xito al restaurar un
dispositivo que
no arranca correctamente. Slo se admite en modo JTAG.
Ejemplos: FixFlash ()
Comando: JTAG.MemoryAddress
Parmetros: Integer
Descripcin: Inicializa el controlador de memoria dinmica y establece la direccin de
memoria base.
Ejemplos: JTAG.MemoryAddress (0x80000000)
Comando: JTAG.MemoryType
Parmetros: String
Descripcin: Establece el tipo de dispositivo de la memoria. Esto puede ser "RAM", "CFI" o
"SPI".
Nota: El modo SPI sobre JTAG an no es compatible.
Ejemplos: JTAG.MemoryType ("CFI")
Comando: JTAG.MemorySize
Parmetros: Integer
Descripcin: Establece el tamao de la memoria (en bytes) de la memoria dinmica
Ejemplos: JTAG.MemorySize (0x800000)
Comando: JTAG.MemoryInit
Parmetros: Ninguno
Descripcin: Inicializar y conectar la interfaz FlashcatUSB a la memoria
interfaz. Es posible que deba especificar la direccin y el tamao antes de llamar a esta
funcin. Si tiene xito, la GUI agregar la pestaa "Memoria". Este comando tambin devuelve
el ndice nico del dispositivo creado.
Ejemplos: MemIndex = JTAG.MemoryInit ()
Comando: JTAG.FlashInit
Parmetros: Ninguno
Descripcin:
Se conectar al flash CFI compatible en el controlador de memoria para permitir la
lectura y escritura. Esto crear la pestaa "Flash" en la GUI. Debe configurar
FlashBase antes.
Ejemplos: JTAG.FlashInit ()
Comando: JTAG.FlashFind
Parmetros: Ninguno
Descripcin : Explorar todo el rango de direcciones de memoria para un flash compatible
con CFI.
Ejemplos: JTAG.FlashFind ()
Comando: JTAG.BigEndian
Parmetros: Ninguno
Descripcin: Establece el endian para los dispositivos de memoria JTAG a grandes.
Ejemplos: JTAG.BigEndian ()
Comando: JTAG.LittleEndian
Parmetros: Ninguno
Descripcin: Establece el endian para los dispositivos de memoria JTAG a poco.
Ejemplos: JTAG.LittleEndian ()
Comando: JTAG.Debug
Parmetros: Bool (verdadero o Falso)
Descripcin: escribe los datos JTAG registran con la bandera estndar para poner el
dispositivo de destino
en el modo de depuracin: (PRACC | Proben | SETDEV | JTAGBRK)
Ejemplos : JTAG.Debug (true) #Will enviar el comando JTAG debug
Comando: JTAG.Reset
Sintaxis:
Descripcin:
Escribe el registro de datos JTAG con el indicador estndar para emitir un procesador
Reiniciar. Este comando puede tener resultados diferentes dependiendo de la
parte del procesador particular : (PRRST | PERRST)
Ejemplos: JTAG.Reset #Will enviar un comando de reinicio JTAG
Comando: JTAG.RunSVF
Parmetros: Data (byte array)
Descripcin:
Este comando ejecutar un comando " Serial Vactor Format "y procese y escriba
todos los comandos a un dispositivo JTAG conectado. Esto puede ser utilizado para
programar
Xilinx CPLD por ejemplo.
Ejemplos: JTAG.RunSVF (DataVar) # Ejecuta un archivo * .SVF
Comando: JTAG.RunXSVF
Parmetros: Data (matriz de bytes)
Descripcin:
Este comando ejecutar un archivo compacto (binario) "Serial Vactor Format"
y escribir todo Los comandos a un dispositivo JTAG conectado. Esto puede
Se puede utilizar para programar Xilinx CPLD por ejemplo.
Ejemplos: JTAG.RunXSVF (DataVar) # Ejecuta un archivo * .XSVF
Comando: SPI.Fosc
Parmetros: Integer
Descripcin:
Se utiliza para establecer el hardware SPI reloj divisor. La velocidad SPI es el reloj del
sistema
(16 MHz) dividido por el valor Fosc.
Valores soportados: 2, 4, 8, 16, 32, 64, 128
Ejemplos: SPI.Fosc (4)
Comando: SPI.Order
Parmetros: String
Descripcin: Se utiliza para establecer el orden de bits para todos los comandos SPI. Para el
bit ms significativo, utilice
"MSB" para el bit menos significativo "LSB".
Ejemplos: SPI.Order ("MSB")
Comando: SPI.Mode
Parmetros: Integer
Descripcin: Se utiliza para establecer el modo de dispositivo SPI. Modos admitidos 0, 1, 2, 3.
Ejemplos: SPI.Mode (0)
Comando: SPI.Swap
Parmetros: Bool
Descripcin: Se utiliza para invertir el orden de los bits de los datos que se estn escribiendo
o se leen al
flash. Por ejemplo, si su flash utiliza MSB, pero su microprocesador es LSB
y lee los datos del flash SPI, puede utilizar este comando para intercambiar los bits de forma
conveniente.
Ejemplos: SPI.Swap (true)
Comandos varios
Comando: Pausa
Parmetros: Entero
Descripcin: Espera la cantidad de tiempo especificada (en milisegundos), til slo en
secuencias de comandos.
Ejemplos: Pausa (1000) #Waits 1 segundo
Comando: Verificar
parmetros: Ninguno o Bool
Devuelve: Bool o nada
Descripcin: Se utiliza para activar o desactivar el proceso de verificacin de flash. Tambin
se puede utilizar para
devolver el ajuste actual.
Ejemplos: Verificar (true)
Comando: Modo de
Parmetros: Ninguno
Devuelve: String
Descripcin: Devuelve una cadena que indica qu modo est en FlashcatUSB.
Ejemplos: Modo () #Returns "JTAG"
Comando: pedir
Parmetros: String
Devuelve: Bool
Descripcin: pregunta al usuario una pregunta de s o no y devuelve ese valor. Puede usar
esto en
una instruccin if para hacer secciones condicionales.
Ejemplos: pedir ( "Continuar guin?")
Comando: hexagonales
Parmetros: Entero
Devuelve: String
Descripcin: Convierte un valor entero o variable en una cadena hexadecimal
Ejemplos: hexagonal (255) #ouputs "0xFF"
Comando: Len
Parmetros: String, Integer o Data
Devuelve: Entero
Descripcin: Devuelve la longitud de una cadena, el nmero de bytes en un objeto de datos o
el
nmero de bytes para contener un entero.
Ejemplos: len ("hello") #returns 5
dataVar = 0x1F; 0x2F; 0x2F; 0xFF; 0x2A; 0x50
len (dataVar) #returns 6
len (302) #returns 2
Comando: Byte
Parmetros: Datos, Integer
Devuelve: Entero
Descripcin : Devuelve el valor del byte ubicado en una matriz de datos.
Ejemplos: DataVar = 0x1F; 0x3F; 0x2F; 0xFF; 0x2A; 0x50
palabra (dataVar, 2) #Returns 47
Command: Word
Parmetros: Data, Integer
Devuelve: Entero
Descripcin: Devuelve el valor de los cuatro bytes ubicados en una matriz de datos.
Ejemplos: DataVar = 0x1F; 0x3F; 0x2F; 0xFF; 0x2A; 0x50
palabra (dataVar, 2) #Returns 805251664
Comando: HWord
Parmetros: Data, Integer
Devuelve: Entero
Descripcin: Devuelve el valor de los dos bytes ubicados en una matriz de datos.
Ejemplos: dataVar = 0x1F; 0x2F; 0x2F; 0xFF; 0x2A; 0x50
hword (dataVar, 2) #Returns 12287
Comando: valor
Parmetros: String
Devuelve: String
Descripcin: Devuelve el valor de texto de un objeto Tab, como un cuadro de texto creado.
Ejemplos: strVar = valor (MYINPUTBOX)
Comando: ToInteger
Parmetros: String
Devuelve: Entero
Descripcin: Convierte un entero almacenado en una cadena como un entero.
Ejemplos: ToInteger ("234") #Returns 234
Comando: copy
Parmetros: Data, Data
Returns: Data
Descripcin: Copia dos variables de datos y las devuelve como una nueva variable combinada
de datos.
Ejemplos: dataVar = copy (data1, data2) #equals datos1 + datos2