@@ -14,9 +14,10 @@ void CLI::setCommands() {
1414 cmd_map[" led" ] = [this ](int32_t argc, char ** argv) { func_led (argc, argv); };
1515 cmd_map[" flash" ] = [this ](int32_t argc, char ** argv) { func_flash (argc, argv); };
1616 cmd_map[" info" ] = [this ](int32_t argc, char ** argv) { func_info (argc, argv); };
17- cmd_map[" rot" ] = [this ](int32_t argc, char ** argv) { func_rot (argc, argv); };
18- cmd_map[" crc" ] = [this ](int32_t argc, char ** argv) { func_crc (argc, argv); };
19- cmd_map[" dac" ] = [this ](int32_t argc, char ** argv) { func_dac (argc, argv); }; // Register func_dac
17+ cmd_map[" rot" ] = [this ](int32_t argc, char ** argv) { func_rot (argc, argv); };
18+ cmd_map[" crc" ] = [this ](int32_t argc, char ** argv) { func_crc (argc, argv); };
19+ cmd_map[" dac" ] = [this ](int32_t argc, char ** argv) { func_dac (argc, argv); };
20+ cmd_map[" reset" ] = [this ](int32_t argc, char ** argv) { func_reset (argc, argv); };
2021}
2122
2223void CLI::func_help (int32_t argc, char ** argv) {
@@ -87,19 +88,17 @@ void CLI::func_flash(int32_t argc, char** argv) {
8788 if (arg == " help" || arg == " ?" || arg == " -h" ) {
8889 serial.sendString (help_text);
8990 } else if (arg == " save" ) {
90- if (flash.Save ()) {
91- serial.sendString (" Flash Saved\n " );
92- }
91+ xTaskCreate (Thread::task<&Thread::flashSave>, " Flash Save" , 200 , NULL , 1 , &thread.flashSave_handle );
9392 } else if (arg == " load" ) {
94- flash. Load ( );
95- } else if (arg == " purge" ) {
96- if (flash.Purge ()) {
97- serial.sendString (" Flash Purged\n " );
98- }
99- } else if (arg == " init" ) {
100- if (flash.Init ()) {
101- serial.sendString (" Flash Initialized\n " );
102- }
93+ xTaskCreate (Thread::task<&Thread::flashLoad>, " Flash Load " , 200 , NULL , 1 , &thread. flashLoad_handle );
94+ } else if (arg == " purge" ) {
95+ if (flash.Purge ()) {
96+ serial.sendString (" Flash Purged\n " );
97+ }
98+ } else if (arg == " init" ) {
99+ if (flash.Init ()) {
100+ serial.sendString (" Flash Initialized\n " );
101+ }
103102 } else {
104103 serial.sendString (" Command not found\n " );
105104 }
@@ -133,50 +132,50 @@ void CLI::func_info(int32_t argc, char** argv) {
133132}
134133
135134void CLI::func_rot (int32_t argc, char ** argv) {
136- // Detailed Menu
137- const char * help_text =
138- " \n Rotation Functions:\n "
139- " start\t\t Start Rotation\n "
140- " stop\t\t Stop Rotation\n\n " ;
141-
142- // Sub Command
143- if (argc > 1 ) {
144- std::string arg = argv[1 ];
145- if (arg == " help" || arg == " ?" || arg == " -h" ) {
146- serial.sendString (help_text);
147- } else if (arg == " on" ) {
148- SM<Thread>::triggerEvent (Thread::Event::START, thread.runner_sm );
149- } else if (arg == " off" ) {
150- SM<Thread>::setState (Thread::State::OFF, thread.runner_sm );
151- } else if (arg == " set" && argc == 3 ) {
152- SM<Thread>::setState (Thread::State::INIT, thread.runner_sm , int {std::stoi (argv[2 ])});
153- } else {
154- serial.sendString (" Command not found\n " );
155- }
156- }
135+ // Detailed Menu
136+ const char * help_text =
137+ " \n Rotation Functions:\n "
138+ " start\t\t Start Rotation\n "
139+ " stop\t\t Stop Rotation\n\n " ;
140+
141+ // Sub Command
142+ if (argc > 1 ) {
143+ std::string arg = argv[1 ];
144+ if (arg == " help" || arg == " ?" || arg == " -h" ) {
145+ serial.sendString (help_text);
146+ } else if (arg == " on" ) {
147+ SM<Thread>::triggerEvent (Thread::Event::START, thread.runner_sm );
148+ } else if (arg == " off" ) {
149+ SM<Thread>::setState (Thread::State::OFF, thread.runner_sm );
150+ } else if (arg == " set" && argc == 3 ) {
151+ SM<Thread>::setState (Thread::State::INIT, thread.runner_sm , int {std::stoi (argv[2 ])});
152+ } else {
153+ serial.sendString (" Command not found\n " );
154+ }
155+ }
157156}
158157
159158void CLI::func_crc (int32_t argc, char ** argv) {
160- // Detailed Menu
161- const char * help_text =
162- " \n CRC Functions:\n "
163- " acc [#]\t Accumulate CRC\n "
164- " cal [#]\t Calculate CRC\n\n " ;
165-
166- // Sub Command
167- if (argc > 1 ) {
168- std::string arg = argv[1 ];
169- if (arg == " help" || arg == " ?" || arg == " -h" ) {
170- serial.sendString (help_text);
171- } else if (arg == " cal" ) {
172- if (argc == 3 ) {
173- uint8_t input = std::stoi (argv[2 ]);
174- SM<Thread>::setState (Thread::State::CRC_CAL, thread.runner_sm , std::vector<uint8_t >{input});
175- }
176- } else {
177- serial.sendString (" Command not found\n " );
178- }
179- }
159+ // Detailed Menu
160+ const char * help_text =
161+ " \n CRC Functions:\n "
162+ " acc [#]\t Accumulate CRC\n "
163+ " cal [#]\t Calculate CRC\n\n " ;
164+
165+ // Sub Command
166+ if (argc > 1 ) {
167+ std::string arg = argv[1 ];
168+ if (arg == " help" || arg == " ?" || arg == " -h" ) {
169+ serial.sendString (help_text);
170+ } else if (arg == " cal" ) {
171+ if (argc == 3 ) {
172+ uint8_t input = std::stoi (argv[2 ]);
173+ SM<Thread>::setState (Thread::State::CRC_CAL, thread.runner_sm , std::vector<uint8_t >{input});
174+ }
175+ } else {
176+ serial.sendString (" Command not found\n " );
177+ }
178+ }
180179}
181180
182181void CLI::func_dac (int32_t argc, char ** argv) {
@@ -212,4 +211,6 @@ void CLI::func_dac(int32_t argc, char** argv) {
212211 serial.sendString (" Command not found\n " );
213212 }
214213 }
215- }
214+ }
215+
216+ void CLI::func_reset (int32_t argc, char ** argv) { NVIC_SystemReset (); }
0 commit comments