Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Embedded 配置minicom以使用硬件流控制_Embedded_Hardware_Uart_Flow Control_Omap - Fatal编程技术网

Embedded 配置minicom以使用硬件流控制

Embedded 配置minicom以使用硬件流控制,embedded,hardware,uart,flow-control,omap,Embedded,Hardware,Uart,Flow Control,Omap,寻找一些帮助测试UART实现与硬件流控制器。为了测试实现,我使用minicom来模拟串行链路的另一端,并希望了解如何配置它 我有一个简单的应用程序,它通过UART将消息从OMAP发送到minicom。如果OMAP和minicom都配置为不使用硬件流控制,则此功能将正常工作。当我打开硬件流控制时,我在minicom上看不到任何输出 以下是我遵循的步骤列表: 将minicom配置为使用硬件流量控制(Ctl A-O打开minicom串行端口设置菜单,F打开硬件流量控制) 使用sttyI启用rts/c

寻找一些帮助测试UART实现与硬件流控制器。为了测试实现,我使用
minicom
来模拟串行链路的另一端,并希望了解如何配置它

我有一个简单的应用程序,它通过UART将消息从OMAP发送到minicom。如果OMAP和minicom都配置为不使用硬件流控制,则此功能将正常工作。当我打开硬件流控制时,我在minicom上看不到任何输出

以下是我遵循的步骤列表:

  • 将minicom配置为使用硬件流量控制(Ctl A-O打开minicom串行端口设置菜单,F打开硬件流量控制)
  • 使用
    stty
    I启用rts/cts握手
    stty-F/dev/ttyS1 crtscts
    。使用命令stty-F/dev/ttyS1-a我可以确认crtscts已启用
上述两项更改确保在终端程序和UART驱动程序中启用硬件流控制。OMAP上的UART也已配置为使用硬件流控制

然而,上面列出的对minicom的更改似乎不足以让流量控制正常工作。启动应用程序后,来自OMAP的RTS(发送请求)信号变低,表明minicom希望发送数据。如果配置正确,minicom应将OMAP的CTS(清除发送)信号拉低,并开始接收数据,直到达到指定的接收缓冲区阈值。这种情况不会发生。至OMAP的CTS输入始终为高。只是为了好玩,我试着在OMAP上短接RTS到CTS,瞧,预期的消息确实出现在minicom上!这里有一张图片显示了两者是如何连接起来的


从我的尝试来看,我似乎在配置minicom的方式中遗漏了一些东西。非常感谢您的建议。

这里有什么问题吗?看看您是否可以使用stty将电脑的CTS线路设置为低位。如果是的话,这是minicom的问题,如果不是的话,这是驱动程序/硬件问题(你甚至可以在没有足够电线的情况下使用电缆)。无论如何,您可能想编写自己的程序,因为要让minicom发出未完成的信号可能很困难-在现代PC上,您可能需要一个故意忽略及时读取()的程序。只需发送停止信号,如
kill-Stop$(pidof minicom)
。要继续,请使用
CONT
@Dan这是更多…以下是我迄今为止尝试过的…一切看起来都正常吗:)@Chris Stratton关于电缆的好提示。在我的情况下,电缆不是问题,但在我的下一次测试中,我确实遇到了一根没有连接CTS/RTS的电缆。可能节省了我一天的调试时间:)