最近想用LM3S811驱动一块3.2寸TFT,控制器为ssd1289,程序能通过,但是有几个问题:
1.我模拟16位并口的,感觉刷屏有点慢,能有更好的算法提高响应速度吗?
2.当我想显示图片或用汉字字库时就发现内存不够了,能通过增加内存芯片或SD卡的方法解决吗?
请各位帮帮忙啊
#define D0 GPIO_PIN_5 #define D1 GPIO_PIN_7 #define D2 GPIO_PIN_0 #define D3 GPIO_PIN_6 #define D4 GPIO_PIN_2 #define D5 GPIO_PIN_4 #define D6 GPIO_PIN_4 #define D7 GPIO_PIN_1 #define D8 GPIO_PIN_0 #define D9 GPIO_PIN_3 #define D10 GPIO_PIN_2 #define D11 GPIO_PIN_5 #define D12 GPIO_PIN_0 #define D13 GPIO_PIN_1 #define D14 GPIO_PIN_1 #define D15 GPIO_PIN_3
void LCD_DATA(uint data) //模拟并口发送数据 {
if((data >> 0) & 0x01) GPIOPinWrite(PC, D0, D0); else GPIOPinWrite(PC, D0, ~D0); if((data >> 1) & 0x01) GPIOPinWrite(PC, D1, D1); else GPIOPinWrite(PC, D1, ~D1); if((data >> 2) & 0x01) GPIOPinWrite(PA, D2, D2); else GPIOPinWrite(PA, D2, ~D2); if((data >> 3) & 0x01) GPIOPinWrite(PC, D3, D3); else GPIOPinWrite(PC, D3, ~D3); if((data >> 4) & 0x01) GPIOPinWrite(PA, D4, D4); else GPIOPinWrite(PA, D4, ~D4); if((data >> 5) & 0x01) GPIOPinWrite(PC, D5, D5); else GPIOPinWrite(PC, D5, ~D5); if((data >> 6) & 0x01) GPIOPinWrite(PA, D6, D6); else GPIOPinWrite(PA, D6, ~D6); if((data >> 7) & 0x01) GPIOPinWrite(PA, D7, D7); else GPIOPinWrite(PA, D7, ~D7); if((data >> 8) & 0x01) GPIOPinWrite(PD, D8, D8); else GPIOPinWrite(PD, D8, ~D8); if((data >> 9) & 0x01) GPIOPinWrite(PA, D9, D9); else GPIOPinWrite(PA, D9, ~D9); if((data >> 10) & 0x01) GPIOPinWrite(PD, D10, D10); else GPIOPinWrite(PD, D10, ~D10); if((data >> 11) & 0x01) GPIOPinWrite(PA, D11, D11); else GPIOPinWrite(PA, D11, ~D11); if((data >> 12) & 0x01) GPIOPinWrite(PB, D12, D12); else GPIOPinWrite(PB, D12, ~D12); if((data >> 13) & 0x01) GPIOPinWrite(PD, D13, D13); else GPIOPinWrite(PD, D13, ~D13); if((data >> 14) & 0x01) GPIOPinWrite(PB, D14, D14); else GPIOPinWrite(PB, D14, ~D14); if((data >> 15) & 0x01) GPIOPinWrite(PD, D15, D15); else GPIOPinWrite(PD, D15, ~D15);
}
|