Está en la página 1de 22

         

  

        

TUTORIAL
El uso de SPI en F2833X / F2803X Target

de octubre de el año 2016

    1 
          El uso de SPI en F2833X / F2803X Target 

Con el Módulo SimCoder y el objetivo de hardware F2833x / F2803x, PSIM puede generar códigos de ejecución listos para usar para tarjetas
DSP que utilizan TI F2833x / F2803x DSP serie. Mediante el uso de los bloques Serial Peripheral Interface (SPI) en la biblioteca F2833x /
F2803x Target, uno puede implementar las funciones para comunicarse con dispositivos SPI externos (tales como externa A / D y D / A) de
forma fácil y convenientemente. Escribir código manualmente para dispositivos SPI es a menudo una tarea que consume tiempo y no trivial.
Con la capacidad de soportar SPI, PSIM simplifica en gran medida y acelera el proceso de implementación de codificación y hardware.   

Este tutorial describe cómo SPI bloques y definido y utilizado en PSIM. Para ilustrar el proceso, se proporcionan varios
ejemplos con SPI convertidor D / A y convertidores A / D.  

1. SPI en F2833x / F2803x Target 

Hay un conjunto de módulo de SPI en TI F2833x DSP y 2 conjuntos de módulos SPI (SPIA y SPIB) en F2803x DSP. Ellos tienen diferentes conjuntos

de puertos GPIO. PSIM es compatible con el uso de estos puertos GPIO para comunicarse con dispositivos SPI. Los puertos GPIO utilizados por

módulos SPI se enumeran a continuación. Para el F2833x Objetivo: Para utilizar Puertos GPIO16-GPIO19: 

- GPIO16 como SPI pin de salida de datos 

- GPIO17 como SPI pin de entrada de datos 

- GPIO18 como SPI SPICLK reloj 


- GPIO19 como esclavo SPI transmitir a habilitar SPISTE pin 

Para utilizar Puertos GPIO54-GPIO57: 

- GPIO54 como SPI pin de salida de datos 

- GPIO55 como SPI pin de entrada de datos 

- GPIO56 como SPI SPICLK reloj 


- GPIO57 como esclavo SPI transmitir a habilitar SPISTE pin 

Para el F2803x Objetivo: 

Para utilizar Puertos GPIO16-GPIO19 de SPIA: 

- GPIO16 como SPI pin de salida de datos 

- GPIO17 como SPI pin de entrada de datos 

- GPIO18 como SPI SPICLK reloj 


- GPIO19 como esclavo SPI transmitir a habilitar SPISTE pin 

Para utilizar Puertos GPIO3, 5, 18 y GPIO19 de SPIA: 


- GPIO3 como SPI pin de entrada de datos 

- GPIO5 como SPI pin de salida de datos 

- GPIO18 como SPI SPICLK reloj 


- GPIO19 como esclavo SPI transmitir a habilitar SPISTE pin 

Para utilizar Puertos GPIO12-GPIO15 de SPIB: 

- GPIO12 como SPI pin de salida de datos 

- GPIO13 como SPI pin de entrada de datos 

- GPIO14 como SPI SPICLK reloj 

    2 
          El uso de SPI en F2833X / F2803X Target 

- GPIO15 como esclavo SPI transmitir a habilitar SPISTE pin 

Para utilizar Puertos GPIO24-GPIO27 de SPIB: 

- GPIO24 como SPI pin de salida de datos 

- GPIO25 como SPI pin de entrada de datos 

- GPIO26 como SPI SPICLK reloj 


- GPIO27 como esclavo SPI transmitir a habilitar SPISTE pin 

Hay cuatro tipos de elementos de librería SPI en la biblioteca F2833x / F2803x objetivo del PSIM:  SPI de configuración,   Dispositivo SPI,   Entrada
SPI,  y  Salida de SPI.  Sus imágenes se muestran a continuación. Se puede acceder por ir a  Elementos  >>  SimCoder >>   Objetivo
F2833x  o  Objetivo F2803x  en PSIM. 

Config dispositivo SPI


SPI en fuera
CS0 CS0 CS1 SPI
CS1 CS2 CS3
CS2 intr F28335 F28335
sincronización
CS3

F28335 SPI

F28335

dispositivo SPI
Config
F2803x SPI
CS2
CS0 CS3
CS1 CS0 CS1
SPI en fuera

CS2 CS3 SPI


intr
sincronización
F2803x F2803x

F2803x

Las funciones y definiciones de estos elementos se describen en las siguientes secciones. 

Configuración SPI 

los   Configuración SPI   bloque define clavijas de selección de chip y el tamaño del búfer para los comandos de SPI. El bloque de configuración
SPI debe estar presente en un esquema si se utiliza SPI, y este elemento debe estar en el esquema principal. 

Los parámetros del bloque de configuración del SPI son: 

- SPI puerto:  Definir el puerto SPI ya sea como GPIO16-19 o GPIO54-57 para F2833x; o GPIO16-
19, GPIO3, 5, 18, 19, GPIO12-15 o GPIO24-27 para F2803x. 

