与TDT系统3硬件通信的模块
TDT的Python项目详细描述
tdtpy是围绕Tucker-Davis TechnologiesActiveX library的python包装器 [PDF链接](称为RPCOX),用于与系统3硬件(例如 RP2.1、RX6、RZ6等)。
除了标准操作(加载 电路,配置标签和读/写硬件缓冲),TDTPY 提供了许多ActiveX中未包含的高级功能 库:
- 处理模拟和数字单元之间的类型转换(例如转换 秒到基于硬件CPU频率的DSP周期数)。
- remote procedure call(rpc)server用于允许多个进程和/或程序 通过同一连接与硬件通信。司机们 由TDT提供的不处理并发问题。为了解决这些问题,我们 已经创建了一个处理并发问题的rpc服务器,允许 同时与硬件对话的程序。程序可以运行 在同一台计算机上或在另一台计算机上。
- 如果使用rpc服务器,则客户端代码可以在任何平台上运行(例如mac osx、unix、solaris等);但是,服务器必须在基于windows的 电脑。
- 简单读写。硬件缓冲区实现为“环” “缓冲区”,具有多种功能,如多通道存储和数据 压缩。TDTPY自动检测硬件配置 缓冲并返回一个可以读/写的缓冲区对象(dspbuffer) 不需要处理硬件缓冲区本身的复杂性。
- robust错误处理。ActiveX库中的某些方法将以静默方式失败 例如,如果您试图访问一个不存在的标记,则尝试编写更多的数据。 硬件缓冲区可以保存标签,或者将标签连接到静态端口)。当 RPVDS电路首先加载到硬件,TDTPY将检查 微代码(即rpvds电路)并存储有关标签的一些信息 以及可用的缓冲区。所有后续操作都将根据此进行验证 传递到ActiveX库之前的元数据。如果操作无效 尝试时,将引发带有相应消息的dsperror。
运行软件所需的最小依赖项为:
- Python >= 2.7
- NumPy >= 1.8
- pywin32
- six
TDTPY是根据BSD许可证分发的。
源代码:http://github.com/LABSN/tdtpy
文档:http://tdtpy.readthedocs.org