AssertBcastPinAtSystemTime10Us

You are here:
Estimated reading time: 1 min
Go back to the VM operations list

Prototype

AssertBcastPinAtSystemTime10Us (r)

Description

Assert bcast LED at buffer[r] where buffer[r] is in 10us (64 bit) increments and is the time since the beginning of the last bcast cycle. The reference used is the system clock.

Return
Nothing

Code Example

The following code example uses the AssertBcastPinAtSystemTime10Us function.

The SMK900.evi file used for this example can be downloaded at the bottom of this page.
/* Example Code
* AssertBcastPinAtSystemTime10Us
*
* get buffer index r and regOffset and regLen
* return result of get on regLen*8 bits
*
* example VMExecuteCmd:
* cmd: 															   |r        |buffer
*		0xfb 0x0e 0x00 0x0c 0x00 0x0e [0x?? 0x?? 0x?? = macAdress] 0x00 0x00 0x40 0x42 0x0F 0x00
* rsp: 	0xfb 0x08 0x00 0x2d 0x00 0xe1 0x1e
*/


#include "SMK900.evi"

#define SENSORCODE 0x01
	
function exec_aircmd(){
	local rxLen;
	local useParams;
	local r;
	local i;
	local result;
	
	rxLen=GetAirBuf(0, 0, 20);
	
	if(rxLen>=7){ // 1 byte for paketID + 6 bytes of payload (2 bytes for param + 4 bytes for buffer)
		useParams=true;
		r=GetBuffer_16(1);
		for(i=3;i<rxLen;i++){
			SetBuffer(i-3,GetBuffer_S8(i),1);
		}
	}else{	
		useParams=false;
		r=0;
		SetBuffer_16(0,0x4240); // 1 000 000
		SetBuffer_16(2,0x000F);
	}
	
	AssertBcastPinAtSystemTime10Us(r);

	SetBuffer_16(0,GetBuffer_16(r));
	SetBuffer_16(2,GetBuffer_16(r+2));
	Send(4);
}

function main() 
{
	local execType;
	
	execType = GetExecType();
	if(execType==MESHEXECTYPE_AIRCMD_bm){
		exec_aircmd();
	}
}

Go back to the VM operations list

Attachments

Was this article helpful?
Dislike 0
Views: 70
Go to Top