- Selección de Chip Pin0  a  pin3:  Ambos objetivos F2833x y F2803x soportan hasta 16 dispositivos SPI, lo que requiere cuatro pines
GPIO para selección de chip tal como se define por Chip Select Pin0 a Pin3. Estos puertos GPIO y el esclavo transmitir a habilitar

SPISTE pin SPI se utilizan para generar la señal de selección de chip para dispositivos SPI. 

Si sólo hay un dispositivo de SPI, uno puede usar simplemente el esclavo SPI transmitir a habilitar SPISTE pin como la señal de

selección de chip. Si no se utiliza un pasador de selección de chip, configurarlo para  No utilizado.    En los ejemplos de este tutorial, hay

hasta tres dispositivos SPI. Así, dos de selección de chip pasadores, Pin0 y Pin1, serán suficientes. Los otros pines, PIN2 y Pin3, no se

utilizan.    

    3 
          El uso de SPI en F2833X / F2803X Target 

-   Tamaño del SPI Buffer:  Definir el tamaño del búfer de los comandos de SPI. Cada celda de memoria del búfer guarda el índice de un

comando SPI. Normalmente, se puede especificar el tamaño del búfer como 1 más el número de comandos de SPI (es decir, de

comando de inicio de conversión, Recibir comando de datos, envío de comando de datos y sincronización. Comando) en todos los

elementos de entrada SPI / salida.  

dispositivo SPI 

UN  dispositivo SPI  bloque define la información del dispositivo de hardware SPI correspondiente. El número de bloques del dispositivo de SPI en

el esquema debe ser el mismo que el número de dispositivos de hardware SPI. Los parámetros del bloque de dispositivos SPI son: 

- Selección de chip de bolos:  Especificar el estado de los pasadores de selección de chip correspondientes al dispositivo SPI particular.

Cuando los seleccione pasadores de chips están en este estado, se selecciona este dispositivo SPI. En un esquema, el chip

seleccione pasadores de todos los dispositivos SPI están conectados a los de selección de chip clavijas del bloque de configuración

SPI, sin definir cómo se implementa la lógica de selección de chip. En el hardware real, sin embargo, habría que aplicar la

correspondiente lógica de selección de chip en consecuencia.  

En los ejemplos de este tutorial, prendedores CS0 y CS1 de externa A / D y convertidores de D / A están conectados a
patillas CS0 y CS1 del elemento de configuración de SPI. 

- Velocidad de comunicación (MHz):  Especificar la velocidad de la comunicación SPI, en MHz. Tenga en cuenta que diferentes
dispositivos SPI pueden tener diferentes velocidades de comunicación. 

- Tipo de reloj:  F2833x DSP soporta cuatro tipos de reloj SPI: flanco ascendente sin demora, flanco ascendente con retraso, flanco
descendente sin demora, y la caída de borde con retardo, como se muestra en la imagen siguiente.  

    4 
          El uso de SPI en F2833X / F2803X Target 

Tenga en cuenta que PSIM sólo es compatible con la situación en la que el DSP y el dispositivo de retención de datos SPI en el

mismo flanco ascendente o descendente de la señal de reloj SPICLK SPI.  

- Comando Longitud de palabra:  Definir la longitud de la palabra, o la longitud de los bits significativos, de comandos de
comunicación SPI. Puede ser de 1 a 16 bits.  

- Sincronización. Modo Activo:  Especificar el modo de activación de la señal de sincronización del dispositivo de SPI. Puede ser tanto  Flanco
ascendente  o  Flanco descendente.   

Un dispositivo de SPI puede ser o bien un dispositivo de entrada o un dispositivo de salida. Por ejemplo, un convertidor externo A / D

es un dispositivo de entrada. Por lo general, DSP enviará los comandos de uno o múltiples de conversión A / D para el dispositivo, y

luego ajustar la señal de sincronización para iniciar la conversión. La señal de sincronización se pone a cero en el siguiente comando

del mismo dispositivo. 

Un dispositivo de entrada SPI usando la señal de sincronización necesita generalmente un pin de interrupción para

desencadenar DSP para entrar en la rutina de servicio de interrupción. 

Por otro lado, un D externo / A Converter son un dispositivo de salida. Por lo general, DSP envía uno o múltiple D / comandos
de una conversión al dispositivo, y a continuación, establece la señal de sincronización para iniciar la conversión. La señal de
sincronización se pone a cero en el siguiente comando del mismo dispositivo. 

- SPI Comando inicial:  Definir el comando SPI que inicializa el dispositivo SPI. 

- Hardware Modo de interrupción:  Especificar el tipo de la señal de interrupción que el dispositivo SPI genera. Esto sólo es válido
cuando el nodo de salida de interrupción del dispositivo SPI está conectado a la entrada de un elemento de salida digital. Puede

ser uno de los siguientes:  Sin interrupción de hardware,   Flanco ascendente,  o  Flanco descendente.  

- Timing de interrupción:  Especifica cómo un dispositivo de entrada SPI genera interrumpir cuando se complete la conversión. Puede
ser uno de los siguientes: 

• Sin interrupción:  No se genera ningún interrupción. En este caso, DSP envía el comando a un dispositivo de entrada
SPI. Este dispositivo se inicia la conversión y devuelve el resultado en el mismo comando. 

