前言:这是一篇翻译笔记,来自sigrok
Oscilloscopes
这个页面记录了配置键是编写控制示波器的libsigrok前端所需的各种其他信息。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4hcWv7GV-1629103414271)(C:\Users\jingwenwei\AppData\Roaming\Typora\typora-user-images\image-20210816133721796.png)]
Frame-based
通常示波器的工作方式是触发被测信号或外部触发信号。然后,该设备测量尽可能多的它的内部缓冲区可以容纳。当缓冲区满时,设备停止测量并将其缓冲区发送到libsigrok驱动程序。这个传输代表了一帧数据的价值。驱动程序将这些数据转换为libsigrok内部模拟格式,然后像这样发送到前端:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-mlmC04lr-1629103414272)(C:\Users\jingwenwei\AppData\Roaming\Typora\typora-user-images\image-20210816133747346.png)]
示波器然后重新开始采集,有时是在驱动程序刺激之后。因此,从示波器接收到的数据不是连续的从一帧到下一帧:在这之间有一个周期,该设备不进行测量。
Streaming
有些设备可以作为连续流示波器,不涉及帧。值得注意的是,具有模拟前端的基于fx2的设备,如Nexus-Computing ossciprime,就是这样工作的。
Config keys
一个用于示波器的libsigrok驱动程序实现了以下配置键的全部或部分。
SR_CONF_OSCILLOSCOPE
表示一种可以充当示波器的设备,即随时间测量一个或多个模拟通道上的电压,并将这些测量值作为模拟值发送到前端。
SR_CONF_LIMIT_FRAMES
基于帧的示波器实现了这个关键帧集,即在SR_DF_FRAME_BEGIN和SR_DF_FRAME_END包之间要捕获和发送的帧数。
它只用于设置这个值;获取它只会返回先前设置的值。默认值为0,表示连续抓取帧,直到被告知停止。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Qzv3vpOL-1629103414273)(C:\Users\jingwenwei\AppData\Roaming\Typora\typora-user-images\image-20210816134428465.png)]
SR_CONF_NUM_TIMEBASE
示波器在其水平(时间)轴上的分割数。这对应于设备显示的方格上的垂直线所标记的区域。即使在无头示波器上,这个概念仍然存在;例如,如果没有这个数字,SR_CONF_TIMEBASE设置就没有意义。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-66j2Hd77-1629103414274)(C:\Users\jingwenwei\AppData\Roaming\Typora\typora-user-images\image-20210816134513938.png)]
SR_CONF_TIMEBASE
采集过程中单个水平(时间)分割采样的持续时间。分割的数量由SR_CONF_NUM_TIMEBASE返回,因此将这个数字乘以这个持续时间就得到了对单个帧的有效采样的度量。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ek5Yurfu-1629103414274)(C:\Users\jingwenwei\AppData\Roaming\Typora\typora-user-images\image-20210816134602330.png)]
[外链图片转存中…(img-ek5Yurfu-1629103414274)]