#include #include #include #define SENDB 0 #define SENDREADY 1 #define RECVB 2 #define RECVREADY 3 #define LOCK 4 #define UNLOCK 5 void diagdummy_srpr(void) { char *str = "Hello world\n"; if (argslen() >= 2) { str = args()[1]; } Dev_t serialdev; dev_gethandle(&serialdev, "serialdev"); char *s = str; while (*s) { while(!dev_cmd(&serialdev, SENDREADY, NULL, 0)); dev_cmd(&serialdev, SENDB, s, 1); s++; } } void diagdummy_srpr2(void) { if (argslen() < 2) { return; } char *str = args()[1]; Dev_t serialdev; dev_gethandle(&serialdev, "serialdev"); while(dev_cmd(&serialdev, LOCK, NULL, 0) != E_OK); for (;;) { while (!dev_cmd(&serialdev, SENDREADY, NULL, 0)); dev_cmd(&serialdev, SENDB, str, 1); schedsleep(500); } dev_cmd(&serialdev, UNLOCK, NULL, 0); }