uarttestm.nc

来自「自己在学习nesC时的源码」· NC 代码 · 共 63 行

NC
63
字号
/**
UartTestM.nc
**/
module UartTestM
{
	provides interface StdControl;
	uses{
		interface StdControl as CommControl;
		interface SendMsg as Send;
		interface ReceiveMsg as Receive;
		interface Leds;
		interface Timer;
	}
}
implementation
{
	uint8_t num = 0;
	TOS_Msg msg_buf;
	TOS_MsgPtr msg_ptr;
	
	task void sendNum()
	{
		msg_ptr->length = 1;
		msg_ptr->data[0] = num;
		call Send.send(TOS_UART_ADDR,1,msg_ptr);
	}
	command result_t StdControl.init()
	{
		call Leds.init();
		call CommControl.init();
		atomic msg_ptr = &msg_buf;
		return SUCCESS;
	}
	command result_t StdControl.start()
	{
		call CommControl.start();
		call Timer.start(TIMER_REPEAT,1024);
		return SUCCESS;
	}
	command result_t StdControl.stop()
	{
		call Timer.stop();
		call CommControl.stop();
		return SUCCESS;
	}
	event result_t Timer.fired()
	{
		post sendNum();
		call Leds.greenToggle();
		return SUCCESS;
	}
	event result_t Send.sendDone(TOS_MsgPtr msg, result_t success)
	{
		atomic num = num + 1;
		return SUCCESS;
	}
	event TOS_MsgPtr Receive.receive(TOS_MsgPtr m)
	{
		return m;
	}
}

⌨️ 快捷键说明

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