flashshellp.nc
来自「tinyos-2.x.rar」· NC 代码 · 共 47 行
NC
47 行
module FlashShellP {
uses {
interface Boot;
interface Leds;
interface ShellCommand;
interface BlockRead;
interface BlockWrite;
}
} implementation {
event void Boot.booted() {
if (call BlockWrite.erase() != SUCCESS)
call Leds.led1Toggle();
}
event void BlockRead.readDone(storage_addr_t addr, void* buf, storage_len_t len,
error_t error) {
uint16_t r_len = snprintf(reply_buf, MAX_REPLY_LEN,"read done addr: 0x%x len: %i error: %i data: ",
addr, len, error);
if (len < MAX_REPLY_LEN - r_len - 1)
memcpy(reply_buf + r_len, buf, len);
reply_buf[r_len + len + 1] = '\n';
call UDP.sendto(&session_endpoint, reply_buf, r_len + len + 1);
}
event void BlockRead.computeCrcDone(storage_addr_t addr, storage_len_t len,
uint16_t crc, error_t error) {
}
event void BlockWrite.writeDone(storage_addr_t addr, void* buf, storage_len_t len,
error_t error) {
uint16_t r_len = snprintf(reply_buf, MAX_REPLY_LEN,"write done addr: 0x%x len: %i error: %i\n",
addr, len, error);
call UDP.sendto(&session_endpoint, reply_buf, r_len);
}
event void BlockWrite.eraseDone(error_t error) {
call Leds.led0Toggle();
}
event void BlockWrite.syncDone(error_t error) {
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?