指定的回调函数时是字节的指定数目的输入缓冲器中可用,或终止子是读取执行
您配置BytesAvailableFcn
当一个字节可用事件发生时执行的回调函数。当由指定的字节数时,发生字节可用事件BytesAvailableFcnCount
属性在输入缓冲器可用,或终止子被读取后,由所确定的BytesAvailableFcnMode
属性。
只能用于异步读操作来生成字节可用的事件。
如果RECORDSTATUS
属性值上
和字节可用的事件发生时,记录文件记录了这样的信息:
事件类型信息bytesAvailable
分钟:使用格式日 - 月 - 年时事件发生的时间秒:毫秒
不能使用超过127个字符的ASCII较大值。该功能仅限于127个二进制字符。
要了解如何创建一个回调函数,请参阅创建和执行回调函数。
用法 |
任何仪器对象 |
只读 |
决不 |
数据类型 |
回调函数 |
默认值是空字符向量。
创建串口对象小号
在Windows®机泰克®TDS 210双通道示波器连接到串行端口COM1。
S =串行( 'COM1');
配置小号
执行回调函数instrcallback
当40个字节是在输入缓冲器中可用。
s.BytesAvailableFcnCount = 40;s.BytesAvailableFcnMode = '字节';s.BytesAvailableFcn = @instrcallback;
连接小号
到示波器。
FOPEN(S)
写* IDN?
命令,该命令指示的范围,以返回的识别信息。因为对于默认值ReadAsyncMode
属性连续
,数据将立即读,因为它是可从仪器。
fprintf中(S, '* IDN?')
从输出所得instrcallback
如下所示。
信息bytesAvailable事件发生在十八点33分35秒的对象:串行COM1。
56个字节被读出并instrcallback
被调用一次。将得到的显示如上所示。
s.BytesAvailable ANS = 56
假设你从输入除去25个字节的缓冲区,并发出测量?
命令,该命令指示的范围,以返回其测量设置。
OUT =的fscanf(S, '%C',25);fprintf中(S, '测量?')
从输出所得instrcallback
如下所示。
信息bytesAvailable事件发生在18点33分48秒的对象:串行COM1。信息bytesAvailable事件发生在18点33分48秒的对象:串行COM1。
现在有102个字节在输入缓冲器中,其中31个是从遗留* IDN?
命令。instrcallback
被称为两次;一旦当40个字节是可用的并且当80个字节可用一次。
s.BytesAvailable ANS = 102