• interrupción múltiple en serie:  Múltiples interrupciones se generan en serie después de cada conversión. Esto es para
un dispositivo de SPI que tiene una unidad de conversión A / D y múltiples canales de entrada. En este caso, DSP
envía el primer comando de conversión, y el dispositivo SPI se inicia la conversión. Cuando la conversión es completa,
el dispositivo SPI generará una interrupción. En la rutina de servicio de interrupción, DSP enviará un comando a buscar
el resultado de la conversión, y empezar una nueva conversión de otro canal del mismo dispositivo de entrada SPI. 

• interrupción de una sola vez:  Sólo se genera una interrupción al final de la conversión. Esto es para un dispositivo
de SPI que se pueden realizar varias conversiones de canal en una petición. En este caso, DSP envía el comando
al dispositivo de entrada SPI, y el dispositivo de SPI completa la conversión de múltiples canales de entrada.
Cuando todas las conversiones son completa, el dispositivo SPI generará una interrupción.  

    5 
          El uso de SPI en F2833X / F2803X Target 

- Las lagunas de mando (ns):  Definir la distancia entre dos comandos de SPI, en nanosegundos. 

- Secuencia de conversión:  Definir los nombres de los elementos de entrada SPI, separadas por comas que determinan la
secuencia de conversión. Tenga en cuenta que este parámetro sólo es válido cuando el dispositivo SPI genera múltiples
interrupciones en serie. 
Un comando SPI consiste en una serie de números de 16 bits separados por comas. En el número de 16 bits, sólo los bits más bajos
son los bits significativos utilizados por el comando. Por ejemplo, si la longitud de la palabra de comando es 8, los bits 0 a 7 son la
orden, y los bits 8 a 15 no se utilizan. Como ejemplo, "0x12, 7, 0" es un comando con 3 palabras de comando. 

entrada SPI 

Un dispositivo de entrada SPI puede tener múltiples canales de entrada. los  entrada SPI  bloque se utiliza para definir las propiedades de un canal

de entrada para la comunicación SPI, y un bloque SPI de entrada corresponde a un canal de entrada. 

Los parámetros del bloque de entrada SPI se explican a continuación: 


- Nombre del dispositivo:  Definir el nombre del dispositivo de entrada de SPI. 
- El comando de arranque de conversión:  Definir el comando de conversión de inicio, en números hexadecimales, separados por
comas (por ejemplo, 0x23, 0x43, 0x00). 

- Recepción de comando de datos:  Definir el comando de datos de recepción, en números hexadecimales, separados por
comas (por ejemplo, 0x23, 0x43, 0x00). 

- El bit de datos Posición:  Definir donde los bits de datos están en la cadena de datos de recepción. El formato es: 

ElementName = { X n [MSB..LSB]} 
dónde  
- ElementName  es el nombre del elemento de entrada SPI. Si se trata del elemento corriente de entrada SPI, utilizar  y  en
lugar. 

- {} Significa que el elemento en el soporte se repite varias veces. 

- X norte  es entonces º  palabra recibida desde el dispositivo de entrada de SPI, y n se inicia desde 0. 
- MSB..LSB  define la posición de los bits significativos en la palabra. Esta fórmula define la longitud de datos de un

dispositivo de entrada de SPI. Por ejemplo, y = x1 [3..0] x2 [7..0], significa que la longitud de datos es 12, y el resultado es los 4

bits inferiores de la segunda palabra y los 8 bits inferiores de la tercera palabra. Si la cadena de datos recibido es 0x12, 0x78,

0xAF, entonces el resultado será 0x8AF. 

- Rango de entrada:  Especificar el parámetro V máx  que define el rango de entrada. Este parámetro es válido sólo cuando el
dispositivo SPI es un convertidor A / D. Si el modo de conversión dispositivo es 
DC, la entrada varía de 0 a V max;  si el modo de conversión dispositivo es AC, la entrada se extiende de -V max / 2
a V max / 2. 

- Factor de escala:  Especificar el factor de escala de salida  K escala.  Si el factor de escala es de 0, el dispositivo SPI no es un
convertidor A / D, y el resultado será exactamente el mismo que lo DSP recibe de la comunicación SPI. De lo contrario, el
dispositivo de SPI es un convertidor A / D, y el resultado se escala basa en lo siguiente: 

    6 
          El uso de SPI en F2833X / F2803X Target 

En el modo de conversión DC: 


- En la simulación: salida = entrada *  K escala  
- En cuanto al hardware: salida = Resultado * Vmáx *  K escala  / 2 Longitud de datos   En el modo

de conversión AC: 

- En la simulación: salida = entrada *  K escala  


- En cuanto al hardware: salida = (Resultado - 2 Data_length-1)  * Vmáx *  K escala  / 2 Data_length-1   El parámetro  Longitud

de datos  se calcula a partir de la  Posición de bits de datos  fórmula.  


- Modo de ADC:  Definir el modo de conversión A / D del dispositivo. Puede ser tanto  corriente continua  o  C.A.   Tenga en cuenta
que este parámetro sólo es válido cuando el dispositivo es un convertidor A / D. 

- Valor inicial:  Definir el valor inicial de la entrada. 

