imx93evk Zephyr RS485

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

imx93evk Zephyr RS485

347 次查看
zefox
Contributor II

Hi,

 

I have been working on this issue for 2 days now and I am not progressing anymore. I am trying to use OSDP in Zephyr through the control_panel example. I have provided my files in the zip I attached below. 

My wiring is as follows:

zefox_0-1759916096527.png

 

 


I have checked that the GPIO17 is indeed multiplexed correctly. This is correct.
I have tried using pull-down resistors (10K) on the DE&/RE pin. Didn't do anything.
I have tried sending test data directly using the serial driver in Zephyr. Didn't work.

I can tell it is sending correctly because my reader is correctly receiving a message. But the DE pin always stays high. This means it won't receive anything. Which is exactly what I am observing. 

I have had this issue with the STmicroelectronics UART driver as well where the hardware-controlled DE pin had the same issue. 

How do i fix this issue

标记 (4)
0 项奖励
回复
1 回复

300 次查看
zefox
Contributor II

i was able to fix this issue by implementing the following:

static void rs485_enable_runtime(void)
{
    const struct device *dev = DEVICE_DT_GET(DT_NODELABEL(lpuart3));
    struct uart_config cfg;

    if (!device_is_ready(dev)) {
        printk("lpuart3 not ready\n");
        return;
    }

    if (uart_config_get(dev, &cfg) == 0) {
        cfg.flow_ctrl = UART_CFG_FLOW_CTRL_RS485;  // RS-485 via DE/RTS
        if (uart_configure(dev, &cfg) != 0) {
            printk("uart_configure RS-485 failed\n");
        }
    }
}

 

The issue was caused by a bit not being set correctly in the A55 core's register. This, to me, points to an issue in the driver. 

 

