我有个产品,上面用了BIT3,还有一个STM32。widora要与stm32通讯,目前是用的串口,但是速度太慢,想改用SPI。(其实也考虑过用usb,但是对usb间的通讯不熟悉,如果用usb模拟串口,似乎可以使用比较高的波特率,但是openwrt这端的ST家的usb模拟串口驱动不知道怎么搞,如果SPI搞不定,再考虑使用usb的方案)。
似乎MT7688的SPI有些问题。我了解到的情况:MT7688的SPI与Flash共用,那么只能作为master,使用CS1作为片选。MT7688的SPI是单工,以前用过stm32的spi,是双工的。不知道单工怎么搞。网上有人说单工就是miso和mosi共用,但是mt7688的mosi和miso是分开的拉,所以不太明白这个单工是表示啥意思。
有网上搜了一下,wrtnode2R可以让 mt7688 和 stm32 通讯,他们好像重写了 mt7688 侧的 spi 驱动,似乎是闭源的。
之前@prince有个帖子 http://sns.widora.io/topic/218/分享一个非硬件spi控制的spi屏幕应用程序 ,使用spi挂lcd,开始用的软件spi,后来在@mango的帮助下改用硬spi并且成功。那个帖子里面 mango 贴出了spi的接线图,但是关于程序的说明基本没有。
请教一下,现在的bit3出货的时候带的固件,里面的spi能正常使用么?因为在/dev/下有/dev/spidev32766.1,似乎固件中加载了spi的驱动,但是不知道固件自己的带的 spi 驱动能不能正常使用。
还有就是bit3这边如果要使用 spi,是以哪种方式使用?必须使用 c 写一个程序?还是可以使用 lua 之类的,打开一个“文件”,读写就可以了,就跟串口的使用一样。
另外,使用 opkg list | grep spi 搜索了一下,发现 spi 相关的包不少。确认kmod-spi-gpio这个东东是用 gpio 来模拟spi,速度太慢,就不用考虑了。其他的一些包不知道做啥用的。
谢谢!