From ed792877d3a37a5f221b6483f5da9f9a37b0ff83 Mon Sep 17 00:00:00 2001 From: Jonas Zeunert Date: Fri, 23 Nov 2018 14:07:26 +0100 Subject: [PATCH] made some json parsers --- .../contrib/json_example/Output_Config.json | 4 +-- .../src/utility/OutputGPIOInterface.cpp | 26 +++++++++++++++++++ 2 files changed, 28 insertions(+), 2 deletions(-) diff --git a/FlippR-Driver/contrib/json_example/Output_Config.json b/FlippR-Driver/contrib/json_example/Output_Config.json index c98f069..05e626b 100644 --- a/FlippR-Driver/contrib/json_example/Output_Config.json +++ b/FlippR-Driver/contrib/json_example/Output_Config.json @@ -17,11 +17,11 @@ "CL" : 4, "latch-select" : { + "mux1" : 8, + "mux2" : 9 "A" : 5, "B" : 6, "C" : 7, - "mux1" : 8, - "mux2" : 9 } }, diff --git a/FlippR-Driver/src/utility/OutputGPIOInterface.cpp b/FlippR-Driver/src/utility/OutputGPIOInterface.cpp index 3739162..65b94fa 100644 --- a/FlippR-Driver/src/utility/OutputGPIOInterface.cpp +++ b/FlippR-Driver/src/utility/OutputGPIOInterface.cpp @@ -34,12 +34,38 @@ void OutputGPIOInterface::parse_output_config(json &output_config) void OutputGPIOInterface::parse_pins_driver_board(json &driver_board_config) { + pins_driver_board["i2c_address"] = driver_board_config.at("i2c_address").get(); + pins_driver_board["pin_base"] = driver_board_config.at("pin_base").get(); + pins_driver_board["data"] = driver_board_config.at("data").get(); + pins_driver_board["CL"] = driver_board_config.at("CL").get(); + json pin_select = driver_board_config.at("pin-select"); + pins_driver_board["pin-select-A"] = latch_select.at("A").get(); + pins_driver_board["pin-select-B"] = latch_select.at("B").get(); + pins_driver_board["pin-select-C"] = latch_select.at("C").get(); + + json latch_select = driver_board_config.at("latch-select"); + pins_driver_board["mux1"] = latch_select.at("mux1").get(); + pins_driver_board["mux2"] = latch_select.at("mux2").get(); + pins_driver_board["latch-select-A"] = latch_select.at("A").get(); + pins_driver_board["latch-select-B"] = latch_select.at("B").get(); + pins_driver_board["latch-select-C"] = latch_select.at("C").get(); } void OutputGPIOInterface::parse_pins_sound(json &sound_board_config) { + pins_sound["i2c_address"] = sound_board_config.at("i2c_address").get(); + pins_sound["pin_base"] = sound_board_config.at("pin_base").get(); + pins_sound["fire"] = sound_board_config.at("fire").get(); + json sound_address = driver_board_config.at("sound_address"); + pins_sound["A"] = sound_address.at("A").get(); + pins_sound["B"] = sound_address.at("B").get(); + pins_sound["C"] = sound_address.at("C").get(); + pins_sound["D"] = sound_address.at("D").get(); + pins_sound["E"] = sound_address.at("E").get(); + pins_sound["F"] = sound_address.at("F").get(); + pins_sound["G"] = sound_address.at("G").get(); } void OutputGPIOInterface::parse_pins_display(json &display_board_config)