标记 (2)
0 项奖励
回复
%3CLINGO-SUB%20id%3D%22lingo-sub-2181760%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3Eimx93evk%20Zephyr%20RS485%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2181760%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CDIV%20class%3D%22%22%3E%3CDIV%20class%3D%22%22%3E%3CP%3E%E6%82%A8%E5%A5%BD%EF%BC%8C%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%E6%88%91%E5%B7%B2%E7%BB%8F%E8%A7%A3%E5%86%B3%E8%BF%99%E4%B8%AA%E9%97%AE%E9%A2%98%E4%B8%A4%E5%A4%A9%E4%BA%86%EF%BC%8C%E4%BD%86%E6%B2%A1%E6%9C%89%E4%BB%BB%E4%BD%95%E8%BF%9B%E5%B1%95%E3%80%82%E6%88%91%E6%AD%A3%E8%AF%95%E5%9B%BE%E9%80%9A%E8%BF%87%20control_panel%20%E7%A4%BA%E4%BE%8B%E5%9C%A8%20Zephyr%20%E4%B8%AD%E4%BD%BF%E7%94%A8%20OSDP%E3%80%82%E6%88%91%E5%9C%A8%E4%B8%8B%E9%9D%A2%E9%99%84%E4%B8%8A%E7%9A%84%E5%8E%8B%E7%BC%A9%E6%96%87%E4%BB%B6%E4%B8%AD%E6%8F%90%E4%BE%9B%E4%BA%86%E6%88%91%E7%9A%84%E6%96%87%E4%BB%B6%E3%80%82%20%3C%2FP%3E%3CP%3E%E6%88%91%E7%9A%84%E6%8E%A5%E7%BA%BF%E5%A6%82%E4%B8%8B%EF%BC%9A%3C%2FP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22zefox_0-1759916096527.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22zefox_0-1759916096527.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F359872i8475F635EDFA8242%2Fimage-size%2Fmedium%3Fv%3Dv2%26amp%3Bpx%3D400%22%20role%3D%22button%22%20title%3D%22zefox_0-1759916096527.png%22%20alt%3D%22zefox_0-1759916096527.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3CP%3E%3CBR%20%2F%3E%E6%88%91%E6%A3%80%E6%9F%A5%E4%BA%86%20GPIO17%20%E7%9A%84%E5%A4%8D%E7%94%A8%E6%98%AF%E5%90%A6%E6%AD%A3%E7%A1%AE%E3%80%82%E8%BF%99%E6%98%AF%E6%AD%A3%E7%A1%AE%E7%9A%84%E3%80%82%3CBR%20%2F%3E%E6%88%91%E6%9B%BE%E5%B0%9D%E8%AF%95%E5%9C%A8%20DE%26amp%3B%2FRE%20%E5%BC%95%E8%84%9A%E4%B8%8A%E4%BD%BF%E7%94%A8%E4%B8%8B%E6%8B%89%E7%94%B5%E9%98%BB%EF%BC%8810K%EF%BC%89%E3%80%82%E4%BB%80%E4%B9%88%E9%83%BD%E6%B2%A1%E5%81%9A%3CBR%20%2F%3E%E6%88%91%E5%B0%9D%E8%AF%95%E4%BD%BF%E7%94%A8%20Zephyr%20%E4%B8%AD%E7%9A%84%E4%B8%B2%E8%A1%8C%E9%A9%B1%E5%8A%A8%E7%A8%8B%E5%BA%8F%E7%9B%B4%E6%8E%A5%E5%8F%91%E9%80%81%E6%B5%8B%E8%AF%95%E6%95%B0%E6%8D%AE%E3%80%82%E6%B2%A1%E7%94%A8%E3%80%82%3C%2FP%3E%3CP%3E%E6%88%91%E5%8F%AF%E4%BB%A5%E5%88%A4%E6%96%AD%E5%8F%91%E9%80%81%E6%98%AF%E6%AD%A3%E7%A1%AE%E7%9A%84%EF%BC%8C%E5%9B%A0%E4%B8%BA%E6%88%91%E7%9A%84%E9%98%85%E8%AF%BB%E5%99%A8%E6%AD%A3%E7%A1%AE%E5%9C%B0%E6%8E%A5%E6%94%B6%E5%88%B0%E4%BA%86%E4%BF%A1%E6%81%AF%E3%80%82%E4%BD%86%20DE%20%E5%BC%95%E8%84%9A%E5%A7%8B%E7%BB%88%E4%BF%9D%E6%8C%81%E9%AB%98%E7%94%B5%E5%B9%B3%E3%80%82%E8%BF%99%E6%84%8F%E5%91%B3%E7%9D%80%E5%AE%83%E4%B8%8D%E4%BC%9A%E6%94%B6%E5%88%B0%E4%BB%BB%E4%BD%95%E4%B8%9C%E8%A5%BF%E3%80%82%E8%BF%99%E6%AD%A3%E6%98%AF%E6%88%91%E6%89%80%E8%A7%82%E5%AF%9F%E5%88%B0%E7%9A%84%E3%80%82%20%3C%2FP%3E%3CP%3E%E6%88%91%E5%9C%A8%E4%BD%BF%E7%94%A8%20STmicroelectronics%20UART%20%E9%A9%B1%E5%8A%A8%E7%A8%8B%E5%BA%8F%E6%97%B6%E4%B9%9F%E9%81%87%E5%88%B0%E8%BF%87%E8%BF%99%E4%B8%AA%E9%97%AE%E9%A2%98%EF%BC%8C%E7%A1%AC%E4%BB%B6%E6%8E%A7%E5%88%B6%E7%9A%84%20DE%20%E5%BC%95%E8%84%9A%E4%B9%9F%E6%9C%89%E5%90%8C%E6%A0%B7%E7%9A%84%E9%97%AE%E9%A2%98%E3%80%82%20%3C%2FP%3E%3CP%3E%E5%A6%82%E4%BD%95%E8%A7%A3%E5%86%B3%E8%BF%99%E4%B8%AA%E9%97%AE%E9%A2%98%3C%2FP%3E%3C%2FDIV%3E%3C%2FDIV%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2183866%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20imx93evk%20Zephyr%20RS485%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2183866%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E6%88%91%E9%80%9A%E8%BF%87%E6%89%A7%E8%A1%8C%E4%BB%A5%E4%B8%8B%E6%93%8D%E4%BD%9C%E8%A7%A3%E5%86%B3%E4%BA%86%E8%BF%99%E4%B8%AA%E9%97%AE%E9%A2%98%EF%BC%9A%3C%2FP%3E%3CDIV%3E%3CDIV%3E%3CSPAN%3E%E9%9D%99%E6%80%81%3C%2FSPAN%3E%20%3CSPAN%3Evoid%3C%2FSPAN%3E%20%3CSPAN%3Ers485_enable_runtime%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3Evoid%3C%2FSPAN%3E%3CSPAN%3E)%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%7B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%3C%2FSPAN%3E%3CSPAN%3Econst%3C%2FSPAN%3E%3CSPAN%3E%20%3C%2FSPAN%3E%3CSPAN%3E%E7%BB%93%E6%9E%84%20%E8%AE%BE%E5%A4%87%3C%2FSPAN%3E%3CSPAN%3E%20*%3C%2FSPAN%3E%3CSPAN%3E%20dev%3C%2FSPAN%3E%3CSPAN%3E%20%3D%3C%2FSPAN%3E%3CSPAN%3E%20DEV%3C%2FSPAN%3E%3CSPAN%3E%20%3C%2FSPAN%3E%3CSPAN%3E%3C%2FSPAN%3E%3CSPAN%3EICE_DT_GET(DT_NODELABEL(%20lpuart3))%3B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20%3C%2FSPAN%3E%3CSPAN%3E%E7%BB%93%E6%9E%84%3C%2FSPAN%3E%20%3CSPAN%3Euart_config%3C%2FSPAN%3E%20%3CSPAN%3Ecfg%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FDIV%3E%3CBR%20%2F%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20%3C%2FSPAN%3E%3CSPAN%3E%E5%A6%82%E6%9E%9C%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3E!%3C%2FSPAN%3E%3CSPAN%3E%E8%AE%BE%E5%A4%87%E5%B0%B1%E7%BB%AA%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3Edev%3C%2FSPAN%3E%3CSPAN%3E))%7B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20%20%20%20%20%3C%2FSPAN%3E%3CSPAN%3Eprintk%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3E%22lpuart3%20not%20ready%3C%2FSPAN%3E%3CSPAN%3E%5Cn%3C%2FSPAN%3E%3CSPAN%3E%22%3C%2FSPAN%3E%3CSPAN%3E)%3B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20%20%20%20%20%3C%2FSPAN%3E%3CSPAN%3E%E8%BF%94%E5%9B%9E%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%26nbsp%3B%26nbsp%3B%20%7D%3C%2FSPAN%3E%3C%2FDIV%3E%3CBR%20%2F%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20%3C%2FSPAN%3E%3CSPAN%3E%E5%A6%82%E6%9E%9C%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3Euart_config_get%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3Edev%3C%2FSPAN%3E%3CSPAN%3E%2C%20%3C%2FSPAN%3E%3CSPAN%3E%26amp%3B%3C%2FSPAN%3E%3CSPAN%3Ecfg%3C%2FSPAN%3E%3CSPAN%3E)%20%3C%2FSPAN%3E%3CSPAN%3E%3D%3D%3C%2FSPAN%3E%20%3CSPAN%3E0%3C%2FSPAN%3E%3CSPAN%3E)%20%7B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20%20%20%20%20%3C%2FSPAN%3E%3CSPAN%3Ecfg%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3Eflow_ctrl%3C%2FSPAN%3E%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3EUART_CFG_FLOW_CTRL_RS485%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3CSPAN%3E%20%20%2F%2F%20RS-485%20%E9%80%9A%E8%BF%87%20DE%2FRTS%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20%20%20%20%20%3C%2FSPAN%3E%3CSPAN%3E%E5%A6%82%E6%9E%9C%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3Euart_configure%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3Edev%3C%2FSPAN%3E%3CSPAN%3E%2C%20%3C%2FSPAN%3E%3CSPAN%3E%26amp%3B%3C%2FSPAN%3E%3CSPAN%3Ecfg%3C%2FSPAN%3E%3CSPAN%3E)%20%3C%2FSPAN%3E%3CSPAN%3E!%3D%3C%2FSPAN%3E%20%3CSPAN%3E0%3C%2FSPAN%3E%3CSPAN%3E)%20%7B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20%20%20%20%20%20%20%20%20%3C%2FSPAN%3E%3CSPAN%3Eprintk%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3E%22uart_configure%20RS-485%20%E5%A4%B1%E8%B4%A5%3C%2FSPAN%3E%3CSPAN%3E%5Cn%3C%2FSPAN%3E%3CSPAN%3E%22%3C%2FSPAN%3E%3CSPAN%3E)%3B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%20%7D%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%26nbsp%3B%26nbsp%3B%20%7D%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%7D%3C%2FSPAN%3E%3C%2FDIV%3E%3C%2FDIV%3E%3CBR%20%2F%3E%3CP%3E%E8%BF%99%E4%B8%AA%E9%97%AE%E9%A2%98%E6%98%AF%E7%94%B1%E4%BA%8E%20A55%20%E5%86%85%E6%A0%B8%E5%AF%84%E5%AD%98%E5%99%A8%E4%B8%AD%E7%9A%84%E4%B8%80%E4%B8%AA%E4%BD%8D%E6%B2%A1%E6%9C%89%E6%AD%A3%E7%A1%AE%E8%AE%BE%E7%BD%AE%E9%80%A0%E6%88%90%E7%9A%84%E3%80%82%E5%9C%A8%E6%88%91%E7%9C%8B%E6%9D%A5%EF%BC%8C%E8%BF%99%E8%AF%B4%E6%98%8E%E9%A9%B1%E5%8A%A8%E7%A8%8B%E5%BA%8F%E5%87%BA%E4%BA%86%E9%97%AE%E9%A2%98%E3%80%82%20%3C%2FP%3E%3CBR%20%2F%3E%3C%2FLINGO-BODY%3E