1.0
IR_Manager.cpp
- Committer:
- asaewing
- Date:
- 2019-06-05
- Revision:
- 0:3714c3af7602
File content as of revision 0:3714c3af7602:
#include "module_for_all.h" IR_Manager::IR_Manager() { /*DigitalIn isIR_1(PG_8); DigitalIn isIR_2(PF_11); DigitalIn isIR_3(PG_5); DigitalIn isIR_4(PG_6); DigitalIn isIR_5(PE_0); DigitalIn isIR_6(PF_15);*/ /*isIR_1 = DigitalIn(PG_8); isIR_2 = DigitalIn(PF_11); isIR_3 = DigitalIn(PG_5); isIR_4 = DigitalIn(PG_6); isIR_5 = DigitalIn(PE_0); isIR_6 = DigitalIn(PF_15); isIR = { &isIR_1, &isIR_2, &isIR_3, &isIR_4, &isIR_5, &isIR_6}; //&(AnalogIn(PF_6)), &(AnalogIn(PF_7)), &(AnalogIn(PA_0)) ainIR_11 = AnalogIn(PF_6); ainIR_12 = AnalogIn(PF_7); ainIR_13 = AnalogIn(PA_0); //&(AnalogIn(PB_1)), &(AnalogIn(PF_5)), &(AnalogIn(PF_4)) ainIR_21 = AnalogIn(PB_1); ainIR_22 = AnalogIn(PF_5); ainIR_23 = AnalogIn(PF_4); //&(AnalogIn(PC_2)), &(AnalogIn(PC_3)), &(AnalogIn(PA_4)) ainIR_31 = AnalogIn(PC_2); ainIR_32 = AnalogIn(PC_3); ainIR_33 = AnalogIn(PA_4); //&(AnalogIn(PC_0)), &(AnalogIn(PF_8)), &(AnalogIn(PF_9)) ainIR_41 = AnalogIn(PC_0); ainIR_42 = AnalogIn(PF_8); ainIR_43 = AnalogIn(PF_9); //&(AnalogIn(PA_3)), &(AnalogIn(PF_10)), &(AnalogIn(PF_3)) ainIR_51 = AnalogIn(PA_3); ainIR_52 = AnalogIn(PF_10); ainIR_53 = AnalogIn(PF_3); //&(AnalogIn(PA_5)), &(AnalogIn(PA_6)), 0 ainIR_61 = AnalogIn(PA_5); ainIR_62 = AnalogIn(PA_6); ainIR = { {&ainIR_11, &ainIR_12, &ainIR_13}, {&ainIR_21, &ainIR_22, &ainIR_23}, {&ainIR_31, &ainIR_32, &ainIR_33}, {&ainIR_41, &ainIR_42, &ainIR_43}, {&ainIR_51, &ainIR_52, &ainIR_53}, {&ainIR_61, &ainIR_62, 0} };*/ /*isIR[6] = { &(DigitalIn(PG_8)), &(DigitalIn(PF_11)), &(DigitalIn(PG_5)), &(DigitalIn(PG_6)), &(DigitalIn(PE_0)), &(DigitalIn(PF_15))}; ainIR[6][3] = { {&(AnalogIn(PF_6)), &(AnalogIn(PF_7)), &(AnalogIn(PA_0))}, {&(AnalogIn(PB_1)), &(AnalogIn(PF_5)), &(AnalogIn(PF_4))}, {&(AnalogIn(PC_2)), &(AnalogIn(PC_3)), &(AnalogIn(PA_4))}, {&(AnalogIn(PC_0)), &(AnalogIn(PF_8)), &(AnalogIn(PF_9))}, {&(AnalogIn(PA_3)), &(AnalogIn(PF_10)), &(AnalogIn(PF_3))}, {&(AnalogIn(PA_5)), &(AnalogIn(PA_6)), 0}};*/ } IR_Manager::IR_Manager(std::string tmpStr) { /*isIR_1 = DigitalIn(PG_8); isIR_2 = DigitalIn(PF_11); isIR_3 = DigitalIn(PG_6); isIR_4 = DigitalIn(PG_6); isIR_5 = DigitalIn(PE_0); isIR_6 = DigitalIn(PF_15); isIR = { &isIR_1, &isIR_2, &isIR_3, &isIR_4, &isIR_5, &isIR_6}; //&(AnalogIn(PF_6)), &(AnalogIn(PF_7)), &(AnalogIn(PA_0)) ainIR_11 = AnalogIn(PF_6); ainIR_12 = AnalogIn(PF_7); ainIR_13 = AnalogIn(PA_0); //&(AnalogIn(PB_1)), &(AnalogIn(PF_5)), &(AnalogIn(PF_4)) ainIR_21 = AnalogIn(PB_1); ainIR_22 = AnalogIn(PF_5); ainIR_23 = AnalogIn(PF_4); //&(AnalogIn(PC_2)), &(AnalogIn(PC_3)), &(AnalogIn(PA_4)) ainIR_31 = AnalogIn(PC_2); ainIR_32 = AnalogIn(PC_3); ainIR_33 = AnalogIn(PA_4); //&(AnalogIn(PC_0)), &(AnalogIn(PF_8)), &(AnalogIn(PF_9)) ainIR_41 = AnalogIn(PC_0); ainIR_42 = AnalogIn(PF_8); ainIR_43 = (AnalogIn(PF_9); //&(AnalogIn(PA_3)), &(AnalogIn(PF_10)), &(AnalogIn(PF_3)) ainIR_51 = AnalogIn(PA_3); ainIR_52 = AnalogIn(PF_10); ainIR_53 = (AnalogIn(PF_3); //&(AnalogIn(PA_5)), &(AnalogIn(PA_6)), 0 ainIR_61 = AnalogIn(PA_5); ainIR_62 = AnalogIn(PA_6); ainIR = { {&ainIR_11, &ainIR_12, &ainIR_13}, {&ainIR_21, &ainIR_22, &ainIR_23}, {&ainIR_31, &ainIR_32, &ainIR_33}, {&ainIR_41, &ainIR_42, &ainIR_43}, {&ainIR_51, &ainIR_52, &ainIR_53}, {&ainIR_61, &ainIR_62, 0} };*/ /*isIR[6] = { &(DigitalIn(PG_8)), &(DigitalIn(PF_11)), &(DigitalIn(PG_5)), &(DigitalIn(PG_6)), &(DigitalIn(PE_0)), &(DigitalIn(PF_15))}; ainIR[6][3] = { {&(AnalogIn(PF_6)), &(AnalogIn(PF_7)), &(AnalogIn(PA_0))}, {&(AnalogIn(PB_1)), &(AnalogIn(PF_5)), &(AnalogIn(PF_4))}, {&(AnalogIn(PC_2)), &(AnalogIn(PC_3)), &(AnalogIn(PA_4))}, {&(AnalogIn(PC_0)), &(AnalogIn(PF_8)), &(AnalogIn(PF_9))}, {&(AnalogIn(PA_3)), &(AnalogIn(PF_10)), &(AnalogIn(PF_3))}, {&(AnalogIn(PA_5)), &(AnalogIn(PA_6)), 0}};*/ } void IR_Manager::digitalTest() { //int tmp = isIR[0]->read(); //printf("###### IR_Manager::digitalTest %d\r\n", tmp); for (int ii = 0; ii < 6; ii++) printf("###### IR_Manager::digitalTest ## %d ## %d\r\n", ii, DataStorage::isIR[ii]->read()); } void IR_Manager::analogTest() { //int tmp = isIR[0]->read(); //printf("###### IR_Manager::digitalTest %d\r\n", tmp); printf("###### IR_Manager::analogTest ## Start\r\n"); for (int ii = 0; ii < 6; ii++) { for (int jj = 0; jj < 3; jj++) { float ainTmp = 0; if (ii == 5 && jj == 2) { ainTmp = 0; } else { ainTmp = DataStorage::ainIR[ii][jj]->read(); ainTmp = ainTmp * 1000000 * 100; ainTmp = floor(ainTmp); } std::string ainStr = intToString(ainTmp); //char *tmpS; //sprintf(tmpS, "%12.0f%\r\n", ainTmp); //std::string tmpS2(tmpS); //printf("###### IR_Manager::analogTest ## %d, %d ## %f ## %s\r\n", ii, jj, ainTmp, ainStr); //delete tmpS; } } printf("###### IR_Manager::analogTest ## Over\r\n"); } std::string IR_Manager::getAnalogStr(int ii, int averageCount) { //int tmp = isIR[0]->read(); //printf("###### IR_Manager::digitalTest %d\r\n", tmp); std::string resultStr = ""; if (ii > 5) return resultStr; for (int jj = 0; jj < 3; jj++) { float ainTmp = 0; float ainCount = float(averageCount); if (ii == 5 && jj == 2) { ainTmp = 0; } else { for (int kk = 0; kk < averageCount; kk++) { float ainTmp2 = 0; ainTmp2 = DataStorage::ainIR[ii][jj]->read(); ainTmp2 = ainTmp2 * 1000000 * 100 / ainCount; ainTmp2 = floor(ainTmp2); ainTmp += ainTmp2; } } std::string ainStr = intToString(ainTmp); resultStr.append(ainStr); if (jj != 2) resultStr.append(";"); } return resultStr; }