-- In English below
Hola a todos!, entre las cosas que ando trabajando y que pronto irán saliendo a la luz, os muestro el primer resultado de la integración con Silice (si alguien tiene curiosidad o quiere aprender
https://github.com/sylefeb/Silice).
Silice es una joya que ha hecho Sylvain Lefebvre, que básicamente es un lenguaje a alto nivel que transpila a verilog, los resultados de Sylvain son impresionantes.
Para utilizar los bloques no será necesario saber Silice, mi idea de utilizar Silice radica en poder abarcar de forma rápida, bloques para integrar hardware más rápido. Una vez generado el bloque ya se puede utilizar en Icestudio como cualquier otro.
Este primer paso de integración, es básicamente compatibilizar el verilog que esporta Silice para Icestudio y estoy trabajando en el flujo completo.
Estas próximas semanas iré mandando .ice para que todo el que quiera probarlos me pueda dar feedback.
Para este primer ejemplo he decidido hacerlo sobre una pantalla gráfica de 320x240 pixels que soporta RGB.
Esta en concreto tiene el driver ili9341. hay varios modelos muy fáciles de conseguir, algunos como esta están pensados para Arduino, incluso alguno podeis tenerla ya.
Esta que estoy utilizando yo, además de la pantalla lleva un lector SD y es touch panel, los precios son muy económicos, depende del modelo y fabricante rondan entre los 6 y 20€ aproximadamente.
Si comprais una porque queráis seguir este hilo y jugar con ello, tened cuidado que hay muchos modelos parecidos con diferentes chips, debéis aseguraos que el comprais tiene el chip ili9341. Además aseguraos que tiene todo el pinout ya que la pantalla soporta dos modos, un modo paralelo (que es el que vamos a usar inicialmente) que nos permitirá pintar con un alto framerate y luego un modo SPI que te permite manejar la pantalla con solo 4 cables pero con mucha menor frecuencia de refresco.
Os comento esto porque hay pantallas que aparentemente son iguales y sólo tienen mapeado en el pcb los pines del SPI.
Os adjunto una foto con el primer resultado, es simplemente un patrón RGB, pero es un gran paso. En cuanto prepare el bloque estos días os mando el .ice para quien quiera probar.
//ENGLISH
Hello everyone! Among the things that I am working on and that will soon be released, I show you the first result of the integration with Silice (if anyone is curious or wants to learn
https://github.com/sylefeb/Silice) .
Silice is a gem that Sylvain Lefebvre has made, which is basically a high-level language that transpiles to verilog, Sylvain's results are impressive.
To use the blocks it will not be necessary to know Silice, my idea of using Silice is to be able to quickly cover blocks to integrate faster hardware. Once the block is generated, it can be used in Icestudio like any other.
This first integration step is basically making the verilog that Silice exports compatible with Icestudio while I'm working on the complete flow.
These next few weeks I will be sending .ice so that everyone who wants to try them can give me feedback.
For this first example, I decided to do it on a 320x240 pixel graphics display that supported RGB.
This one in particular has the ili9341 driver. There are several models that are very easy to get, some of which are designed for Arduino, some of which you may already have.
This that I am using, in addition to the screen, it has an SD reader and it is a touch panel, the prices are very cheap, depending on the model and manufacturer, they are around between €6 and €20 approximately.
If you buy one because you want to follow this thread and play with it, be careful that there are many similar models with different chips, you must make sure that the one you buy has the ili9341 chip. Also make sure that it has all the pinout since the screen supports two modes, a parallel mode (which is the one we are going to use initially) that will allow us to paint with a high framerate and then a SPI mode that allows you to control the screen with only 4 cables but with a much lower refresh rate.
I'm telling you this because there are screens that apparently are the same and only have the SPI pins mapped on the pcb.
I am attaching a photo with the first result, it is just an RGB pattern, but it is a big step. As soon as I prepare the block these days I'll send you the .ice for whoever wants to try.