Widora-NEO: 通过usb玩跑马灯和接TFT屏
-
通过FTDI芯片可以实现从USB到UART,I2C,BIT_BANG,SPI,JTAG等各种通用接口的转换, 在Widora-NEO上将FTDI 芯片设置成BIT_BANG模式,即可以实现8位并口的输出,循环输出设定数据就可以实现跑马灯功能了。
具体步骤如下:-
从https://www.intra2net.com/en/developer/libftdi/download.php 下载libftdi1-1.4.tar.bz2
解压 tar -jxvf libftdi1-1.4.tar.bz2 -
修改 解压目录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++") -
在libftdi1-1.4目录下mkdir build, 进入build目录执行 cmake ../
-
在libftdi1-1.4目录下执行 make
完成后在 libftdi1-1.4/build/src 下生成库文件 libftdi1.so.2.4.0 -
把 libftdi1.so.2.4.0 和原来编译好的 libusb-1.0.so.0.1.0(或者从widora-neo的/usr/lib下面scp过来) 复制到libftdi1-1.4/examples 目录下, 分别做软链接 libftdi1.so 和 libusb-1.0.so 。也可以在编译的时候指定库目录。
-
以编译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 )
-
-
20MBytes/s的8位并口输出速度带个480x320的彩屏应该非常宽裕了。
-
实际的usb传输速度达到~12MBytes/s
-
如果usb口屏幕应该很好玩,
我记得之前国内有一个,微雪上有卖,stm32做的,不过略贵。
如果做成如同usb video类设备,所有的嵌入式板子都可以用上了
-
@mango 先试着和ILI9488控制的TFT屏8位并口接上,控制线好像还是要做下逻辑变换,毕竟不是专门芯片。
LCD与widora-neo和FT232H的连接方式如下:
芝麻开门!
连续加载显示几十张连续的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