Paso 3: codificación
Codificación es quizás la parte más difícil. El algoritmo contiene lo siguiente:
1 x circuito principal general para crear una instancia de todos los módulos
Comparadores de x 2
1 x pantalla de decodificador para la 3 Basys
1 x módulo controlador proporcionado por Xilinx
1 x módulo de controlador de Motor
1 x módulo de contador del Motor para conducir el motor durante un tiempo
1 x lector módulo para la temperatura de las sondas
1 x reloj global para el código
3 divisores de reloj dentro del código para retrasar la señal de reloj
1 x módulo de contador para controlar la temperatura fijada por el usuario indicado arriba o abajo
1 configuración del archivo maestro x Basys 3
Se sugiere utilizar Vivado 2014 para la codificación de este proyecto, porque es el mismo programa que utilizamos. La Web de Digilent tiene gran tutoriales sobre cómo empezar con Vivado.
Instrucciones para la codificación:
Referencia archivos: antes de hacer algo, primero debe crear un nuevo proyecto en Vivado. Luego podrás añadir nuestros archivos como fuentes para usar como referencias. Sin crear el proyecto en Vivado, los archivos no se abren.
1. crear por separado cada módulos en el nivel inferior. Si es posible probar los módulos individuales mientras trabaja.
2. los módulos comparador son los más fáciles de construir y probar en este momento. Son menos-que-o-igual que los comparadores que comparar los siguientes: la temperatura interior y la temperatura exterior y la temperatura que el usuario establece (con el módulo de contador de incremento/decremento) y la temperatura en el interior.
3. agregar los archivos para el decodificador de siete segmentos y divisores de reloj. Poner esto en los módulos separados primero para la prueba (enlaces de codificación).
4. crear los módulos de control para la prueba (codificación enlaces) y sondas de temperatura. La sonda lee la temperatura en grados Celsius.
5. crear los módulos de control para el motor y la prueba. Esto incluye el controlador del motor y motor contador (enlaces de codificación).
6. crear el módulo de contador y lo prueba con la pantalla para ver si correctamente aumenta o disminuye.
7. crear el controlador desde el código de Xilinx y probarlo para ver si los LEDs se mueven correctamente (codificación de enlaces).
8. mapa de los sistemas juntos en un archivo del circuito principal.
9. Coloque en las entradas y salidas en el fichero de configuración maestro Basys 3.
También subido los archivos VHDL sirven para su referencia. Todos los archivos han sido comentados para ayudar a comprender la función de cada módulo y sus componentes. Mire la imagen subida para la estructura jerárquica de los archivos dentro de Vivado.
Nota: Los archivos de proyecto pueden venir para arriba con un error durante la ejecución para el archivo del sensor de luz. El circuito funcionará, hay sólo un pequeño error.
Codificación de la vínculos
Outsidecode, información para ayudar a nuestro proyecto del código se proporcionarán aquí.
Sonda de temperatura:
Hojas de datos de la sonda de temperatura (para saber qué puertos hacen qué) pueden encontrarse aquí: http://www.adafruit.com/datasheets/MAX6675.pdf
Motor:
El código de motor fue traducido de Arduino de código en VHDL, y nuestro código ya refleja. Para un arranque básico en el código se puede consultar aquí: https://learn.adafruit.com/adafruit-arduino-lesson... Divisor de reloj y siete segmentos decodificador VHDL:
Obtenidos bajo licencia de Creative Commons de Brian harinoso y Fabrizio Tappero.
Reloj divisor del código de la página 151 y SSEG decodificador de página 163 del libro Gratis de gama de VHDL por Brian Mealy y Fabrizio Tappero: http://freerangefactory.org/pdf/free_range_vhdl.pd...
Sensor de luz:
Código de sensor de luz, cortesía de Xilinx:
https://Reference.digilentinc.com/basys3:xadcdemo Configuración de archivo maestro de Basys 3:
Mapa de las salidas de señal apropiada del código para el archivo maestro de Basys 3, que puede encontrarse aquí:
https://www.digilentinc.com/data/Products/BASYS3/b...
También se ha incluido un archivo de referencia. Este archivo maestro es saber qué puertos son que es importante para el proyecto.