sensor_init.cpp
来自「一个很棒的网络控制系统仿真软件」· C++ 代码 · 共 51 行
CPP
51 行
// Distributed control system: sensor node//// Samples the plant periodically and sends the samples to the // controller node.#define S_FUNCTION_NAME sensor_init#include "ttkernel.cpp"// code functiondouble sensor_code(int seg, void *data) { static double *y; switch (seg) { case 1: y = new double; *y = ttAnalogIn(1); return 0.0005; case 2: ttSendMsg(4, y, 10); // Send measurement (10 bytes) to node 4 (controller) return 0.0004; case 3: return FINISHED; }}double msgRcvhandler(int seg, void *data){ printf("ERROR: sensor received a message!\n"); return FINISHED;}void init(){ // Initialize TrueTime kernel ttInitKernel(1, 0, FP); // nbrOfInputs, nbrOfOutputs, fixed priority // Sensor task double offset = 0.0; double period = 0.010; double prio = 1.0; ttCreatePeriodicTask("sensor_task", offset, period, prio, sensor_code); // Initialize network ttCreateInterruptHandler("msgRcv", prio, msgRcvhandler); ttInitNetwork(3, "msgRcv"); // node #3 in the network}void cleanup() {}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?