我在開發板上有一個Ti處理器AM335x。沒有兩個uart連接到處理器。 uart0和uart2啓用uart2,但讀取不正確
默認情況下,只有uart0被啓用,並且它是用於控制檯的。在啓用uart2之後,我將GPS連接到它,以便它輸出一些東西,如果我使用/ dev/ttyO2。但只有一些垃圾代碼顯示出來。
然後我把GPS連接到uart0,使用相同的命令cat/dev/ttyO0一切正常。 GPS輸出正常顯示。
然後我編輯我的uEnv.txt來切換我的控制檯到uart2,它的工作原理。然後我將GPS連接到uart2,我可以貓/ dev/ttyO2來獲取所有內容。但是當我將GPS連接到uart0時。垃圾代碼出現。
我沒有使用stty做tty設置,使它們都一樣,但是,我只能從連接我的控制檯的uart讀取。
我運行命令dmesg | grep tty,這是輸出
[0.000000] Kernel command line: console=ttyO2,115200n8 root=/dev/mmcblk0 rw ext4 rootwait verbose debug
[0.234749] 44e09000.serial: ttyO0 at MMIO 0x44e09000 (irq = 154m, base_baud = 3000000) is a OMAP UART0
[0.235338] 48024000.serial: ttyO2 at MMIO 0x48024000 (irq = 155m, base_baud = 3000000) is a OMAP UART2
[0.824084] console [ttyO2] enabled
第一個和第四個將改變基地上我把我的控制檯。 有沒有我錯過的配置?爲什麼我只能從我把控制檯放在uart上讀取精確的數據。其他人不工作。
任何想法都會有所幫助。謝謝。
這是我如何更改我的代碼以啓用uart2。 linux compile for enable uart2
絕對最小值,設置波特率。我認爲有一個工具可以做到這一點,但是你應該使用一些特殊用途的工具來處理串口,比如minicom。 – domen
@domen我嘗試過stty,但仍然無法閱讀。我可能會嘗試minicom,但我認爲它不會起作用。 – dawenzi098
您是否設置了** BAUDRATE **?什麼是GPS的波特率,什麼是ttyO0/2設置爲? – domen