main.c 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. #include "include.h"
  2. #if BT_TWS_LTX_EN
  3. static const uint8_t tws_inquiry_rf_param[11] = {
  4. 5, //pa_gain
  5. 3, //mix_gain
  6. 18, //dig_gain
  7. 5, //pa_aux_gain
  8. 3, //pa_cap
  9. 8, //mix_cap
  10. 5, //pa_vcasn2
  11. 4, //pa_vcasn
  12. 15, //pa_nbias
  13. 7, //pa_aux_nbias
  14. 4, //txdbm
  15. };
  16. #endif
  17. const uint8_t *bt_rf_get_inq_param(void)
  18. {
  19. #if BT_TWS_LTX_EN
  20. return tws_inquiry_rf_param;
  21. #else
  22. return NULL;
  23. #endif
  24. }
  25. u8 get_chip_package(void)
  26. {
  27. u8 package = 0;
  28. if(xcfg_cb.bt_rf_param <= 2) {
  29. package = 0; //0 default
  30. } else if(xcfg_cb.bt_rf_param <= 5) {
  31. package = 1; //1 SOP16
  32. }
  33. //printf("get_chip_package = %d\n",package);
  34. return package;
  35. }
  36. const uint8_t *bt_rf_get_param(void)
  37. {
  38. uint8_t *rf = NULL;
  39. if(xcfg_cb.bt_user_param_en) {
  40. printf("bt user param:\n");
  41. xcfg_cb.rf_pa_aux_nbias = xcfg_cb.rf_pa_nbias/2;
  42. rf = (uint8_t *)&xcfg_cb.rf_pa_gain;
  43. } else {
  44. printf("bt package param = %d\n",xcfg_cb.bt_rf_param);
  45. rf = bt_get_package_rf_param(xcfg_cb.bt_rf_param);
  46. }
  47. if(rf != NULL) {
  48. printf("rf_param: ");
  49. for(int i = 0; i < 11; i++) {
  50. printf("%d ",rf[i]);
  51. }
  52. printf("\n");
  53. }
  54. return rf; //使用内部参数
  55. }
  56. //正常启动Main函数
  57. int main(void)
  58. {
  59. printf("Hello AB560X: %08x\n", (LVDCON & 0x1ff0000));
  60. bsp_sys_init();
  61. func_run();
  62. return 0;
  63. }
  64. //升级完成
  65. void update_complete(int mode)
  66. {
  67. bsp_update_init();
  68. if (mode == 0) {
  69. WDT_DIS();
  70. while (1);
  71. }
  72. WDT_RST();
  73. }