你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

2.4寸TFT驱动求助,不知道是什么驱动IC。。

[复制链接]
ss1969 提问时间:2016-11-7 10:57 /
小弟有个板子要搞一搞。。

2.4寸的lcd,标识型号FPC-T24QT10T2(搜不到。。。。)


37Pin,不带触摸(有上件位置没上),排除掉已知的pin之后,
剩下的pin非常像是FSMC驱动方式,包括NE1、D0~D15,NOE,NWE,A16都在,剩下一根我猜是reset
然后用确定没问题的(开发板可跑可驱动lcd)代码去试试
读出ID是0x0075
这就糊涂了 ,感觉是读错了,但是完全不知道怎么继续

贴下fsmc初始化和读ID代码:

  1. <span style="background-color: white;">void MX_FSMC_Init(void)
  2. {
  3.     FSMC_NORSRAM_TimingTypeDef Timing;

  4.     /** Perform the SRAM1 memory initialization sequence
  5.     */
  6.     hsram1.Instance = FSMC_NORSRAM_DEVICE;
  7.     hsram1.Extended = FSMC_NORSRAM_EXTENDED_DEVICE;
  8.     /* hsram1.Init */
  9.     hsram1.Init.NSBank = FSMC_NORSRAM_BANK1;
  10.     hsram1.Init.DataAddressMux = FSMC_DATA_ADDRESS_MUX_DISABLE;
  11.     hsram1.Init.MemoryType = FSMC_MEMORY_TYPE_SRAM;
  12.     hsram1.Init.MemoryDataWidth = FSMC_NORSRAM_MEM_BUS_WIDTH_16;
  13.     hsram1.Init.BurstAccessMode = FSMC_BURST_ACCESS_MODE_DISABLE;
  14.     hsram1.Init.WaitSignalPolarity = FSMC_WAIT_SIGNAL_POLARITY_LOW;
  15.     hsram1.Init.WrapMode = FSMC_WRAP_MODE_DISABLE;
  16.     hsram1.Init.WaitSignalActive = FSMC_WAIT_TIMING_BEFORE_WS;
  17.     hsram1.Init.WriteOperation = FSMC_WRITE_OPERATION_ENABLE;
  18.     hsram1.Init.WaitSignal = FSMC_WAIT_SIGNAL_DISABLE;
  19.     hsram1.Init.ExtendedMode = FSMC_EXTENDED_MODE_DISABLE;
  20.     hsram1.Init.AsynchronousWait = FSMC_ASYNCHRONOUS_WAIT_DISABLE;
  21.     hsram1.Init.WriteBurst = FSMC_WRITE_BURST_DISABLE;
  22.     /* Timing */
  23.     #if 0
  24.     Timing.AddressSetupTime = 2;
  25.     Timing.AddressHoldTime = 15;
  26.     Timing.DataSetupTime = 5;
  27.     Timing.BusTurnAroundDuration = 0;
  28.     Timing.CLKDivision = 16;
  29.     Timing.DataLatency = 17;
  30.     Timing.AccessMode = FSMC_ACCESS_MODE_A;
  31.     #else

  32.     Timing.AddressSetupTime = 10;
  33.     Timing.AddressHoldTime = 10;
  34.     Timing.DataSetupTime = 15;
  35.     Timing.BusTurnAroundDuration = 10;
  36.     Timing.CLKDivision = 16;
  37.     Timing.DataLatency = 17;
  38.     Timing.AccessMode = FSMC_ACCESS_MODE_B;
  39.     #endif
  40.     /* ExtTiming */

  41.     if (HAL_SRAM_Init(&hsram1, &Timing, NULL) != HAL_OK)
  42.     {
  43.         Error_Handler();
  44.     }

  45.     /** Disconnect NADV
  46.     */

  47.     __HAL_AFIO_FSMCNADV_DISCONNECTED();

  48. }</span>
复制代码
读ID代码
  1. <span style="background-color: white;">uint16_t lcdReadReg(uint8_t LCD_Reg)
  2. {
  3.     uint16_t d;

  4.     *(__IO uint16_t*)(Bank1_LCD_C) = LCD_Reg;
  5.     d = *(__IO uint16_t*)(Bank1_LCD_D);

  6.     return d;
  7. }

  8. void LCD_Init(void)
  9. {
  10.     lcdReset();

  11. //  lcdWriteCmd(0x00, 0x0001);
  12.     HAL_Delay(50); // delay 50 ms
  13.     DeviceCode = lcdReadReg(0x0000);
  14.     xprintf("LCD ID:0x%04x\r\n", DeviceCode); //打印LCD ID
  15. 。。。
  16. }</span>
复制代码



收藏 1 评论4 发布时间:2016-11-7 10:57

举报

4个回答
asssdz-382474 回答时间:2016-11-7 19:23:22
zhangdaijin 回答时间:2016-11-7 22:16:54
zhulikai 回答时间:2016-11-8 08:12:42
五哥1 回答时间:2018-5-25 10:06:43
ID把高8位与低8位颠倒一下

评分

参与人数 1蝴蝶豆 +2 收起 理由
zero99 + 2

查看全部评分

所属标签

相似问题

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版