powctrlcode.m

来自「用于网络控制系统仿真」· M 代码 · 共 34 行

M
34
字号
function [exectime, data] = powctrlcode(seg, data)switch seg, case 1,   % Read all buffered packets  msg = ttTryFetch('power_response'); % Obtain power ping response  temp = msg;  while ~isempty(temp),    y = temp;    temp = ttTryFetch('power_response'); % Obtain power ping response  end    if isempty(msg) & data.haverun ~= 0    % No echo reply, the other node did probably not hear us    data.transmitPower = data.transmitPower + 10;    % Limit the maximum transmit power to 30 dbm    data.transmitPower = min(30, data.transmitPower);    ttSetNetworkParameter('transmitpower', data.transmitPower);  else    % A echo reply, the other did hear us    % try to lower the transmission power    data.transmitPower = data.transmitPower - 1;    ttSetNetworkParameter('transmitpower', data.transmitPower);  end   exectime = 0.00002; case 2,  data.haverun = 1;  msg.msg.sender = data.name;  msg.type = 'power_ping';  time = ttCurrentTime;  %disp(['setting transmitpower to: ' num2str(data.transmitPower) ' in node: ' num2str(msg.msg.sender) ' at time ' num2str(time)]);  ttSendMsg(data.receiver, msg, 80);    % Send 80 bits  exectime = -1; % finishedend

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?