Widora-NEO: 通过usb玩跑马灯和接TFT屏



  • 通过FTDI芯片可以实现从USB到UART,I2C,BIT_BANG,SPI,JTAG等各种通用接口的转换, 在Widora-NEO上将FTDI 芯片设置成BIT_BANG模式,即可以实现8位并口的输出,循环输出设定数据就可以实现跑马灯功能了。
    具体步骤如下:

    1. 从https://www.intra2net.com/en/developer/libftdi/download.php 下载libftdi1-1.4.tar.bz2
      解压 tar -jxvf libftdi1-1.4.tar.bz2

    2. 修改 解压目录libftdi1-1.4下面的CMakeLists.txt 文件, 在#Project段结束后增加如下内容 (具体目录按照你自己的配置):
      #--- for cross compile -----
      SET (CMAKE_SYSTEM_NAME Linux)
      SET (CMAKE_SYSTEM_PROCESSOR MIPS)  
      SET (TOOLCHAIN_DIR "/home/midas/openwrt_widora/staging_dir/toolchain-mipsel_24kec+dsp_gcc-4.8-linaro_uClibc-0.9.33.2")
      SET (CMAKE_FIND_ROOT_PATH "/home/midas/openwrt_widora/staging_dir/toolchain-mipsel_24kec+dsp_gcc-4.8-linaro_uClibc-0.9.33.2")
      SET (CMAKE_C_COMPILER "/home/midas/openwrt_widora/staging_dir/toolchain-mipsel_24kec+dsp_gcc-4.8-linaro_uClibc-0.9.33.2/bin/mipsel-openwrt-linux-gcc")
      SET (CMAKE_CXX_COMPILER "/home/midas/openwrt_widora/staging_dir/toolchain-mipsel_24kec+dsp_gcc-4.8-linaro_uClibc-0.9.33.2/bin/mipsel-openwrt-linux-g++")

    3. 在libftdi1-1.4目录下mkdir build, 进入build目录执行 cmake ../

    4. 在libftdi1-1.4目录下执行 make
      完成后在 libftdi1-1.4/build/src 下生成库文件 libftdi1.so.2.4.0

    5. 把 libftdi1.so.2.4.0 和原来编译好的 libusb-1.0.so.0.1.0(或者从widora-neo的/usr/lib下面scp过来) 复制到libftdi1-1.4/examples 目录下, 分别做软链接 libftdi1.solibusb-1.0.so 。也可以在编译的时候指定库目录。

    6. 以编译bitbang.c为例:
      6.1 将mips的gcc工具链接到libftdi1-1.4/examples 目录下的openwrt-gcc
      6.2 将#include <ftdi.h> 改为ftdi.h所在的实际目录。
      6.3在源文件中将 ftdi_usb_open(ftdi, 0x****,0x*****) 中的*分别替换成你的FTD设备的VID和PID (可以用lsusb命令来查看得到)
      6.4 编译 openwrt-gcc -L. -lusb-1.0 -lftdi1 -o bitbang bitbang.c
      (也可以参考 https://github.com/widora/ctest/blob/master/bitbang.c )

    0_1511951031975_bits.jpg



  • 20MBytes/s的8位并口输出速度带个480x320的彩屏应该非常宽裕了。
    0_1511661817570_FT232H_speed.jpg
    0_1511661830260_FT232H_20MB.jpg



  • 实际的usb传输速度达到~12MBytes/s
    0_1511871220647_bit.JPG


  • administrators

    如果usb口屏幕应该很好玩,
    我记得之前国内有一个,微雪上有卖,stm32做的,不过略贵。
    如果做成如同usb video类设备,所有的嵌入式板子都可以用上了



  • @mango 先试着和ILI9488控制的TFT屏8位并口接上,控制线好像还是要做下逻辑变换,毕竟不是专门芯片。
    LCD与widora-neo和FT232H的连接方式如下:
    0_1513724649641_outlay.JPG

    0_1512263178784_ftf.jpg
    芝麻开门!
    0_1512379821531_widora_logo.jpg

    连续加载显示几十张连续的bmp图片,感觉此速度下动画播放已经很连贯了。
    http://v.youku.com/v_show/id_XMzI4NjkwMzEwOA==.html?spm=a2hzp.8244740.0.0
    源代码:https://github.com/widora/ctest/blob/master/ft232_tft.c