salida SPI 
Un dispositivo de salida de SPI puede tener múltiples canales de salida. los  salida SPI  bloque se utiliza para definir las propiedades de un
canal de salida para la comunicación SPI, y un bloque SPI de salida corresponde a un canal de salida. 

Los parámetros del bloque de salida SPI se explican a continuación: 


- Nombre del dispositivo:  Definir el nombre del dispositivo de salida de SPI. 
- Factor de escala:  Especificar el factor de escala de salida  K escala.  La salida se calcula como sigue: En el modo de
conversión DC: 
- En la simulación: salida = entrada *  K escala  
- En cuanto al hardware: salida = Resultado *  K escala  * 2 Longitud de datos  / Vmax En el modo de
conversión AC: 
- En la simulación: salida = entrada *  K escala  
- En cuanto al hardware: salida = 2 Longitud-1 Data +  resultado *  K escala  * 2 Data_length-1   / Vmax El parámetro  Longitud
de datos  se calcula a partir de la  Posición de bits de datos  fórmula, y Vmax es el rango de salida.  

- Rango de salida:  Especificar el parámetro Vmax que define el rango de salida. Este parámetro es válido sólo cuando el
dispositivo SPI es un convertidor D / A. Si el modo de conversión dispositivo es DC, la salida varía de 0 a Vmax; si el
modo de conversión dispositivo es AC, los rangos de salida de -Vmax / 2 a Vmax / 2. 

- Modo DAC:  Definir el A modo de conversión D /. Puede ser tanto  corriente continua  o  C.A.  Tenga en cuenta que este parámetro
sólo es válido cuando el dispositivo es un convertidor D / A. 

- Envío de comando de datos:  Definir el comando para enviar los datos de salida. El comando es una serie de números
hexadecimales separados por comas (por ejemplo, 0x23,0x43,0x00). 
- El bit de datos Posición:  Definir donde los bits de datos están en la cadena de datos de envío. El formato es: 

ElementName = { X n [MSB..LSB]} 
dónde 
- ElementName  es el nombre del elemento de salida SPI. Si se trata del elemento corriente de salida SPI, utilizar  y  en
lugar. 

- {} Significa que el elemento en el soporte se repite varias veces. 

- X norte  es entonces º  palabra envía al dispositivo de salida SPI, yn empezar desde 0. 
- MSB..LSB  define la posición de los bits significativos en la palabra. 

    7 
          El uso de SPI en F2833X / F2803X Target 

Por ejemplo, si y = x1 [3..0] x2 [7..0] y si el resultado es 0x8AF, los 4 bits más bajos de la segunda palabra será 0x8, y
los 8 bits inferiores de la tercera palabra será 0xAF. 
- Sincronización. Mando:  Definir el comando para sincronizar canales de salida del dispositivo de salida de SPI. Se
compone de una serie de números hexadecimales separados por comas (por ejemplo, 0x23,0x43,0). Este comando se
utiliza cuando el dispositivo de salida de SPI no tiene la señal de sincronización. 

2. SPI secuencias de comandos 


Una secuencia típica para un dispositivo de entrada de SPI se muestra a continuación: 

- Enviar el comando inicial del dispositivo (opcional). 


- Enviar el comando de arranque y esperar interrupción (opcional). 
- Establecer la señal de sincronización y esperar de interrupción (opcional). 
- Enviar el comando de recepción de datos. 

- Recibe el resultado y llamar a una función para continuar con la siguiente acción. Una secuencia

típica para un dispositivo de salida de SPI se muestra a continuación: 

- Enviar el comando inicial del dispositivo (opcional). 


- Enviar el comando de envío de datos. 
- Ajuste la señal de sincronización para que el nuevo valor (opcional). 

3. Limitaciones 
Existen varias limitaciones en la funcionalidad de SPI en PSIM. 

a. SPI Modo de operación: 

PSIM sólo es compatible con SPI en el modo de funcionamiento maestro. Se supone que sólo un DSP enlaces a uno o más

dispositivos SPI, y todos los dispositivos SPI están en el modo esclavo. 

segundo. Retención de datos Tiempo: 

TI F2833x / F2803x DSP supone que los datos de entrada / salida están activos al mismo tiempo. El tiempo de enclavamiento puede

ser o bien el flanco de bajada o flanco de subida del reloj SPI. dispositivos SPI utilizan el mismo tiempo para enganchar datos. Un

dispositivo SPI será no admite si se trabe los datos de entrada en un tiempo diferente que el DSP. Tenga en cuenta que esta

limitación es de la TI F2833x / F2803x. 

do. Otras limitaciones: 


- SPI comando combinado con acciones de puerto GPIO 

PSIM no admite el tipo de dispositivo SPI si su mando se combina con acciones GPIO. Por ejemplo, una pantalla LCD
de SPI puede necesitar un puerto GPIO para definir si los datos son un comando o un carácter pantalla de E / S. 

- Comprobación del estado del dispositivo ocupado SPI 

PSIM no admite el tipo de dispositivo SPI que necesita para comprobar si el dispositivo está listo para aceptar el siguiente
comando. El dispositivo puede ser apoyado si se devuelve el resultado en el mismo comando o se dispara una interrupción
cuando la conversión es completa. 

