Python と PySerial を介して通信している Tiva LaunchPad があります。主な機能がLaunchPadと通信する新しいDebianボックスをセットアップしました。
私が使用していた 921600kBaud レートが新しい Debian ボックスで動作しなかったことを発見して驚きましたが、230400kBaud は成功しました。
プラットフォームが処理できる最大ボーレートを決定するために、おそらくシリアルまたは os python 呼び出しを介して、良い方法はありますか?
そのため、シリアル回線を開く前に、ボーレートが実際に機能するかどうかを判断できました。
何かのようなもの:
def baudtestfunction(b):
# test for valid baud rate here
[if valid baud]:
return True
[else invalid baud:]
return False
if (baudtestfunction(_baud) == True):
ser = serial.Serial(
port = _port,
baudrate = _baud,
parity = serial.PARITY_NONE,
stopbits = serial.STOPBITS_ONE,
bytesize = serial.EIGHTBITS
)
else:
printf "The chosen baud rate will not work on this platform"
exit()
Debian ボックスで _baud を 921600 に設定すると、シリアル接続が開いているように見えますが、データを適切に送受信していません。シリアル接続が機能していないのか、Tiva 自体が機能していないのかを判断できませんでした。