diff options
| author | Shlomo Hecht <shlomo@twine-s.com> | 2020-02-27 17:05:48 +0200 |
|---|---|---|
| committer | Shlomo Hecht <shlomo@twine-s.com> | 2020-02-27 17:05:48 +0200 |
| commit | 124de0fe327a87aca0de1f38b7481cba51a01276 (patch) | |
| tree | 1bf76e18c16a677430bca1a5819831c531660248 /Software/Embedded_SW/Embedded/Modules | |
| parent | b51e6204dba42b3b664a9b9ddbc6d268e0ec3bff (diff) | |
| download | Tango-124de0fe327a87aca0de1f38b7481cba51a01276.tar.gz Tango-124de0fe327a87aca0de1f38b7481cba51a01276.zip | |
Improvements to the WHS blower control (feature #1561)
Diffstat (limited to 'Software/Embedded_SW/Embedded/Modules')
| -rw-r--r-- | Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c | 4 | ||||
| -rw-r--r-- | Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Progress.c | 48 |
2 files changed, 36 insertions, 16 deletions
diff --git a/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c b/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c index 00ce306cf..5170b7cef 100644 --- a/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c +++ b/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c @@ -726,8 +726,8 @@ uint32_t MillisecLowLoop(uint32_t tick) if (WHS_Type == WHS_TYPE_NEW) { Trigger_WHS_PT100_Read_All(); - WHS_Blower_Avarege_ORF1(); //drier - WHS_Blower_Avarege_ORF3(); //head + WHS_Blower_Avarege(HEAD_FLOW_METER); + WHS_Blower_Avarege(DRIER_FLOW_METER); WHS_Start_Blower_Control_Closed_Loop (); } } diff --git a/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Progress.c b/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Progress.c index cbe70b444..35a9aef5b 100644 --- a/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Progress.c +++ b/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Progress.c @@ -109,11 +109,12 @@ void Stub_ProgressRequest(MessageContainer* requestContainer) } } else - if((request->amount == 0x3E8) && (request->delay <= 0x0fff))// set WHS Blower speed 0x00-0xfff + if(request->amount == 0x3E8) //&& (request->delay <= 0x0fff))// set WHS Blower speed 0x00-0xfff { if (WHS_Type == WHS_TYPE_NEW) { - Trigger_SetWHSBlowerVoltage (request->delay); + WHS_enable_control_loop( request->delay & 0x1000);//disable control loop: 0=disable 1= enable + Trigger_SetWHSBlowerVoltage (request->delay & 0x0FFF); response.progress = 0; response.has_progress = false; } @@ -144,19 +145,38 @@ void Stub_ProgressRequest(MessageContainer* requestContainer) { uint16_t tempu16 = 0; double temp_double = 0.0; + uint8_t display_byte = 0; + uint16_t A2D_data = 0; + if (WHS_Type == WHS_TYPE_NEW) { - - if (request->delay & 0x8000) // bit15 select the chip address - { - SetDisplayView( CURRENT ); - } - else + display_byte = ((request->delay & 0x3000)>>12); + switch (display_byte) { - SetDisplayView( AVERAGE ); + case 0: + //stubManager.Run<ProgressResponse>("ProgressRequest" ,0x3EA, /*DisplayView =*/0x0000); // + SetLeftDisplayView (HeadAVERAGE); + SetWriteDisplayView(DrierAVERAGE); + break; + case 1: + //stubManager.Run<ProgressResponse>("ProgressRequest" ,0x3EA, /*DisplayView =*/0x1000); // + SetLeftDisplayView (HeadAVERAGE); + SetWriteDisplayView(HeadCURRENT); + break; + case 2: + //stubManager.Run<ProgressResponse>("ProgressRequest" ,0x3EA, /*DisplayView =*/0x2000); // + SetLeftDisplayView (DrierAVERAGE); + SetWriteDisplayView(DrierCURRENT); + break; + case 3: + //stubManager.Run<ProgressResponse>("ProgressRequest" ,0x3EA, /*DisplayView =*/0x3000); // + SetLeftDisplayView (HeadCURRENT); + SetWriteDisplayView(DrierCURRENT); + break; } - switch(request->delay )// get A2D + A2D_data = (request->delay & 0x0FFF); + switch(A2D_data )// get A2D { case 0: get_orf_1(&tempu16); @@ -186,16 +206,16 @@ void Stub_ProgressRequest(MessageContainer* requestContainer) tempu16 = 0; //get_cur_vlv2(&tempu16); break; case 10: - temp_double = get_ORF1_Q(); + temp_double = get_Q(HEAD_FLOW_METER); break; case 12: - temp_double = get_ORF3_Q(); + temp_double = get_Q(DRIER_FLOW_METER); break; case 20: - temp_double = get_average_ORF1_Q(); //HEAD + temp_double = get_average_Q(HEAD_FLOW_METER); //HEAD break; case 22: - temp_double = get_average_ORF3_Q(); //Drier + temp_double = get_average_Q(DRIER_FLOW_METER); //Drier break; case 11: |
