我一直在寻找这个,但似乎我找不到任何相关的东西 - 所以也许有人可以指出可能性或可以做到这一点的软件?
我需要的是从文件中回放串行端口上的信号,并具有精确的计时:这意味着,如果端口设置为 115200 波特率、8N1,则位持续时间为 8.68 μs。因此,如果文件显示“TX 引脚保持低电平持续 2 位持续时间(此处为 17.36 μs),然后保持高电平持续 3 位持续时间(此处为 26.04 μs)”,那么这就是我想要在 TX 引脚上观察到的情况(如果我测量)它在示波器上。
(如果串行端口可以按当前串行端口设置指定的时间/持续时间以外的时间/持续时间进行“位敲击”,那就更好了,因此(例如)“TX 引脚保持低电平 5 µs,然后保持高电平 10 µs”即使串行端口在操作系统中设置为以 9600 波特工作,也可以稍微准确地再现 5 μs";换句话说,无论串行端口在操作系统中设置为什么,就特点传输波特率)。
这意味着输入应该是一个具有某种播放计时信息的文件,例如:
.wav
(虽然它用于“模拟”播放,但始终可以设置一个阈值,并将 -1.0 到 0.0 范围内的所有内容解释为逻辑低电平,相反,将 0.0 到 1.0 范围内的所有内容解释为逻辑高电平),或者.vcd
(它通过“时间刻度”具有隐含的计时信息)。
到目前为止,我只找到了这些相关资源:
我通过使用来运行它们,
script -t
这样我就可以重放整个过程并跟踪计时执行。
...但我无法判断这是否意味着在台式 PC 上作为命令“重放”,或者在串行端口上作为 TX 波形重放。
还有这个:
.wav
该项目有一个可以接受文件并驱动串行端口的脚本:
./serial_sdr_tx.py -p /dev/ttyUSB0 -f 631e3 -l -m pdm recorded_codes.wav
...但是,该脚本的 github 自述文件注释如下:
该
serial_sdr_tx.py
程序将从音频文件生成调幅信号。
...我查看了这个脚本,对我来说删除所有调制内容并不容易,这样我就可以直接重现“原始”.wav(带有某种阈值)。
Unix/Linux 领域有这样的东西吗?