Está en la página 1de 50

DIPLOMADO EN SISTEMAS

DIGITALES
USO DE LOS
PERIFERICOS DEL
SISTEMA DE
DESARROLLO
SPARTAN 3E

Instructor:
MC. Rodrigo Lucio Maya Ramrez
Uso del LCD
Operacin escritura
Operacin lectura
Inicializacin con 4 bits
Conjunto de caracteres en el
LCD
Conjunto de comandos
Interfase de datos de 4 bits
Inicializacin LCD
Conexiones del LCD
Programacin 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<= "0000000" when "000000",

"0011100" when "000001",--3H
"0011000" when "000010",
"0100101" when "011001",--H
"0100001" when "011010", --COMENZANDO A
ENVIAR DATOS DE SALIDA
. . .

"0000000" when others;
end Behavioral;


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<=entrada(6 downto 3);
Enable<=entrada(2);
Write<=entrada(1);
R_s<=entrada(0);
end Behavioral;e
Puerto PS2
Es un contacto de 6
pines tipo mini DIN
Cada tecla proporciona
un solo y nico cdigo
de exploracin que es
enviado siempre que
se presione la tecla
Si se presiona la tecla
y es sostenida el
cdigo de exploracin
ser enviado en varias
ocasiones cada 100
ms.
Cuando se suelta la
tecla presionada, el
cdigo FO se enva
seguido del cdigo de
exploracin de la tecla

Algunas teclas
llamadas teclas
extendidas, envan un
E0 delante del cdigo
de exploracin
El teclado enva datos al dispositivo principal en
palabras de 11 bits, que contiene un bit de inicio 0,
seguidas por 8 bits del cdigo de exploracin (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 envan
los datos y estos
son vlidos en el
flanco de bajada
Programacin 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<="00000000";
enable<='0';
elsif (cuenta="0010") then
guardar(0):=PS2D;
elsif (cuenta="0011") then
guardar(1):=PS2D;
elsif (cuenta="0100") then
guardar(2):=PS2D;
elsif (cuenta="0101") then
guardar(3):=PS2D;
elsif (cuenta="0110") then
guardar(4):=PS2D;
elsif (cuenta="0111") then
guardar(5):=PS2D;
elsif (cuenta="1000") then
guardar(6):=PS2D;
elsif (cuenta="1001") then
guardar(7):=PS2D;
elsif (cuenta="1011") then
if (guardar="11110000") then
s:='0';
enable<='0';
elsif (guardar="11100000") then
enable<='0';
else
if (s='1') then
Datos<=guardar;
enable<='1';
else
enable<='0';
s:='1';
end if;
end if;
cuenta:="0000";
end if;
end if;
else
enable<='0';
s:='1';
Datos<="00000000";
end if;
end process;
end Arq_Csp;
Convertidor Digital
Analgico
DAC 12 bits de
resolucin LTC2624
Compatible SPI (
serial peripheral
interface )
4 canales

Comunicacin SPI
El bus SPI es full-duplex,
sncrono.
El maestro del bus - el fpga -
genera la seal 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 travs de
SPI_MISO de manera serial
al maestro
Conexin digital analgica
SPI_MOSI, SPI_MISO, y SPI_CLK son seales que
estn compartidas con otros dispositivos del bus SPI.
La seal DAC_CS se activa en bajo y selecciona la
entrada al DAC.
La seal DAC_CLR se activa en activa en bajo y es un
reset asncrono del DAC
Cada bit se transmite o se recibe de acuerdo a la seal de reloj SPI_SCK el bus
soporta frecuencias mximas hasta de 50 MHz aunque algunos parmetros pueden
estar limitados.

Despus de enviar la seal DAC_CS a un nivel bajo el fpga transmite los datos a
travs 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 travs de SPI_MISO en el flanco de bajada de
SPI_SCK .

Despus de transmitir los 32 bits, el fpga completa la transicin mandando la seal
DAC_CS a un nivel alto y comienza el proceso de conversin digital-analgica dentro
del DAC.
Protocolo de comunicacin
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 direccin y un valor.
El fpga enva 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.
Despus el fpga selecciona uno o todos los canales de salida del
DAC a travs de un campo de direccin de 4 bits.
A continuacin el fpga enva el valor del dato de 12 bits sin signo
que el DAC convierte a un valor analgico y lo enva por la salida
seleccionada
Finalmente se envan 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 ecuacin


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 ecuacin


El voltaje de
referencia asociado
es de 2.5 v con una
tolerancia de +/- 5%

Localizacin UCF
Programacin en VHDL
Convertidor Analgico Digital

Preamplificador
programable LTC6912I (j7)

ADC LTC1407A

Ambos programables
serialmente
Circuito de captura analgica
El circuito de captura analgica convierte el voltaje de VINA o
VINB y lo convierte a una representacin 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 conversin
del ADC.




Cada canal tiene asociado un
amplificador de ganancia
programable
Control de la interface SPI
Cuando la seal AD_CONV va a alto, el ADC simultneamente
muestrea ambos canales analgicos.
El resultado no se presenta hasta la prxima seal en AD_CONV
La mxima razn de muestreo es de 1.5 MHz
La seal muestreada se representa en notacin complemento a 2
en 14 bits
Manipular con cuidado la seal AD_CONV y asegurarse de
proporcionar los suficientes ciclos de reloj SPI_SCK para que la
seal SPI_MISO salga del estado de alta impedancia, de otra
manera el ADC bloquea la comunicacin con otros perifricos
SPI.
Se utiliza una secuencia de comunicacin de 34 ciclos

También podría gustarte