[技术问题解答] imx6q 串口硬件流控

[复制链接]
 楼主| ach_dmatek 发表于 2016-9-28 14:11 | 显示全部楼层 |阅读模式
本帖最后由 ach_dmatek 于 2016-9-28 14:30 编辑

目前的问题是采用硬件流控之后,可以接收资料,但是无法发送。示波器测试的,TX脚根本就没有信息发出去。
有调试过硬件流控制的指导一下。谢谢。
 楼主| ach_dmatek 发表于 2016-9-29 09:27 | 显示全部楼层
没有人回答吗?我目前还不确定imx6q的kernel中关于tty的驱动是否有问题?是否有人可以解答?
 楼主| ach_dmatek 发表于 2016-9-29 09:35 | 显示全部楼层
关于核心驱动的配置如下:
1、配置串口的GPIO属性:
    mxc_iomux_v3_setup_multiple_pads(mx6q_uart_pads, ARRAY_SIZE(mx6q_uart_pads));
           /* UART4 */
        MX6Q_PAD_CSI0_DAT12__UART4_TXD,                /* GPIO_5_30 */
        MX6Q_PAD_CSI0_DAT13__UART4_RXD,                /* GPIO_5_31 */
        MX6Q_PAD_CSI0_DAT16__UART4_RTS,                /* GPIO_6_2 */
        MX6Q_PAD_CSI0_DAT17__UART4_CTS,                /* GPIO_6_3 */
2、初始化串口的硬件流控特征:
    imx6q_add_imx_uart(3, &mx6q_sd_uart4_data);
static const struct imxuart_platform_data mx6q_sd_uart4_data __initconst = {
        .flags      = IMXUART_HAVE_RTSCTS |IMXUART_SDMA,
        .dma_req_rx = MX6Q_DMA_REQ_UART4_RX,
        .dma_req_tx = MX6Q_DMA_REQ_UART4_TX,
};

3、就是在串口应用程式是使用硬件流控的属性:
     在串口配置时加上options.c_cflag |= CRTSCTS;

基本步骤就是上面这些。还需要那些配置吗?
 楼主| ach_dmatek 发表于 2016-9-29 16:14 | 显示全部楼层
测试中发现,打开硬件流控的话,数据根本就发不出去。是什么回事啊?是不是驱动存在问题呢?有了解的请回答一下。
 楼主| ach_dmatek 发表于 2016-9-30 08:51 | 显示全部楼层
大家就没有遇到这个问题吗?
 楼主| ach_dmatek 发表于 2016-9-30 13:37 | 显示全部楼层
终于搞定了,fsl的bug。
Jolinery 发表于 2016-10-14 20:43 | 显示全部楼层
您好,我也遇到和您一样的问题,请问您是怎么解决的!
Jolinery 发表于 2016-10-22 17:39 | 显示全部楼层
总于解决了,我觉得不是fsl的bug
您需要登录后才可以回帖 登录 | 注册

本版积分规则

13

主题

178

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部