- cadena de margaritas 

    8 
          El uso de SPI en F2833X / F2803X Target 

PSIM no soporta cadena de margarita. 

4. Ejemplos 

Para ilustrar cómo los elementos SPI se utilizan, tres ejemplos se proporcionan en PSIM: 
- A / D externos MCP4922 convertidor 
- External A / D MCP3204 convertidor (sin interrupción) 
- External A / D TLV1548 convertidor (con interrupción) 

Estos ejemplos se encuentran en la carpeta “examples \ SimCoder \ F2833x Target” o “ejemplos \ SimCoder \ F2803x
Target \” en el directorio PSIM .  

A / D externos convertidor Usando MCP4922 

MCP4922 es un convertidor D / A de Microchip Technology Inc. Tiene dos canales D / A. La información que necesita PSIM
de la hoja de datos del fabricante se enumeran a continuación: 
- La frecuencia de reloj SPI es de hasta 20 MHz. 
- El diagrama de interfaz serie de temporización de MCP4922, como se muestra a continuación, indica que el tipo de reloj DSP

SPI es  flanco ascendente con retraso,  y el intervalo de tiempo entre dos comandos de conversión es 15ns.  

 
- No hay ningún dispositivo de comandos inicial, ni orden de inicio de conversión. 
- No hay puerto de interrupción. 
- Hay un puerto de sincronización para sincronizar el tiempo de salida. 
- El comando de datos de transmisión del canal A es 0x7000, y el comando de canal B es 0xF000. El resultado
será colocado en los últimos 12 bits de la orden. 

Esquema del circuito de 

Este ejemplo se implementa en ambos Targets F2833x y F2803x, y la aplicación en cada objetivo es idéntico excepto el DSP es diferente.

En este ejemplo, dos señales de onda senoidal se generan en DSP. Ellos son enviados luego a la D externo / A MCP4922 convertidor a

través de SPI como dos salidas analógicas. Los archivos de este ejemplo se encuentran en la carpeta "examples \ F2833x Target \ DAC

con SPI" para F2833x y "examples \ F2803x Target \ DAC con SPI" para F2803x. El diagrama de circuito de hardware para la F2833x

Target se muestra a continuación.  

    9 
          El uso de SPI en F2833X / F2803X Target 

Del mismo modo, el diagrama de circuito de hardware para la F2803x Target se muestra a continuación.  

En tanto esquemática, pin SPIDOUT de DSP (GPIO16) está conectado al pin SDI de MCP4922 para la transmisión de datos; pin SPICLK

(GPIO18) está conectado al pin SCLK de MCP4922 como reloj SPI; la transmisión a habilitar SPI esclavo SPISTE pasador (GPIO19) está

conectado al pin de selección de chip de MCP4922 CS; y el puerto está conectado a GPIO14 LDAC de MCP4922. Esta conexión es para

sincronizar dos salidas D / A. El correspondiente esquemática PSIM para la F2833x Target se muestra a continuación.  

    10  
          El uso de SPI en F2833X / F2803X Target 

El correspondiente esquemática PSIM para la F2803x Target se muestra a continuación. 

En tanto esquemática, la salida D0 del bloque de salida digital se establece en GPIO14 y está conectado a la entrada de sincronización de
MCP4922 para la sincronización. 

Con el uso de la señal SPISTE, este circuito no necesita ningún otro puerto GPIO para generar la señal de selección de chip. Es por ello que

en el circuito, las clavijas de selección de chip CS0 a CS3 no se utilizan. Nótese que en PSIM, se da a entender que SPISTE, SPICLK,

pasadores SPIDIN, y SPIDOUT están conectados entre el bloque de configuración del SPI y el bloque de dispositivos SPI. Por lo tanto no se

necesita conexión externa. 

Definición de los parámetros del elemento SPI 

Tres tipos de elementos SPI se utilizan en el esquema PSIM en este ejemplo:  SPI de configuración,   Dispositivo SPI,  y  Salida de SPI.  Sus
parámetros se establecen de la siguiente manera: 

- Configuración SPI: No debe ser sólo un elemento de configuración del SPI en un esquema. Puesto que sólo hay un
dispositivo SPI en este caso, SPISTE se utiliza como la señal de selección de chip en este caso. Los parámetros del
bloque de configuración SPI se definen como sigue: 
• SPI puerto:   GPIO16-19. Tenga en cuenta que este es el único grupo permitido en el kit del experimento
TI. 

• Selección de Chip Pin0 a Pin3: "No utilizado" 

• Tamaño del SPI Buffer:   32. En este ejemplo, la longitud mínima es de 4. 

- SPI MCP4922 Dispositivo: De acuerdo con la información de hoja de datos del MCP4922, los parámetros se definen

como a continuación: 

• Selección de chip de bolos:   Se utiliza 0000. Sin pasador de selección de chip.  

• Velocidad de comunicación (MHz): 20 


• Tipo de reloj:   "Flanco ascendente sin demora" 
• Comando Longitud de palabra: 8 bits 

    11  
          El uso de SPI en F2833X / F2803X Target 

