Macos MAC OS X上的CDC驱动程序-设备总是忙
我正在编写一个应用程序,通过Win7、WinXP、MAC OS X和Linux(命令行)上的USB虚拟COM端口控制调制解调器,并使用飞思卡尔Kinetis K40 MCU作为USB到串行转换器(也称为虚拟COM端口)。内部固件使用CDC Class 02声明 我可以在Win7 64位PC上使用CDC类成功运行虚拟COM端口。存在一些与缓冲区相关的小通信问题,但我认为它基本上正常工作。我将TX和RX连接到MCU的内部UART和所有工作 当我尝试在MAC OS X上使用虚拟COM端口时,会出现问题。当我尝试发送/接收任何字节时,该设备会被识别为“tty.usbmodemxxx”。ZTerm(用于测试)会返回USB端口忙/不可用。我使用了自己的工具,FileDescriptor总是返回-1,因此无法访问它 然后,我尝试使用“cat/dev/tty.usbmodemxxx”和“screen/dev/tty.usbmodemxxx”从终端访问设备,这两个命令都使我返回了资源繁忙状态 如果我使用一个FTDI USB到串行转换器,它可以很好地工作ZTerm和我自己的应用程序 再次确认tty.usbmodem设备,但端口总是忙/不可用,而在我的原型板上独立运行的相同代码在Win7上工作 我在网上搜索了更多的内容,很多用户在MAC OS X上的CDC驱动程序上都有问题,但是他们中的大多数人都声称他们的设备没有连接,而我的设备“资源繁忙” 我尝试在7级使用MACOSX日志中的USB Prober,但一秒钟内会有大量警报,因此即使我进行过滤,也很难区分地雷 描述符似乎是正确的,因为有两个设备创建了CDC和CDC数据,但设备一直很忙,每隔2/3秒就有一个来自操作系统的handleOpen,在我看来就像是在我的设备上进行轮询,我的FTDI芯片也有同样的行为,所以它不可能是它 我怀疑MCU内的固件可能正在向操作系统返回忙碌状态,但情况似乎并非如此,因为在Win7上,CDC驱动程序都可以正常工作。 任何人最终都知道如何理解设备忙的原因,比如我的设备返回错误状态,或者可能是执事控制了我的设备而没有释放它** 任何帮助都将不胜感激 问候Macos MAC OS X上的CDC驱动程序-设备总是忙,macos,driver,cdc,Macos,Driver,Cdc,我正在编写一个应用程序,通过Win7、WinXP、MAC OS X和Linux(命令行)上的USB虚拟COM端口控制调制解调器,并使用飞思卡尔Kinetis K40 MCU作为USB到串行转换器(也称为虚拟COM端口)。内部固件使用CDC Class 02声明 我可以在Win7 64位PC上使用CDC类成功运行虚拟COM端口。存在一些与缓冲区相关的小通信问题,但我认为它基本上正常工作。我将TX和RX连接到MCU的内部UART和所有工作 当我尝试在MAC OS X上使用虚拟COM端口时,会出现问题