我需要做一個(gè)使用安卓手機(jī)和下位機(jī)進(jìn)行通信的工具,其中需要用到DTR和RTS。但在提供的驅(qū)動(dòng)API中并沒有控制這兩個(gè)信號(hào)的方法。也無法把CH340接入的串口當(dāng)作普通串口一樣在系統(tǒng)里操作。
請(qǐng)問需要怎樣才能做到安卓程序控制芯片的DTR和RTS呢?這個(gè)功能是很必要的。還是說可以在之后的更新版本驅(qū)動(dòng)中提供此功能?
謝謝!
我需要做一個(gè)使用安卓手機(jī)和下位機(jī)進(jìn)行通信的工具,其中需要用到DTR和RTS。但在提供的驅(qū)動(dòng)API中并沒有控制這兩個(gè)信號(hào)的方法。也無法把CH340接入的串口當(dāng)作普通串口一樣在系統(tǒng)里操作。
請(qǐng)問需要怎樣才能做到安卓程序控制芯片的DTR和RTS呢?這個(gè)功能是很必要的。還是說可以在之后的更新版本驅(qū)動(dòng)中提供此功能?
謝謝!
您好,提供的庫中,Uart_Tiocmset 接口函數(shù)就可以用來設(shè)定DTR和RTS信號(hào),該函數(shù)實(shí)現(xiàn)如下:
private int Uart_Tiocmset(int set, int clear) {
????int control = 0;
????if ((set & UartModem.TIOCM_RTS) == UartModem.TIOCM_RTS)
????control |= UartIoBits.UART_BIT_RTS;
????if ((set & UartModem.TIOCM_DTR) == UartModem.TIOCM_DTR)
????control |= UartIoBits.UART_BIT_DTR;
????if ((clear & UartModem.TIOCM_RTS) == UartModem.TIOCM_RTS)
????control &= ~UartIoBits.UART_BIT_RTS;
????if ((clear & UartModem.TIOCM_DTR) == UartModem.TIOCM_DTR)
????control &= ~UartIoBits.UART_BIT_DTR;
????
????return Uart_Set_Handshake(control);
}