编译测试协议的python脚本

ctp的Python项目详细描述


CTP
用于将协议文件编译为二进制文件的脚本,该二进制文件可上载到组件测试仪的SD卡。这是因为手工编译每个
协议很快就会变得乏味,特别是对于较长的协议,很容易出错。因此,我制作了一个python脚本来自动执行该过程。

c ompilation已成功,但未生成输出文件
-c—从stdin读取代码,而不是文件


协议语法
==/>每个命令必须在单独的行上。跳过以``开头的行和仅由空格组成的行
。大小写(甚至像这样的混合大小写)
无关紧要。


协议将运行,直到"check"命令发现pin状态与指定的不匹配。如果发生这种情况,则组件未通过测试。
如果协议运行无误,则组件已通过测试。


‘管脚…’应用作正电压源。
有效管脚值为:5、14、15、16。



gnd-gnd<;pins…>;
指定"pins…"应作为接地。
有效pin值为:8,12。




delay
delay<;time>;
>将进一步执行延迟"time"毫秒(ms)。
*注意*:如果需要延迟大于65535ms,则需要延迟大于65535ms,则需要延迟65535ms,如果需要延迟大于65535ms,则需要将进一步执行延迟延迟"time"毫秒(ms)。

*注意*:如果需要延迟大于65535ms的延迟大于65535ms,则需要延迟65535ms,则需要延迟65535ms它必须分成
多个"延迟"调用。

set
set(<;value>;<;pins…>;)…
将"pins…"设置为"value"指定的值。
"value"是"on"或"off"(不带qoutation标记)。
"管脚…"是由空格分隔的管脚编号列表(介于1和16之间)。
任何未给定值的管脚将保持其当前状态
(无论是"开"还是"关")。此外,"rest"关键字可用于指定尚未给定值的任何管脚。但是请注意,不能在"rest"关键字之后指定pins,但*不*必须在"rest"之前指定pins。


其余管脚将保持其
当前状态(`on`或`off`)。


set on 12 off 3
这将管脚1和2设置为on,管脚3设置为`off`。其余管脚将
保持其当前状态("开"或"关"。

set on 1 2 off rest
此操作将管脚1和2设置为"开",所有其他管脚设置为"关"。


set on rest
此操作将每个管脚设置为"开",因为在"rest"之前未指定管脚。

check
check(<;value>;<;pins…>;)…
检查"pins…"是否具有由"value"指定的值。
"value"是"on"或"off"(不带qoutation标记)。
"pins…"是由空格分隔的管脚号列表(介于1和16之间)。
"check"的调用方式是si与"set"类似,只是必须为所有管脚指定
值。但是,仍然可以使用"rest"关键字来表示每个未给定值的管脚。


*注意*:如果管脚以前通过调用"vin"或"set"设置为"on",则"check"将假定该管脚应为"on",而不管
参数。

插脚是"关"的。

--------------------------------------------------------
以下程序将使用插脚16作为车辆识别号,插脚8作为接地。它将
然后将插脚1和2设置为"开",并检查插脚3是否为"开",而其他所有
(插脚16除外,因为这是车辆识别号,插脚1和2是因为我们之前将这些
设置为"开")是否为"关"。


gnd 8
vin 16
设置为1 2
检查3关休息


以下程序将使用插脚16作为车辆识别号,插脚8和12作为接地。
然后将插脚2设置为"开",等待2秒钟,然后再次将其设置为"关"。然后检查所有针脚(针脚16除外,因为这是车辆识别号)是否"关闭":


gnd 8 12
vin 16
设置为2
延迟2000
设置为2
检查休息

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
在Java中从本地文件系统导入文件   spring boot如何在Java SpringBoot项目中集成Olingo(Odata)   java查找连续数组中缺少的第k个元素(超过时间限制)   java为什么在mySql中插入1/2行时会得到2/4行   java不能在静态上下文中使用它   File Observer方法的java My onEvent()部分不起作用   java Netty NioSocketChannel在多线程写入时收到中断消息   java将文件夹与父文件夹一起复制   java我的TictaToe代码出了什么问题?如何检查已采取的措施?   java Swing JTable更新   java如何将cordinates查找为int   如何使用selenium和java在firefox中打开新的空选项卡   java Gradle构建输出Jar未运行   java没有GET/WEBINF/jsp/login的映射。jsp