4.7 Aplicaciones usando la tarjeta Spartan 3E - Materias FCE · PDF file4.7 Aplicaciones...

Click here to load reader

  • date post

    16-Oct-2019
  • Category

    Documents

  • view

    9
  • download

    1

Embed Size (px)

Transcript of 4.7 Aplicaciones usando la tarjeta Spartan 3E - Materias FCE · PDF file4.7 Aplicaciones...

  • 4.7 Aplicaciones usando la tarjeta Spartan 3E

    USO DE LOS

    PERIFERICOS DEL

    SISTEMA DE

    DESARROLLO

    SPARTAN 3E

    Instructor:

    MC. Rodrigo Lucio Maya Ramírez

  • Uso del LCD

  • Operación escritura

  • Operación lectura

  • Inicialización con 4 bits

  • Conjunto de caracteres en el

    LCD

  • Conjunto de comandos

  • Interfase de datos de 4 bits

  • Inicialización LCD

  • Conexiones del LCD

  • Programación en VHDL

  • Cristal

    library IEEE;

    use IEEE.STD_LOGIC_1164.ALL;

    use IEEE.STD_LOGIC_ARITH.ALL;

    use IEEE.STD_LOGIC_UNSIGNED.ALL;

    entity cristal is

    Port ( Intcont : in STD_LOGIC_VECTOR (5 downto 0);

    Sallcd : out STD_LOGIC_VECTOR (6 downto 0));

    end cristal;

    architecture Behavioral of cristal is

    begin

    with Intcont select

    Sallcd

  • Separador

    library IEEE;

    use IEEE.STD_LOGIC_1164.ALL;

    use IEEE.STD_LOGIC_ARITH.ALL;

    use IEEE.STD_LOGIC_UNSIGNED.ALL;

    entity separador is

    Port ( entrada : in STD_LOGIC_VECTOR (6 downto 0);

    LCD : out STD_LOGIC_VECTOR (3 downto 0);

    Enable : out STD_LOGIC;

    R_s : out STD_LOGIC;

    Write : out STD_LOGIC);

    end separador;

    architecture Behavioral of separador is

    begin

    LCD

  • Puerto PS2

     Es un contacto de 6 pines tipo mini DIN

     Cada tecla proporciona un solo y único código de exploración que es enviado siempre que se presione la tecla

     Si se presiona la tecla y es sostenida el código de exploración será enviado en varias ocasiones cada 100 ms.

  •  Cuando se suelta la tecla presionada, el código FO se envía seguido del código de exploración de la tecla

     Algunas teclas llamadas teclas extendidas, envían un E0 delante del código de exploración

  •  El teclado envía datos al dispositivo principal en

    palabras de 11 bits, que contiene un bit de inicio 0,

    seguidas por 8 bits del código de exploración (LSB

    primero), seguidas por un bit de paridad impar y

    terminadas con un bit de paro 1.

  •  El teclado genera 11 transiciones de reloj (aproximadamente 20 – 30 Khz.) cuando se envían los datos y estos son válidos en el flanco de bajada

  • Programación en VHDL

  • Architecture Arq_Csp of Csp is begin

    Process (PS2C,inicio)is

    variable cuenta:std_logic_vector (3 downto 0):="0000";

    variable guardar:std_logic_vector (7 downto 0);

    variable s:std_logic :='1';

    begin

    if (inicio='1')then

    if (PS2C'event and PS2C='0') then

    cuenta:=cuenta+1;

    if (cuenta="0001") then

    Datos

  • Convertidor Digital

    Analógico

  •  DAC 12 bits de

    resolución LTC2624

     Compatible SPI (

    serial peripheral

    interface )

     4 canales

  • Comunicación SPI

     El bus SPI es full-duplex, síncrono.

     El maestro del bus - el fpga - genera la señal de reloj del bus SPI_SCK y transmite los datos de manera serial SPI_MISO al esclavo seleccionado - el DAC - al mismo tiempo el bus del esclavo regresa los datos enviados a través de SPI_MISO de manera serial al maestro

  • Conexión digital analógica

  •  SPI_MOSI, SPI_MISO, y SPI_CLK son señales que

    están compartidas con otros dispositivos del bus SPI.

     La señal DAC_CS se activa en bajo y selecciona la

    entrada al DAC.

     La señal DAC_CLR se activa en activa en bajo y es un

    reset asíncrono del DAC

  •  Cada bit se transmite o se recibe de acuerdo a la señal de reloj SPI_SCK el bus soporta frecuencias máximas hasta de 50 MHz aunque algunos parámetros pueden estar limitados.

     Después de enviar la señal DAC_CS a un nivel bajo el fpga transmite los datos a través de SPI_MOSI enviando el bit MSB primero, el LTC2624 captura los datos de entrada en el flanco de subida de SPI_SCK los datos deben mantenerse al menos 4 ns.

     El LTC2624 transmite los datos a través de SPI_MISO en el flanco de bajada de SPI_SCK .

     Después de transmitir los 32 bits, el fpga completa la transición mandando la señal DAC_CS a un nivel alto y comienza el proceso de conversión digital-analógica dentro del DAC.

  • Protocolo de comunicación

    Dentro del DAC, la interface SPI esta compuesta por un registro de corrimiento de 32 bits; cada palabra de 32 bits esta formada por: un comando, una dirección y un valor.

    El fpga envía primero 8 bits que no importa su valor, seguido por un comando de 4 bits, el comando mas utilizado en el sistema de desarrollo es COMMAND[3:0]=“0011” el cual activa inmediatamente la salida del DAC seleccionada con el valor especificado.

    Después el fpga selecciona uno o todos los canales de salida del DAC a través de un campo de dirección de 4 bits.

    A continuación el fpga envía el valor del dato de 12 bits sin signo que el DAC convierte a un valor analógico y lo envía por la salida seleccionada

  •  Finalmente se envían 4 bits cuyo valor no importa para formar el

    comando de 32 bits

  • Voltaje de salida del DAC

     El voltaje de salida viene dado por:

     El voltaje de referencia es diferente para los 4 canales de DAC

     Los canales A y B usan un voltaje de referencia de 3.3 v

     Los canales C y D usan un voltaje de referencia de 2.5 v

  •  Salidas A y B del

    DAC

     Viene expresado por

    la siguiente ecuación

     El voltaje de

    referencia asociado

    es de 3.3 v con una

    tolerancia de +/- 5%

     Salidas C y D del

    DAC

     Viene expresado por

    la siguiente ecuación

     El voltaje de

    referencia asociado

    es de 2.5 v con una

    tolerancia de +/- 5%

  • Localización UCF

  • Programación en VHDL

  • Convertidor Analógico Digital

     Preamplificador

    programable LTC6912I (j7)

     ADC LTC1407A

     Ambos programables

    serialmente

  • Circuito de captura analógica

  •  El circuito de captura analógica convierte el voltaje de VINA o

    VINB y lo convierte a una representación digital de 14 bits, que

    viene expresada por:

    La ganancia se especifica en el preamplificador programable

  • Preamplificador programable

     La finalidad del preamplificador

    es escalar el voltaje de entrada

    VINA o VINB de tal forma que se

    maximice el rango de conversión

    del ADC.

     Cada canal tiene asociado un

    amplificador de ganancia

    programable

  • Control de la interface SPI

     Cuando la señal AD_CONV va a alto, el ADC simultáneamente muestrea ambos canales analógicos.

     El resultado no se presenta hasta la próxima señal en AD_CONV

     La máxima razón de muestreo es de 1.5 MHz

     La señal muestreada se representa en notación complemento a 2 en 14 bits

  •  Manipular con cuidado la señal AD_CONV y asegurarse de proporcionar los suficientes ciclos de reloj SPI_SCK para que la señal SPI_MISO salga del estado de alta impedancia, de otra manera el ADC bloquea la comunicación con otros periféricos SPI.

     Se utiliza una secuencia de comunicación de 34 ciclos