• Sincronización. Modo Activo: "De mayor a menor" 

• SPI Comando inicial:   Ninguna orden inicial 


• Hardware Modo de interrupción:   "No hay interrupción de hardware" 

• Timing de interrupción:  Al seleccionar “no interrupción” 

• Las lagunas de mando (ns): 15 

• Secuencia de conversión: Ninguno 

• Salida SPI MCP4922 Canal A 

Según la información hoja de datos del MCP4922, los parámetros se definen como a continuación: 
- Nombre del dispositivo:   “SP_DAC” 
- Factor de Escala: 1 

- Rango de salida: 3.3 


- Modo DAC: CC 
- Envío de comando de datos: 0x7000 
- El bit de datos Posición:   y = x0 [3..0] x1 [7..0]. El resultado será colocado en los últimos 12 bits de dos palabras de 8 bits.  

- Sincronización. Comando: Ninguno 

- Salida SPI MCP4922 Canal B 

Las definiciones son las mismas que para el Canal A anterior, excepto que el comando de datos de envío es "0xF000". 

Generación y ejecución de código en el DSP 

El usuario puede simular y generar código en los siguientes pasos: 


- Seleccionar  Archivo  >>  Abierto  para cargar el ejemplo de "ejemplos \ F2833x Target \ DAC con SPI" o "ejemplos \
F2803x Target \ DAC con SPI".  
- Seleccionar  Simular  >>  ejecución de la simulación  para ejecutar la simulación. Tenga en cuenta que el valor de la entrada SCI no

cambiará durante la simulación. 

- Seleccionar  simular >>   Generar codigo  para generar el código. 


- Conectar el procesador de señales digitales al ordenador físicamente a través de un cable USB. Si se utiliza un cable RS-232 para

conectar el procesador de señales digitales con el equipo de monitoreo de datos SCI, asegúrese de desconectar el cable RS-232 de

la computadora. De lo contrario el procesador de señales digitales puede no ser capaz de conectarse a la computadora

correctamente.   

Para v5.5 CCS, cargar el código generado y ejecutar este ejemplo, siguiendo los siguientes pasos. 
- Comience CCS v5.5. En CCS, seleccione  Proyecto >> Importar proyecto Legado CCSv3.3  y cargar el proyecto generado a

partir de la subcarpeta "DAC con SPI (código C)" de la carpeta del esquema. En la ventana de diálogo, haga clic en  Siguiente  y

entonces  Terminar  para transferir el proyecto CCS v3.3 a v5.1 CCS. El nombre del proyecto se mostrará en el panel Explorador

de proyectos. 

- Clic derecho en el nombre del proyecto en el panel Explorador de proyectos y seleccione  Generar proyecto   en el menú

emergente para construir este ejemplo. 

- Seleccionar  Ver >> Configuraciones objetivo  para abrir la ventana de diálogo de configuración de destino y vincular la

configuración definida correspondiente usuario (archivo .ccxml) para este proyecto. 

    12  
          El uso de SPI en F2833X / F2803X Target 

- Haga clic en el nombre del proyecto en el panel Explorador de proyectos para establecerlo como el proyecto actual, y seleccione  Ejecutar

>> depuración  para cargar el programa al objetivo. Una vez cargado el programa, el CCS se detendrá en la función main (). Seleccionar  Ejecutar

>> Free Run  para ejecutar el programa. Con el código que se ejecuta, conecte el cable RS-232 entre el procesador de señales digitales y el

ordenador, y utilizar la función DSP osciloscopio Psim para visualizar las variables dentro del DSP. Al mismo tiempo, utilizar un osciloscopio

digital de laboratorio para observar las señales SPI y las salidas D / A.  

Las figuras siguientes muestran las formas de onda de osciloscopio del chip SPI SPISTE señal de selección, la señal de reloj SPICLK SPI, y D
/ A salidas VoutA y VoutB. La figura en la parte inferior derecha muestra la pantalla de DSP osciloscopio con las dos señales sinusoidales
desde el interior del DSP, que validan las formas de onda de salida analógica. 

SPICL
SPISTE

SPIDOU

SPICL

(A) SPISTE de selección de chip de la señal vs. SPI reloj SPICLK (b) SPI reloj SPICLK vs. salida SPI 

VoutB

VoutA

(C) D / A da salida VoutA y VoutB                           (D) dos formas de onda sinusoidales dentro de DSP 

Externa convertidor A / D Usando MCP3204 

MCP3204 es un convertidor A / D de Microchip Technology Inc. Tiene cuatro canales de entrada, y se recibe un comando de
conversión y devuelve el resultado en el mismo comando. La información que necesita PSIM de la hoja de datos del fabricante se
enumeran a continuación: 

    13  
          El uso de SPI en F2833X / F2803X Target 

- La frecuencia de reloj SPI es de hasta 1 MHz 


- El diagrama de interfaz serie de temporización de MCP3204, como se muestra a continuación, indica que el tipo de reloj SPI es  flanco

ascendente con retraso,  y el intervalo de tiempo entre dos comandos de conversión es 500 ns. 

 
- No hay ningún dispositivo de comandos inicial, ni orden de inicio de conversión. 
- No hay puerto puerto y la sincronización de interrupción. 
- El mismo comando de recepción de datos se utiliza para iniciar la conversión y obtener el resultado. 

