![](/img/trans.png)
[英]Telnet over half-duplex comms link - negotiation parameters
[英]How to create a tunnel between two half-duplex serial ports?
我正在從事一個嵌入式項目,該項目包括兩個半雙工UART和一個全雙工UART。
UART1連接到設備A。UART2連接到設備B,而UART3連接到PC。 UART1和UART2是半雙工的,因此必須正確配置RX / TX模式。
觸發UART1上的信號時,UART2從設備B中獲取一些數據。該數據放入緩沖區中,然后傳輸回UART1和UART3。 器件A消耗數據,並在UART1上發送更多項目,然后必須將其傳遞到UART2,以使器件B響應。
我在考慮一種可以處理TX / RX模式之間切換模式的高效狀態機,到目前為止,我的UART代碼是中斷驅動的。 有什么方法可以解決該計划的流程?
在這種情況下,我認為您不需要狀態機。 為什么不僅僅相應地掛接所有中斷,然后將從一個設備收到的任何內容轉發給另一個設備呢?
您可能需要包括一個TX(環形)緩沖區,以適應每個UART的不同速度,然后讓RX-ISR將接收到的數據寫入適當的TX緩沖區,然后從那里將它們消耗掉。其他UART的UDRE-ISR。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.