Shivam Garg
/
EVAL-ADBMS2950_copy
Diff: program/src/application.cpp
- Revision:
- 6:5d29fdcbae72
- Parent:
- 4:0e99350684aa
- Child:
- 9:0a4828d32e76
--- a/program/src/application.cpp Tue Jul 28 07:32:42 2020 +0000 +++ b/program/src/application.cpp Thu Jul 30 10:42:10 2020 +0000 @@ -39,6 +39,9 @@ #define TOTAL_IC 1 cell_asic IC[TOTAL_IC]; +int loop_measurment_count = 10; /* Loop measurment count (default count)*/ +int loop_measurment_time = 1; /* milliseconds(mS)*/ +int loop_count = 0; void app_main() { @@ -46,13 +49,7 @@ while(1) { int user_command; -#ifdef MBED - pc.scanf("%d", &user_command); - pc.printf("Enter cmd:%d\n", user_command); -#else /* IAR */ - scanf("%d", &user_command); - printf("Enter cmd:%d\n", user_command); -#endif /* MBED */ + readUserInupt(&user_command); adi2950_init_config(TOTAL_IC, &IC[0]); run_command(user_command); /*!< Run test case */ } @@ -71,109 +68,173 @@ break; case 3: - adi2950_start_adi1_measurment(TOTAL_IC); + adi2950_start_adi1_single_measurment(TOTAL_IC); break; case 4: - adi2950_start_adi2_measurment(TOTAL_IC); + adi2950_start_adi2_single_measurment(TOTAL_IC); break; case 5: - adi2950_start_adi1_adi2_measurment(TOTAL_IC); + adi2950_start_adi1_continuous_measurment(TOTAL_IC); break; case 6: - adi2950_read_current_register(TOTAL_IC, &IC[0]); + adi2950_start_adi2_continuous_measurment(TOTAL_IC); break; case 7: - adi2950_read_vbat_register(TOTAL_IC, &IC[0]); + adi2950_start_adi1_redundant_single_measurment(TOTAL_IC); break; case 8: - adi2950_read_ivbat_register(TOTAL_IC, &IC[0]); + adi2950_start_adi1_redundant_continuous_measurment(TOTAL_IC); break; case 9: - adi2950_read_ocr_register(TOTAL_IC, &IC[0]); + adi2950_read_cr_vbat_ivbat_registers(TOTAL_IC, &IC[0]); break; case 10: - adi2950_read_avgcr_register(TOTAL_IC, &IC[0]); + loop_count = 0; + printMsg("Please enter loop measurment count:"); + readUserInupt(&loop_measurment_count); + while(loop_count < loop_measurment_count) + { + printResultCount(loop_count); + adi2950_read_cr_vbat_ivbat_registers(TOTAL_IC, &IC[0]); + Delay_ms(loop_measurment_time); + loop_count = loop_count + 1; + } break; case 11: - adi2950_read_avgvbat_register(TOTAL_IC, &IC[0]); + adi2950_read_ocr_register(TOTAL_IC, &IC[0]); break; case 12: - adi2950_read_avgivbat_register(TOTAL_IC, &IC[0]); + loop_count = 0; + printMsg("Please enter loop measurment count:"); + readUserInupt(&loop_measurment_count); + while(loop_count < loop_measurment_count) + { + printResultCount(loop_count); + adi2950_read_ocr_register(TOTAL_IC, &IC[0]); + Delay_ms(loop_measurment_time); + loop_count = loop_count + 1; + } break; case 13: - adi2950_start_adv_measurment(TOTAL_IC); + adi2950_read_avgcr_avgvbat_avgivbat_registers(TOTAL_IC, &IC[0]); break; case 14: + loop_count = 0; + printMsg("Please enter loop measurment count:"); + readUserInupt(&loop_measurment_count); + while(loop_count < loop_measurment_count) + { + printResultCount(loop_count); + adi2950_read_avgcr_avgvbat_avgivbat_registers(TOTAL_IC, &IC[0]); + Delay_ms(loop_measurment_time); + loop_count = loop_count + 1; + } + break; + + case 15: + adi2950_all_current_battery_voltage_registers(TOTAL_IC, &IC[0]); + break; + + case 16: + printMsg("Please enter loop measurment count:"); + readUserInupt(&loop_measurment_count); + loop_count = 0; + while(loop_count < loop_measurment_count) + { + printResultCount(loop_count); + adi2950_all_current_battery_voltage_registers(TOTAL_IC, &IC[0]); + Delay_ms(loop_measurment_time); + loop_count = loop_count + 1; + } + break; + + case 17: + adi2950_start_adv_measurment(TOTAL_IC); + break; + + case 18: adi2950_read_vr_registers(TOTAL_IC, &IC[0]); break; - case 15: + case 19: + adi2950_read_rvr_registers(TOTAL_IC, &IC[0]); + break; + + case 20: + adi2950_read_vr_rvr_registers(TOTAL_IC, &IC[0]); + break; + + case 21: adi2950_read_vrx_registers(TOTAL_IC, &IC[0]); break; - case 16: - adi2950_read_rvr_registers(TOTAL_IC, &IC[0]); - break; - - case 17: + case 22: adi2950_start_adaux_measurment(TOTAL_IC); break; - case 18: + case 23: adi2950_read_adaux_measurment(TOTAL_IC, &IC[0]); break; - case 19: + case 24: + adi2950_read_status_c_register(TOTAL_IC, &IC[0]); + break; + + case 25: adi2950_read_all_status_registers(TOTAL_IC, &IC[0]); break; - case 20: + case 26: adi2950_read_device_sid(TOTAL_IC, &IC[0]); break; - case 21: + case 27: adi2950_soft_reset(TOTAL_IC); break; - case 22: + case 28: adi2950_reset_cmd_count(TOTAL_IC); break; - case 23: + case 29: adi2950_snap(TOTAL_IC); break; - case 24: + case 30: adi2950_unsnap(TOTAL_IC); break; - case 25: - adi2950_gpio_spi_communication(TOTAL_IC, &IC[0]); + case 31: + adi2950_set_reset_gpo_pins(TOTAL_IC, &IC[0]); break; - case 26: + case 32: + adi2950_gpio_spi_write_to_slave(TOTAL_IC, &IC[0]); + break; + + case 33: + adi2950_gpio_spi_read_from_slave(TOTAL_IC, &IC[0]); + break; + + case 34: adi2950_gpio_i2c_write_to_slave(TOTAL_IC, &IC[0]); break; - case 27: + case 35: adi2950_gpio_i2c_read_from_slave(TOTAL_IC, &IC[0]); break; - case 28: - adi2950_set_reset_gpo_pins(TOTAL_IC, &IC[0]); - break; - case 0: printMenu(); break;