- El comando de recepción de datos del canal 0 es 0x06,0x00,0x00, y el comando de canal 2 es


0x06,0x80,0x00. El resultado será colocado en los últimos 12 bits de la orden. 

 Esquema del circuito de 

En este ejemplo, dos señales de tensión analógicas se convierten por MCP3204, y se envían al DSP a través de SPI. Los archivos de este ejemplo

se encuentran en la carpeta "examples \ F2833x Target \ ADC con SPI" para F2833x y "examples \ F2803x Target \ ADC con SPI" para F2803x. El

diagrama de circuito de hardware para la F2833x Target se muestra a continuación.  

    14  
          El uso de SPI en F2833X / F2803X Target 

El diagrama de circuito de hardware para la F2803x Target se muestra a continuación.  

En este ejemplo, en lugar de utilizar sólo la señal SPISTE, utilizará SPISTE así como GPIO32 y GPIO30, junto con el chip
decodificador 74HCT138, para generar la señal de selección de chip para el convertidor A / D.  

El correspondiente esquemática PSIM para F28335 diana se muestra a continuación.  

El correspondiente esquemática PSIM para la F2803x Target se muestra a continuación. 

    15  
          El uso de SPI en F2833X / F2803X Target 

Tenga en cuenta que puesto que dos pines GPIO se utilizan para generar la señal de selección de chip, los nodos CS0 y CS1 del bloque de

configuración de SPI y el dispositivo de SPI están conectados. 

Definición de los parámetros del elemento SPI 

Parámetros de los bloques de SPI se establecen como sigue: 

- Configuración SPI 

Dos de selección de chip pines se utilizan en este ejemplo. 

- SPI puerto:   GPIO16-19 


- Selección de Chip Pin0: GPIO32 

- Selección de Chip Pin 1: GPIO30 

- Selección de Chip Pin2 y Pin3: "No utilizado" 


- Tamaño del SPI Buffer:   32. En este ejemplo, el mínimo es 4. 
- SPI Dispositivo MCP3204 

Según la información hoja de datos del MCP2304, los parámetros se definen como a continuación: 

- Selección de chip de bolos:   0001. Esto significa que GPIO32 = 1 y GPIO30 = 0. 
- Velocidad de comunicación (MHz): 2.8 
- Tipo de reloj:   "Flanco ascendente con retraso" 
- Comando Longitud de palabra: 8 bits 
- Sincronización. Modo Activo: No me importa 

- SPI Comando inicial:  Sin comandos inicial. 


- Modo de interrupción de hardware: No me importa 

- Timing de interrupción:  "No hay interrupción" 


- Las lagunas de mando (ns): 0 

- Secuencia de conversión: Ninguno 

- SPI de entrada MCP3204 Canal 0 

Según la información hoja de datos del MCP3204, los parámetros se definen como a continuación: 

- Nombre del dispositivo:   "MCP3204" 


- El comando de arranque de conversión: Ninguno 

- Recepción de comando de datos: 0x06, 0x00, 0x00 


- El bit de datos Posición:   y = x1 [3..0] x2 [7..0] 
- Rango de entrada: 3.3V 

- Factor de Escala: 1 

- Modo de ADC: CC  

- Valor inicial: 0 
- SPI de entrada MCP3204 Canal 2 

Las definiciones son las mismas que para los canales 0, excepto que el comando de datos de recepción es 0x06,0x80,0x00. 

   

    dieciséis  
          El uso de SPI en F2833X / F2803X Target 

Ejecución del Código 

El proceso para generar, compilar y ejecutar el código es similar a lo que se describe en la Sección 4.1.3. A continuación se presentan algunas formas

de onda del osciloscopio de experimentos de laboratorio. 

SPISTE SPICL

SPIDIN
SPICL

    

(A) de la señal SPISTE vs. SPI reloj SPICLK (b) SPI reloj SPICLK vs. salida de A / D   

SPICL

SPIDOU

(C) SPI reloj SPICLK vs. comando de conversión A / D 

Externa convertidor A / D con interrupción Usando TLV1548 

TLV1548 es un convertidor de 8 canales A / D de Texas Instruments. Se recibe un comando de conversión para iniciar la conversión,
y se genera una interrupción cuando la conversión completa. Luego se recibe el siguiente comando de conversión de canal y envía el
resultado de la conversión anterior en la misma secuencia de comandos. 

La información que necesita PSIM de la hoja de datos del fabricante se enumeran a continuación: 
- La frecuencia de reloj SPI es de hasta 2 MHz 
- La longitud de la palabra de comando se encuentra que es 14 bits (ya sea 10 o 12 bits no funcionarían). 
- El diagrama de interfaz serie de temporización de TLV1548, como se muestra a continuación, indica que el tipo de reloj SPI es  flanco

ascendente con retraso,  y el intervalo de tiempo entre dos comandos de conversión es 0ns. 

    17  
          El uso de SPI en F2833X / F2803X Target 

 
