注册 登录
电子工程世界-论坛 返回首页 EEWORLD首页 频道 EE大学堂 下载中心 Datasheet 专题
xupz123的个人空间 https://home.eeworld.com.cn/space-uid-339170.html [收藏] [复制] [分享] [RSS]
日志

SSD1289编程3.2寸TFT

已有 2260 次阅读2012-1-17 23:30

最近想用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);

}

评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册

热门文章