From: penglei <1624952103@qq.com> Date: Tue, 3 Sep 2024 08:44:49 +0000 (+0800) Subject: 更新cywee dml 版本为2.20.0.0 。 X-Git-Tag: release_V1.2.70_20241020_135402~518^2~18^2~14 X-Git-Url: http://git.snicker.com.cn/css/static/gitweb.css?a=commitdiff_plain;h=refs%2Fchanges%2F862%2F2;p=mirrors%2FFD230.git 更新cywee dml 版本为2.20.0.0 。 重命名MMC5603为CUSTOM_MMC5603 解决与DML新版本库编译冲突问题。 --- diff --git a/code/sdk/drivers/peripheral/cywee/Lib/CWM_LIB_DML_clang_riscv.a b/code/sdk/drivers/peripheral/cywee/Lib/CWM_LIB_DML_clang_riscv.a index 96e0a69cb..c3e85e16a 100644 Binary files a/code/sdk/drivers/peripheral/cywee/Lib/CWM_LIB_DML_clang_riscv.a and b/code/sdk/drivers/peripheral/cywee/Lib/CWM_LIB_DML_clang_riscv.a differ diff --git a/code/sdk/drivers/peripheral/mag/mmc5603/MMC5603.c b/code/sdk/drivers/peripheral/mag/mmc5603/MMC5603.c index f36a73076..67561fd8c 100644 --- a/code/sdk/drivers/peripheral/mag/mmc5603/MMC5603.c +++ b/code/sdk/drivers/peripheral/mag/mmc5603/MMC5603.c @@ -26,42 +26,42 @@ static uint8_t sensor_state = 1; /** * @brief Factory test mode */ -int MMC5603_Factory_Test_Mode(void); +int CUSTOM_MMC5603_Factory_Test_Mode(void); /** * @brief SET operation */ -void MMC5603_SET(void); +void CUSTOM_MMC5603_SET(void); /** * @brief RESET operation */ -void MMC5603_RESET(void); +void CUSTOM_MMC5603_RESET(void); /** * @brief OTP read done check */ -int MMC5603_Check_OTP(void); +int CUSTOM_MMC5603_Check_OTP(void); /** * @brief Check Product ID */ -int MMC5603_CheckID(void); +int CUSTOM_MMC5603_CheckID(void); /** * @brief Auto self-test registers configuration */ -void MMC5603_Auto_SelfTest_Configuration(void); +void CUSTOM_MMC5603_Auto_SelfTest_Configuration(void); /** * @brief Auto self-test */ -int MMC5603_Auto_SelfTest(void); +int CUSTOM_MMC5603_Auto_SelfTest(void); /********************************************************************************* * decription: Factory test mode *********************************************************************************/ -int MMC5603_Factory_Test_Mode(void) +int CUSTOM_MMC5603_Factory_Test_Mode(void) { int i; uint8_t data_reg[6] ={0}; @@ -73,38 +73,38 @@ int MMC5603_Factory_Test_Mode(void) /* Write reg 0x1D */ /* Set Cmm_en bit '0', Disable continuous mode */ - I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_CTRL2, 0x00); + I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_CTRL2, 0x00); - mmc5603_Delay_Ms(20); + CUSTOM_MMC5603_Delay_Ms(20); /* Write reg 0x1B */ /* Set Auto_SR_en bit '0', Disable the function of automatic set/reset */ - I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_CTRL0, 0x00); + I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_CTRL0, 0x00); /* Write reg 0x1C, Set BW<1:0> = 00 */ - I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_CTRL1, 0x00); + I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_CTRL1, 0x00); /* Do RESET operation */ - MMC5603_RESET(); + CUSTOM_MMC5603_RESET(); /* Write 0x01 to register 0x1B, set Take_meas_M bit '1' */ - I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_CTRL0, MMC5603_CMD_TMM); + I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_CTRL0, CUSTOM_MMC5603_CMD_TMM); /* Delay 10 ms to finish the TM operation */ - mmc5603_Delay_Ms(10); + CUSTOM_MMC5603_Delay_Ms(10); /* Read register data */ - I2C_MultiRead_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_DATA, 6, data_reg); + I2C_MultiRead_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_DATA, 6, data_reg); /* Get high 16bits data */ data_reset[0] = (uint16_t)(data_reg[0] << 8 | data_reg[1]); //X axis data_reset[1] = (uint16_t)(data_reg[2] << 8 | data_reg[3]); //Y axis data_reset[2] = (uint16_t)(data_reg[4] << 8 | data_reg[5]); //Z axis /* Do SET operation */ - MMC5603_SET(); + CUSTOM_MMC5603_SET(); /* Write 0x01 to register 0x1B, set Take_meas_M bit '1' */ - I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS,MMC5603_REG_CTRL0,MMC5603_CMD_TMM); + I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS,CUSTOM_MMC5603_REG_CTRL0,CUSTOM_MMC5603_CMD_TMM); /* Delay 10 ms to finish the TM operation */ - mmc5603_Delay_Ms(10); + CUSTOM_MMC5603_Delay_Ms(10); /* Read register data */ - I2C_MultiRead_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_DATA, 6, data_reg); + I2C_MultiRead_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_DATA, 6, data_reg); /* Get high 16bits data */ data_set[0] = (uint16_t)(data_reg[0] << 8 | data_reg[1]); //X axis data_set[1] = (uint16_t)(data_reg[2] << 8 | data_reg[3]); //Y axis @@ -128,13 +128,13 @@ int MMC5603_Factory_Test_Mode(void) /********************************************************************************* * decription: SET operation *********************************************************************************/ -void MMC5603_SET(void) +void CUSTOM_MMC5603_SET(void) { /* Write 0x08 to register 0x1B, set SET bit high */ - I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_CTRL0, MMC5603_CMD_SET); + I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_CTRL0, CUSTOM_MMC5603_CMD_SET); /* Delay to finish the SET operation */ - mmc5603_Delay_Ms(1); + CUSTOM_MMC5603_Delay_Ms(1); return; } @@ -142,13 +142,13 @@ void MMC5603_SET(void) /********************************************************************************* * decription: RESET operation *********************************************************************************/ -void MMC5603_RESET(void) +void CUSTOM_MMC5603_RESET(void) { /* Write 0x10 to register 0x1B, set RESET bit high */ - I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_CTRL0, MMC5603_CMD_RESET); + I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_CTRL0, CUSTOM_MMC5603_CMD_RESET); /* Delay to finish the RESET operation */ - mmc5603_Delay_Ms(1); + CUSTOM_MMC5603_Delay_Ms(1); return; } @@ -156,27 +156,27 @@ void MMC5603_RESET(void) /********************************************************************************* * decription: Product ID check *********************************************************************************/ -int MMC5603_CheckID(void) +int CUSTOM_MMC5603_CheckID(void) { unsigned char pro_id = 0; /* Read register 0x39, check product ID */ - I2C_Read_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_PRODUCTID1, &pro_id); - if(pro_id != MMC5603_PRODUCT_ID) + I2C_Read_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_PRODUCTID1, &pro_id); + if(pro_id != CUSTOM_MMC5603_PRODUCT_ID) return -1; PRINT("MMC5603 ID : 0x%x\r\n",pro_id); return 1; } -void MMC5603_GETID(unsigned char *id) +void CUSTOM_MMC5603_GETID(unsigned char *id) { - I2C_Read_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_PRODUCTID1, id); + I2C_Read_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_PRODUCTID1, id); } /********************************************************************************* * decription: Auto self-test registers configuration *********************************************************************************/ -void MMC5603_Auto_SelfTest_Configuration(void) +void CUSTOM_MMC5603_Auto_SelfTest_Configuration(void) { int i; uint8_t reg_value[3]; @@ -187,7 +187,7 @@ void MMC5603_Auto_SelfTest_Configuration(void) uint8_t st_thd_reg[3]; /* Read trim data from reg 0x27-0x29 */ - I2C_MultiRead_Reg(MMC5603_7BITI2C_ADDRESS,MMC5603_REG_ST_X_VAL,3,reg_value); + I2C_MultiRead_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS,CUSTOM_MMC5603_REG_ST_X_VAL,3,reg_value); for(i=0;i<3;i++) { st_thr_data[i] = (int16_t)(reg_value[i]-128)*32; @@ -202,9 +202,9 @@ void MMC5603_Auto_SelfTest_Configuration(void) st_thd_reg[i] = (uint8_t)st_thd[i]; } /* Write threshold into the reg 0x1E-0x20 */ - I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_X_THD, st_thd_reg[0]); - I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_Y_THD, st_thd_reg[1]); - I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_Z_THD, st_thd_reg[2]); + I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_X_THD, st_thd_reg[0]); + I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_Y_THD, st_thd_reg[1]); + I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_Z_THD, st_thd_reg[2]); return; } @@ -212,19 +212,19 @@ void MMC5603_Auto_SelfTest_Configuration(void) /********************************************************************************* * decription: Auto self-test *********************************************************************************/ -int MMC5603_Auto_SelfTest(void) +int CUSTOM_MMC5603_Auto_SelfTest(void) { uint8_t reg_status = 0; /* Write 0x40 to register 0x1B, set Auto_st_en bit high */ - I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_CTRL0, MMC5603_CMD_AUTO_ST_EN); + I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_CTRL0, CUSTOM_MMC5603_CMD_AUTO_ST_EN); /* Delay 15ms to finish the selftest process */ - mmc5603_Delay_Ms(15); + CUSTOM_MMC5603_Delay_Ms(15); /* Read register 0x18, check Sat_sensor bit */ - I2C_Read_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_STATUS1, ®_status); - if((reg_status&MMC5603_SAT_SENSOR)) + I2C_Read_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_STATUS1, ®_status); + if((reg_status&CUSTOM_MMC5603_SAT_SENSOR)) { return -1; } @@ -235,22 +235,22 @@ int MMC5603_Auto_SelfTest(void) /********************************************************************************* * decription: Continuous mode configuration with auto set and reset *********************************************************************************/ -void MMC5603_Continuous_Mode_With_Auto_SR(uint8_t bandwith, uint8_t sampling_rate) +void CUSTOM_MMC5603_Continuous_Mode_With_Auto_SR(uint8_t bandwith, uint8_t sampling_rate) { /* Write reg 0x1C, Set BW<1:0> = bandwith */ - I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_CTRL1, bandwith); + I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_CTRL1, bandwith); /* Write reg 0x1A, set ODR<7:0> = sampling_rate */ - I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_ODR, sampling_rate); + I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_ODR, sampling_rate); /* Write reg 0x1B */ /* Set Auto_SR_en bit '1', Enable the function of automatic set/reset */ /* Set Cmm_freq_en bit '1', Start the calculation of the measurement period according to the ODR*/ - I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_CTRL0, MMC5603_CMD_CMM_FREQ_EN|MMC5603_CMD_AUTO_SR_EN); + I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_CTRL0, CUSTOM_MMC5603_CMD_CMM_FREQ_EN|CUSTOM_MMC5603_CMD_AUTO_SR_EN); /* Write reg 0x1D */ /* Set Cmm_en bit '1', Enter continuous mode */ - I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_CTRL2, MMC5603_CMD_CMM_EN); + I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_CTRL2, CUSTOM_MMC5603_CMD_CMM_EN); return; } @@ -258,7 +258,7 @@ void MMC5603_Continuous_Mode_With_Auto_SR(uint8_t bandwith, uint8_t sampling_rat /********************************************************************************* * decription: Do selftest operation periodically *********************************************************************************/ -int MMC5603_Saturation_Checking(void) +int CUSTOM_MMC5603_Saturation_Checking(void) { int ret = 0; //1 pass, -1 fail, 0 elapsed time is less 5 seconds @@ -269,16 +269,16 @@ int MMC5603_Saturation_Checking(void) if((cnt++)>=NumOfSamples) { cnt = 0; - ret = MMC5603_Auto_SelfTest(); + ret = CUSTOM_MMC5603_Auto_SelfTest(); if(ret == -1) { /* Sensor is saturated, need to do SET operation */ - MMC5603_SET(); + CUSTOM_MMC5603_SET(); } /* Do TM_M after selftest operation */ - I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS,MMC5603_REG_CTRL0,MMC5603_CMD_TMM); - mmc5603_Delay_Ms(8); + I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS,CUSTOM_MMC5603_REG_CTRL0,CUSTOM_MMC5603_CMD_TMM); + CUSTOM_MMC5603_Delay_Ms(8); } return ret; @@ -287,13 +287,13 @@ int MMC5603_Saturation_Checking(void) /********************************************************************************* * decription: Auto switch the working mode between Auto_SR and SETonly *********************************************************************************/ -void MMC5603_Auto_Switch(uint16_t *mag) +void CUSTOM_MMC5603_Auto_Switch(uint16_t *mag) { float mag_out[3]; - mag_out[0] = ((float)mag[0] - MMC5603_16BIT_OFFSET)/MMC5603_16BIT_SENSITIVITY; - mag_out[1] = ((float)mag[1] - MMC5603_16BIT_OFFSET)/MMC5603_16BIT_SENSITIVITY; - mag_out[2] = ((float)mag[2] - MMC5603_16BIT_OFFSET)/MMC5603_16BIT_SENSITIVITY; + mag_out[0] = ((float)mag[0] - CUSTOM_MMC5603_16BIT_OFFSET)/CUSTOM_MMC5603_16BIT_SENSITIVITY; + mag_out[1] = ((float)mag[1] - CUSTOM_MMC5603_16BIT_OFFSET)/CUSTOM_MMC5603_16BIT_SENSITIVITY; + mag_out[2] = ((float)mag[2] - CUSTOM_MMC5603_16BIT_OFFSET)/CUSTOM_MMC5603_16BIT_SENSITIVITY; if(sensor_state == 1) { @@ -303,16 +303,16 @@ void MMC5603_Auto_Switch(uint16_t *mag) sensor_state = 2; /* Disable continuous mode */ - I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_CTRL2, 0x00); - mmc5603_Delay_Ms(15);//Delay 15ms to finish the last sampling + I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_CTRL2, 0x00); + CUSTOM_MMC5603_Delay_Ms(15);//Delay 15ms to finish the last sampling /* Do SET operation */ - I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_CTRL0, MMC5603_CMD_SET); - mmc5603_Delay_Ms(1);//Delay 1ms to finish the SET operation + I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_CTRL0, CUSTOM_MMC5603_CMD_SET); + CUSTOM_MMC5603_Delay_Ms(1);//Delay 1ms to finish the SET operation /* Do TM_M before next data reading */ - I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS,MMC5603_REG_CTRL0,MMC5603_CMD_TMM); - mmc5603_Delay_Ms(8);//Delay 8ms to finish the TM_M operation + I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS,CUSTOM_MMC5603_REG_CTRL0,CUSTOM_MMC5603_CMD_TMM); + CUSTOM_MMC5603_Delay_Ms(8);//Delay 8ms to finish the TM_M operation } } else if(sensor_state == 2) @@ -323,16 +323,16 @@ void MMC5603_Auto_Switch(uint16_t *mag) sensor_state = 1; /* Enable continuous mode with Auto_SR */ - I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_CTRL0, MMC5603_CMD_CMM_FREQ_EN|MMC5603_CMD_AUTO_SR_EN); - I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_CTRL2, MMC5603_CMD_CMM_EN); + I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_CTRL0, CUSTOM_MMC5603_CMD_CMM_FREQ_EN|CUSTOM_MMC5603_CMD_AUTO_SR_EN); + I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_CTRL2, CUSTOM_MMC5603_CMD_CMM_EN); } else { /* Sensor checking */ - if(MMC5603_Saturation_Checking()==0) + if(CUSTOM_MMC5603_Saturation_Checking()==0) { /* Do TM_M before next data reading */ - I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS,MMC5603_REG_CTRL0,MMC5603_CMD_TMM); + I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS,CUSTOM_MMC5603_REG_CTRL0,CUSTOM_MMC5603_CMD_TMM); } } } @@ -343,13 +343,13 @@ void MMC5603_Auto_Switch(uint16_t *mag) /********************************************************************************* * decription: Disable sensor continuous mode *********************************************************************************/ -void MMC5603_Disable(void) +void CUSTOM_MMC5603_Disable(void) { /* Write reg 0x1D */ /* Set Cmm_en bit '0', Disable continuous mode */ - I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_CTRL2, 0x00); + I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_CTRL2, 0x00); - mmc5603_Delay_Ms(20); + CUSTOM_MMC5603_Delay_Ms(20); return; } @@ -357,7 +357,7 @@ void MMC5603_Disable(void) /********************************************************************************* * decription: Enable sensor *********************************************************************************/ -void MMC5603_Enable(void) +void CUSTOM_MMC5603_Enable(void) { int ret = 0; @@ -365,20 +365,20 @@ void MMC5603_Enable(void) sensor_state = 1; /* Check product ID */ - ret = MMC5603_CheckID(); + ret = CUSTOM_MMC5603_CheckID(); if(ret<0) return; /* Auto self-test registers configuration */ - MMC5603_Auto_SelfTest_Configuration(); + CUSTOM_MMC5603_Auto_SelfTest_Configuration(); /* Do SET operation */ - MMC5603_SET(); + CUSTOM_MMC5603_SET(); /* Work mode setting */ - MMC5603_Continuous_Mode_With_Auto_SR(MMC5603_CMD_BW00, 50); + CUSTOM_MMC5603_Continuous_Mode_With_Auto_SR(CUSTOM_MMC5603_CMD_BW00, 50); - mmc5603_Delay_Ms(20); + CUSTOM_MMC5603_Delay_Ms(20); return; } @@ -436,13 +436,13 @@ static float get_filter_data_z( float inputx) /********************************************************************************* * decription: Read the data register and convert to magnetic field *********************************************************************************/ -void MMC5603_GetData(float *mag_out) +void CUSTOM_MMC5603_GetData(float *mag_out) { uint8_t data_reg[6] ={0}; uint16_t data_temp[3] = {0}; /* Read register data */ - I2C_MultiRead_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_DATA, 6, data_reg); + I2C_MultiRead_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_DATA, 6, data_reg); /* Get high 16bits data */ data_temp[0] = (uint16_t)(data_reg[0] << 8 | data_reg[1]); @@ -450,16 +450,16 @@ void MMC5603_GetData(float *mag_out) data_temp[2] = (uint16_t)(data_reg[4] << 8 | data_reg[5]); /* Transform to unit Gauss */ - mag_out[0] = ((float)data_temp[0] - MMC5603_16BIT_OFFSET)/MMC5603_16BIT_SENSITIVITY; - mag_out[1] = ((float)data_temp[1] - MMC5603_16BIT_OFFSET)/MMC5603_16BIT_SENSITIVITY; - mag_out[2] = ((float)data_temp[2] - MMC5603_16BIT_OFFSET)/MMC5603_16BIT_SENSITIVITY; + mag_out[0] = ((float)data_temp[0] - CUSTOM_MMC5603_16BIT_OFFSET)/CUSTOM_MMC5603_16BIT_SENSITIVITY; + mag_out[1] = ((float)data_temp[1] - CUSTOM_MMC5603_16BIT_OFFSET)/CUSTOM_MMC5603_16BIT_SENSITIVITY; + mag_out[2] = ((float)data_temp[2] - CUSTOM_MMC5603_16BIT_OFFSET)/CUSTOM_MMC5603_16BIT_SENSITIVITY; // mag_out[0] = get_filter_data_x(mag_out[0]); // mag_out[1] = get_filter_data_y(mag_out[1]); // mag_out[2] = get_filter_data_z(mag_out[2]); // filter_index_plus(); - MMC5603_Auto_Switch(data_temp); + CUSTOM_MMC5603_Auto_Switch(data_temp); return; } diff --git a/code/sdk/drivers/peripheral/mag/mmc5603/MMC5603.h b/code/sdk/drivers/peripheral/mag/mmc5603/MMC5603.h index 9a751aca2..0b10c6e51 100644 --- a/code/sdk/drivers/peripheral/mag/mmc5603/MMC5603.h +++ b/code/sdk/drivers/peripheral/mag/mmc5603/MMC5603.h @@ -28,102 +28,102 @@ // typedef signed int int32_t; // signed 32-bt number (-2,147,483,648 to +2,147,483,647) // typedef unsigned int uint32_t; // unsigned 32-bit number (+0 to +4,294,967,295) -#define MMC5603_7BITI2C_ADDRESS 0x30 +#define CUSTOM_MMC5603_7BITI2C_ADDRESS 0x30 -#define MMC5603_REG_DATA 0x00 +#define CUSTOM_MMC5603_REG_DATA 0x00 -#define MMC5603_REG_STATUS1 0x18 -#define MMC5603_REG_STATUS0 0x19 +#define CUSTOM_MMC5603_REG_STATUS1 0x18 +#define CUSTOM_MMC5603_REG_STATUS0 0x19 -#define MMC5603_REG_ODR 0x1A -#define MMC5603_REG_CTRL0 0x1B -#define MMC5603_REG_CTRL1 0x1C -#define MMC5603_REG_CTRL2 0x1D +#define CUSTOM_MMC5603_REG_ODR 0x1A +#define CUSTOM_MMC5603_REG_CTRL0 0x1B +#define CUSTOM_MMC5603_REG_CTRL1 0x1C +#define CUSTOM_MMC5603_REG_CTRL2 0x1D -#define MMC5603_REG_X_THD 0x1E -#define MMC5603_REG_Y_THD 0x1F -#define MMC5603_REG_Z_THD 0x20 +#define CUSTOM_MMC5603_REG_X_THD 0x1E +#define CUSTOM_MMC5603_REG_Y_THD 0x1F +#define CUSTOM_MMC5603_REG_Z_THD 0x20 -#define MMC5603_REG_ST_X_VAL 0x27 -#define MMC5603_REG_ST_Y_VAL 0x28 -#define MMC5603_REG_ST_Z_VAL 0x29 +#define CUSTOM_MMC5603_REG_ST_X_VAL 0x27 +#define CUSTOM_MMC5603_REG_ST_Y_VAL 0x28 +#define CUSTOM_MMC5603_REG_ST_Z_VAL 0x29 -#define MMC5603_REG_PRODUCTID1 0x39 +#define CUSTOM_MMC5603_REG_PRODUCTID1 0x39 /* Bit definition for control register ODR 0x1A */ -#define MMC5603_CMD_ODR_1HZ 0x01 -#define MMC5603_CMD_ODR_5HZ 0x05 -#define MMC5603_CMD_ODR_10HZ 0x0A -#define MMC5603_CMD_ODR_50HZ 0x32 -#define MMC5603_CMD_ODR_100HZ 0x64 -#define MMC5603_CMD_ODR_200HZ 0xC8 -#define MMC5603_CMD_ODR_255HZ 0xFF +#define CUSTOM_MMC5603_CMD_ODR_1HZ 0x01 +#define CUSTOM_MMC5603_CMD_ODR_5HZ 0x05 +#define CUSTOM_MMC5603_CMD_ODR_10HZ 0x0A +#define CUSTOM_MMC5603_CMD_ODR_50HZ 0x32 +#define CUSTOM_MMC5603_CMD_ODR_100HZ 0x64 +#define CUSTOM_MMC5603_CMD_ODR_200HZ 0xC8 +#define CUSTOM_MMC5603_CMD_ODR_255HZ 0xFF /* Bit definition for control register 0 0x1B */ -#define MMC5603_CMD_TMM 0x01 -#define MMC5603_CMD_TMT 0x02 -#define MMC5603_CMD_START_MDT 0x04 -#define MMC5603_CMD_SET 0x08 -#define MMC5603_CMD_RESET 0x10 -#define MMC5603_CMD_AUTO_SR_EN 0x20 -#define MMC5603_CMD_AUTO_ST_EN 0x40 -#define MMC5603_CMD_CMM_FREQ_EN 0x80 +#define CUSTOM_MMC5603_CMD_TMM 0x01 +#define CUSTOM_MMC5603_CMD_TMT 0x02 +#define CUSTOM_MMC5603_CMD_START_MDT 0x04 +#define CUSTOM_MMC5603_CMD_SET 0x08 +#define CUSTOM_MMC5603_CMD_RESET 0x10 +#define CUSTOM_MMC5603_CMD_AUTO_SR_EN 0x20 +#define CUSTOM_MMC5603_CMD_AUTO_ST_EN 0x40 +#define CUSTOM_MMC5603_CMD_CMM_FREQ_EN 0x80 /* Bit definition for control register 1 0x1C */ -#define MMC5603_CMD_BW00 0x00 -#define MMC5603_CMD_BW01 0x01 -#define MMC5603_CMD_BW10 0x02 -#define MMC5603_CMD_BW11 0x03 -#define MMC5603_CMD_ST_ENP 0x20 -#define MMC5603_CMD_ST_ENM 0x40 -#define MMC5603_CMD_SW_RST 0x80 +#define CUSTOM_MMC5603_CMD_BW00 0x00 +#define CUSTOM_MMC5603_CMD_BW01 0x01 +#define CUSTOM_MMC5603_CMD_BW10 0x02 +#define CUSTOM_MMC5603_CMD_BW11 0x03 +#define CUSTOM_MMC5603_CMD_ST_ENP 0x20 +#define CUSTOM_MMC5603_CMD_ST_ENM 0x40 +#define CUSTOM_MMC5603_CMD_SW_RST 0x80 /* Bit definition for control register 2 0x1D */ -#define MMC5603_CMD_PART_SET1 0x00 -#define MMC5603_CMD_PART_SET25 0x01 -#define MMC5603_CMD_PART_SET75 0x02 -#define MMC5603_CMD_PART_SET100 0x03 -#define MMC5603_CMD_PART_SET250 0x04 -#define MMC5603_CMD_PART_SET500 0x05 -#define MMC5603_CMD_PART_SET1000 0x06 -#define MMC5603_CMD_PART_SET2000 0x07 -#define MMC5603_CMD_EN_PART_SET 0x08 -#define MMC5603_CMD_CMM_EN 0x10 -#define MMC5603_CMD_INT_MDT_EN 0x20 -#define MMC5603_CMD_INT_MD_EN 0x40 -#define MMC5603_CMD_HPOWER 0x80 - -#define MMC5603_PRODUCT_ID 0x10 -#define MMC5603_MM_DONE_INT 0x01 -#define MMC5603_MT_DONE_INT 0x02 -#define MMC5603_MDT_FLAG_INT 0x04 -#define MMC5603_ST_FAIL_INT 0x08 -#define MMC5603_OTP_READ_DONE 0x10 -#define MMC5603_SAT_SENSOR 0x20 -#define MMC5603_MM_DONE 0x40 -#define MMC5603_MT_DONE 0x80 +#define CUSTOM_MMC5603_CMD_PART_SET1 0x00 +#define CUSTOM_MMC5603_CMD_PART_SET25 0x01 +#define CUSTOM_MMC5603_CMD_PART_SET75 0x02 +#define CUSTOM_MMC5603_CMD_PART_SET100 0x03 +#define CUSTOM_MMC5603_CMD_PART_SET250 0x04 +#define CUSTOM_MMC5603_CMD_PART_SET500 0x05 +#define CUSTOM_MMC5603_CMD_PART_SET1000 0x06 +#define CUSTOM_MMC5603_CMD_PART_SET2000 0x07 +#define CUSTOM_MMC5603_CMD_EN_PART_SET 0x08 +#define CUSTOM_MMC5603_CMD_CMM_EN 0x10 +#define CUSTOM_MMC5603_CMD_INT_MDT_EN 0x20 +#define CUSTOM_MMC5603_CMD_INT_MD_EN 0x40 +#define CUSTOM_MMC5603_CMD_HPOWER 0x80 + +#define CUSTOM_MMC5603_PRODUCT_ID 0x10 +#define CUSTOM_MMC5603_MM_DONE_INT 0x01 +#define CUSTOM_MMC5603_MT_DONE_INT 0x02 +#define CUSTOM_MMC5603_MDT_FLAG_INT 0x04 +#define CUSTOM_MMC5603_ST_FAIL_INT 0x08 +#define CUSTOM_MMC5603_OTP_READ_DONE 0x10 +#define CUSTOM_MMC5603_SAT_SENSOR 0x20 +#define CUSTOM_MMC5603_MM_DONE 0x40 +#define CUSTOM_MMC5603_MT_DONE 0x80 // 16-bit mode, null field output (32768) -#define MMC5603_16BIT_OFFSET 32768 -#define MMC5603_16BIT_SENSITIVITY 1024 +#define CUSTOM_MMC5603_16BIT_OFFSET 32768 +#define CUSTOM_MMC5603_16BIT_SENSITIVITY 1024 /** * @brief Enable the sensor */ -void MMC5603_Enable(void); +void CUSTOM_MMC5603_Enable(void); /** * @brief Disable the sensor */ -void MMC5603_Disable(void); +void CUSTOM_MMC5603_Disable(void); /** * @brief Get sensor data * @param mag_out is the magnetic field vector, unit is gauss */ -void MMC5603_GetData(float *mag_out); +void CUSTOM_MMC5603_GetData(float *mag_out); -void MMC5603_GETID(unsigned char *id); +void CUSTOM_MMC5603_GETID(unsigned char *id); #endif diff --git a/code/sdk/drivers/peripheral/utils/custom_utils.c b/code/sdk/drivers/peripheral/utils/custom_utils.c index 65161e975..9ad8f9a5f 100644 --- a/code/sdk/drivers/peripheral/utils/custom_utils.c +++ b/code/sdk/drivers/peripheral/utils/custom_utils.c @@ -1669,7 +1669,7 @@ void touch_getstate(void) #include "mag_service.h" void mmc5603_getid(unsigned char *id) { - MMC5603_GETID(id); + CUSTOM_MMC5603_GETID(id); } void mmc5603_getdata(float *fAzimuth,float *fPitch,float *fRoll)