From 2b427f4bdfc71b055b7db8ffe2b9dd0ea3e4cc9a Mon Sep 17 00:00:00 2001 From: Sebastian Reichel Date: Sat, 11 Aug 2012 23:02:47 +0200 Subject: initial commit --- client/main.vala | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 client/main.vala (limited to 'client/main.vala') diff --git a/client/main.vala b/client/main.vala new file mode 100644 index 0000000..2c676a5 --- /dev/null +++ b/client/main.vala @@ -0,0 +1,58 @@ +public static void main(string[] args) { + var engines = new EngineController("/dev/ttyAMA0"); + + if(args.length < 2) { + stderr.printf("%s \n", args[0]); + stderr.printf("cmds: engine, enable, disable, nop\n"); + return; + } + + switch(args[1]) { + case "engine": + if(args.length < 4) { + stderr.printf("%s engine \n", args[0]); + return; + } + + uint8 engine = (uint8) int.parse(args[2]); + if("%u".printf(engine) != args[2]) + error("engine must be an integer"); + + uint8 speed = (uint8) int.parse(args[3]); + if("%u".printf(speed) != args[3]) + error("speed must be an integer"); + + if(engine == 6) + if(engines.set_speed_all(speed)) + stdout.printf("set speed of all engines to %u: ok\n", speed); + else + stdout.printf("set speed of all engines to %u: fail\n", speed); + if(engine <= 5) + if(engines.set_speed(engine, speed)) + stdout.printf("set speed of engine %u to %u: ok\n", engine, speed); + else + stdout.printf("set speed of engine %u to %u: fail\n", engine, speed); + break; + case "enable": + if(engines.enable()) + stdout.printf("enable motors: ok\n"); + else + stdout.printf("enable motors: fail\n"); + break; + case "disable": + if(engines.disable()) + stdout.printf("disable motors: ok\n"); + else + stdout.printf("disable motors: fail\n"); + break; + case "nop": + if(engines.no_operation()) + stdout.printf("no operation: ok\n"); + else + stdout.printf("no operation: fail\n"); + break; + default: + stderr.printf("cmd not supported!\n"); + break; + } +} -- cgit v1.2.3