如何在OSX上使用波特率为4mb的FTDI?
是否可以在Apple的FTDI驱动程序中使用4mb的波特率(B4000000)?或者FTDI的VCP驱动程序更好?如何在OSX上使用波特率为4mb的FTDI?
速度高达B230400在termios.h(*)中定义,每个速度被定义为匹配其速度的整数(与Linux不同)。但是,简单的破解#define B4000000 4000000
不起作用。
我记得在5年前(在苹果提供了一个驱动程序之前)使用4MB的FTDI,使用FTDI的VCP驱动程序,并且盗号FTDIUSBSerialDriver.kext/Contents/Info.plist
使其中一个“允许”速度(如B2400)被别名为4mb驱动程序。这仍然是推荐的方法吗? (我想这将需要禁用的kext安全性,sudo nvram kext-dev-mode=1
)
我使用的波特率这样,在serBaudRate
是一样的东西B2400
或(理想)B4000000
。
if ((fd = open(serPortName, O_RDWR)) < 0) { perror("aborting"); return; }
tcgetattr(fd, &tty); /* get attributes */
cfsetospeed(&tty, (speed_t) serBaudRate); /* output speed */
cfsetispeed(&tty, (speed_t) serBaudRate); /* input speed */
tcsetattr(fd, TCSANOW, &tty); /* set attributes */
(*)的完整路径是/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include/sys/termios.h
我记得能够在5年前使用4MB与FTDI使用FTDI的VCP驱动程序和黑客 FTDIUSBSerialDriver( 之前苹果提供的驱动程序) .kext/Contents/Info.plist,以使驱动程序将“允许”的速度(如B2400)设为 。这个 仍然是推荐的方法吗? (我想这将需要禁用 内核扩展的安全性,使用sudo NVRAM KEXT-DEV-MODE = 1)。
我怀疑这是做到这一点的唯一途径。 Apple驱动程序非常基础(几年前它甚至不支持CTS/RTS信号),我也没有看到任何指定非标准波特率的方式。看起来FTDI Info.plist
仍然支持这些波特率配置选项。