I TFT-LCD-Bildschirm bin mit (ILI9163c-160 * 128). Es ist verbunden mit athrosAR9331 Modul mit spi. Athros AR9331 läuft mit OpenWRT Linux Distribution. Also fahre ich mein LCD mit spidev0.1. Wenn Sie den Bildschirm füllen oder eine Zeichenfolge auf dem LCD-Bildschirm schreiben, dauert das Drucken zu lange. Also, was kann ich tun, um eine ausreichende Druckgeschwindigkeit zu erhalten?Ausgabe mit TFT-LCD-Bildschirm Geschwindigkeit
Danke.
Dies ist die Funktion ich verwende Daten auf spi Stift schreiben spidev mit ...
void spi_transactor(unsigned char *write_data, int mode,int size)
{
int ret;
struct spi_ioc_transfer xfer[4];
unsigned char *init_reg;
init_reg = (unsigned char*) malloc(size);
memcpy(init_reg,write_data,size);
if (mode)
{
gpio_set_value(_rs, 1); // DATA
}
else
{
gpio_set_value(_rs, 0); // COMMAND
}
memset(xfer, 0, sizeof xfer);
xfer[0].bits_per_word = 8;
xfer[0].tx_buf = (unsigned long)init_reg;
xfer[0].rx_buf = 0; //(unsigned long) &buf_rx[0];
xfer[0].len = size; //wlength + rlength;
xfer[0].delay_usecs = 0;
xfer[0].speed_hz = speedx; // 8MHZ
//xfer[0].speed_hz = 160000000; // 40MHZ
ret = ioctl(spi_fd, SPI_IOC_MESSAGE(1), &xfer);
gpio_set_value(_rs, 1);
}
Hart im Allgemeinen zu sagen. Ich nehme an, dass Sie Speedx auf das Maximum eingestellt haben. Versuchen Sie, so viele Daten wie möglich in eine einzige Anfrage zu packen? Versuchen Sie, optimale Anzeigebefehle für das zu verwenden, was Sie anzeigen möchten? – Ctx
ya ... das stimmt. Und ich versuche, so viele Daten wie möglich in eine einzige Anfrage zu packen, weil ich das ganze Bild des 160 * 128 Feldes drucken muss. Also zerbringe ich dieses Array in einigen Chunks und übertrage all diese Chunks einzeln. – Logan859
Und was ist das Problem, * fbtft * -Treiber in eine Distribution hinzuzufügen und es als normale Konsole oder als tty-Fenster zu verwenden? – 0andriy