Widora-NEO: 应用触摸屏



  • 0_1543193684606_touch1.jpg

    触摸屏和TFT-LCD屏组成一个模块,LCD控制器为ILI9341,接口为SPI-4wire; 电阻触摸屏控制器为XPT2046,其接口为SPI-3wire。
    这样整个LCD模块就需要2个SPI片选信号引脚,Openwrt-widorao一共只有2个SPI片选脚,其中CS0已分配给了flash,CS1可用于TFT-LCD,因此需要想办法再增加1个片选用于触摸屏。

    1. LCD屏显示是基于Framebuffer的,根据widora维基大本营的教程 http://wiki.widora.cn/ips 来进行配置即可。

    2. 感谢liuchen_csdn的博文----"为MT7688 SPI添加N个SPI接口"
      参考学习后,就可以方便地用GPIO来模拟出另外2个SPI片选脚了。 我这里将GPIO41和42模拟成CS2和CS3. 参考[0_1543206777170_spi_Ncs.tar.gz]
      (/assets/uploads/files/1543206777440-spi_ncs.tar.gz)
      dts 部分:
      0_1543192966896_spidev.jpg
      在/dev下相应生成2个spidev:
      0_1543195488106_devlist.jpg

    3. 最后将CS1连接到LCD的控制器片选接口,将CS2(GPIO41)连接到触摸屏控制器片选接口,其他MISO, MOSI, CLK等接口线共用。

    4. 参考网络上的开源教程,做了一个简单的触摸写字试验程序:https://github.com/widora/ctest/tree/master/XPT2046
      效果