- No hay señal de sincronización. 
- Para el modo de conversión rápida, el comando es 0x2400. 
- La interrupción de hardware se activa en el flanco ascendente de EOC (fin de la conversión). 
- Dado que sólo hay una unidad ADC de 10 bits en TLV1548, si hay varios canales de entrada, la conversión se
necesita hacer un canal a la vez. 
- Este ejemplo sólo utiliza el canal 0 y el canal 2, y el orden de conversión es TLV1548_CH0,
TLV1548_CH2. 
- El comando de conversión es 0x0000 para el canal 0; y es 0x1000 para el Canal 2. 

Esquema del circuito de 

En este ejemplo, dos señales de tensión analógicas se convierten por TLV1548, y se envían al DSP a través de SPI. Los archivos de este ejemplo

se encuentran en la carpeta "examples \ F2833x Target \ ADC (interrupción) con SPI" para F2833x y "examples \ F2803x Target \ ADC

(interrupción) con SPI" para F2803x. El diagrama de circuito de hardware para la F2833x Target se muestra a continuación. 

    18  
          El uso de SPI en F2833X / F2803X Target 

El diagrama de circuito de hardware para la F2803x Target se muestra a continuación. 

Este ejemplo utiliza el pin SPISTE así como GPIO30 y GPIO32 para generar la señal de selección de chip. TLV1548 genera interrupción
a través del Puerto GPIO15. 

El correspondiente esquemática PSIM para el objetivo F2833x se muestra a continuación. 

    19  
          El uso de SPI en F2833X / F2803X Target 

El correspondiente esquemática PSIM para la F2803x Target se muestra a continuación. 

En el esquema, los nodos CS0 y CS1 del bloque de configuración de SPI y el bloque de dispositivos SPI están conectados. Una vez

más, se da a entender que SPISTE, pasadores SPICLK, SPIDIN, y SPIDOUT están conectados entre el bloque de configuración del SPI

y el dispositivo de SPI, y no se necesita conexión externa. La salida de interrupción de la TLV1548 dispositivo SPI está conectado al pin

D0 del bloque de entrada digital, y D0 se define como GPIO15.  

Cuando TLV1548 recibe el comando de conversión de inicio, se iniciará la conversión en el canal 0. Una vez finalizada la
conversión, TLV1548 generará una interrupción. DSP responderá a esta interrupción, y enviar otro comando. TLV1548 se
iniciará la conversión en el canal 2, y enviará de vuelta el resultado de la conversión del canal 0. 

Definición de los parámetros del elemento SPI 

Parámetros de los bloques de SPI se establecen como sigue: 

- Configuración SPI 

Dos de selección de chip pines se utilizan en este ejemplo. 

- SPI puerto:   GPIO16-19 


- Selección de Chip Pin0: GPIO32 

- Selección de Chip Pin 1: GPIO30 

- Selección de Chip Pin 2 y 3: "No utilizado" 

- Tamaño SPI Buffer: 32 

- SPI TLV1548 Device 

Según la información técnica de de TLV1548, los parámetros se definen como a continuación: 


- Selección de chip de bolos:   0011. Es decir, GPIO32 = 1 y GPIO30 = 1. 
- Velocidad de comunicación (MHz): 2 
- Tipo de reloj:   "Flanco ascendente con retraso" 
- Palabra de orden Longitud: 14 bits 
- Sincronización. Modo Activo: No me importa 

    20  
          El uso de SPI en F2833X / F2803X Target 

- SPI Comando inicial: 0x2400 


- Modo de interrupción de hardware: "Flanco ascendente" 

- Timing de interrupción:   "Interrupción múltiple en serie" 


- Comando Gap (ns): 0 
- Secuencia de conversión:   "TLV1548_CH0, TLV1548_CH2" 
- SPI de entrada TLV1548 Canal 0 

Según la información técnica de de TLV1548, los parámetros se definen como a continuación: 


- Nombre del dispositivo:   "TLV1548" 
- El comando de arranque de conversión: 0x0000 

- Recepción de comando de datos:   0x0800. Este es también el comando de conversión del Canal 2. 

- El bit de datos Posición: y = x0 [13..4] 

- Rango de entrada: 3.3 

- Factor de Escala: 1 

- Modo de ADC: CC 

- Valor inicial: 0 
- SPI de entrada TLV1548 Canal 2 

Los parámetros son los mismos que para los canales 0, excepto que no hay ningún comando de conversión de inicio. El Comando de
recibir datos del canal 0 es también el comando de conversión de Canal 2. Además, el comando de recepción de datos es 0x2000, y esto
es una orden ficticia. 

Generación y ejecución de código en el DSP 

El proceso para generar, compilar y ejecutar el código es similar a lo que se describe en la Sección 4.1.3. A continuación se presentan algunas formas

de onda del osciloscopio de experimentos de laboratorio. 

SPISTE
SPISTE

SPICLK SPICLK

(A) de la señal SPISTE vs. SPI SPICLK reloj (b) Vista detallada de SPISTE vs. SPICLK 

    21  
          El uso de SPI en F2833X / F2803X Target 

SPICL SPICL

(C) SPI reloj SPICLK vs. A / resultado D (d) SPICLK reloj SPI vs. comando de conversión 

    22  

También podría gustarte