更新cywee dml 版本为2.20.0.0 。 862/2
authorpenglei <1624952103@qq.com>
Tue, 3 Sep 2024 08:44:49 +0000 (16:44 +0800)
committerpenglei <1624952103@qq.com>
Tue, 3 Sep 2024 08:44:49 +0000 (16:44 +0800)
重命名MMC5603为CUSTOM_MMC5603 解决与DML新版本库编译冲突问题。

code/sdk/drivers/peripheral/cywee/Lib/CWM_LIB_DML_clang_riscv.a
code/sdk/drivers/peripheral/mag/mmc5603/MMC5603.c
code/sdk/drivers/peripheral/mag/mmc5603/MMC5603.h
code/sdk/drivers/peripheral/utils/custom_utils.c

index 96e0a69..c3e85e1 100644 (file)
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
index f36a730..67561fd 100644 (file)
@@ -26,42 +26,42 @@ static uint8_t sensor_state = 1;
 /**\r
  * @brief Factory test mode\r
  */\r
-int MMC5603_Factory_Test_Mode(void);\r
+int CUSTOM_MMC5603_Factory_Test_Mode(void);\r
 \r
 /**\r
  * @brief SET operation \r
  */\r
-void MMC5603_SET(void);\r
+void CUSTOM_MMC5603_SET(void);\r
 \r
 /**\r
  * @brief RESET operation \r
  */\r
-void MMC5603_RESET(void);\r
+void CUSTOM_MMC5603_RESET(void);\r
 \r
 /**\r
  * @brief OTP read done check\r
  */\r
-int MMC5603_Check_OTP(void);\r
+int CUSTOM_MMC5603_Check_OTP(void);\r
 \r
 /**\r
  * @brief Check Product ID\r
  */\r
-int MMC5603_CheckID(void);\r
+int CUSTOM_MMC5603_CheckID(void);\r
 \r
 /**\r
  * @brief Auto self-test registers configuration\r
  */\r
-void MMC5603_Auto_SelfTest_Configuration(void);\r
+void CUSTOM_MMC5603_Auto_SelfTest_Configuration(void);\r
 \r
 /**\r
  * @brief Auto self-test\r
  */\r
-int MMC5603_Auto_SelfTest(void);\r
+int CUSTOM_MMC5603_Auto_SelfTest(void);\r
 \r
 /*********************************************************************************\r
 * decription: Factory test mode \r
 *********************************************************************************/\r
-int MMC5603_Factory_Test_Mode(void)\r
+int CUSTOM_MMC5603_Factory_Test_Mode(void)\r
 {\r
        int i;\r
        uint8_t data_reg[6] ={0};\r
@@ -73,38 +73,38 @@ int MMC5603_Factory_Test_Mode(void)
        \r
        /* Write reg 0x1D */\r
        /* Set Cmm_en bit '0', Disable continuous mode */       \r
-       I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_CTRL2, 0x00);\r
+       I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_CTRL2, 0x00);\r
        \r
-       mmc5603_Delay_Ms(20);\r
+       CUSTOM_MMC5603_Delay_Ms(20);\r
        \r
        /* Write reg 0x1B */\r
        /* Set Auto_SR_en bit '0', Disable the function of automatic set/reset */\r
-       I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_CTRL0, 0x00);        \r
+       I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_CTRL0, 0x00);  \r
        \r
        /* Write reg 0x1C, Set BW<1:0> = 00 */\r
-       I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_CTRL1, 0x00);        \r
+       I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_CTRL1, 0x00);  \r
                                \r
        /* Do RESET operation */\r
-       MMC5603_RESET();        \r
+       CUSTOM_MMC5603_RESET(); \r
        /* Write 0x01 to register 0x1B, set Take_meas_M bit '1' */\r
-       I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_CTRL0, MMC5603_CMD_TMM);     \r
+       I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_CTRL0, CUSTOM_MMC5603_CMD_TMM);        \r
        /* Delay 10 ms to finish the TM operation */\r
-       mmc5603_Delay_Ms(10);           \r
+       CUSTOM_MMC5603_Delay_Ms(10);            \r
        /* Read register data */\r
-       I2C_MultiRead_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_DATA, 6, data_reg);\r
+       I2C_MultiRead_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_DATA, 6, data_reg);\r
        /* Get high 16bits data */\r
        data_reset[0] = (uint16_t)(data_reg[0] << 8 | data_reg[1]);     //X axis\r
        data_reset[1] = (uint16_t)(data_reg[2] << 8 | data_reg[3]);     //Y axis                \r
        data_reset[2] = (uint16_t)(data_reg[4] << 8 | data_reg[5]);     //Z axis \r
        \r
        /* Do SET operation */\r
-       MMC5603_SET();  \r
+       CUSTOM_MMC5603_SET();   \r
        /* Write 0x01 to register 0x1B, set Take_meas_M bit '1' */\r
-       I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS,MMC5603_REG_CTRL0,MMC5603_CMD_TMM);       \r
+       I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS,CUSTOM_MMC5603_REG_CTRL0,CUSTOM_MMC5603_CMD_TMM);  \r
        /* Delay 10 ms to finish the TM operation */\r
-       mmc5603_Delay_Ms(10);           \r
+       CUSTOM_MMC5603_Delay_Ms(10);            \r
        /* Read register data */\r
-       I2C_MultiRead_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_DATA, 6, data_reg);\r
+       I2C_MultiRead_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_DATA, 6, data_reg);\r
        /* Get high 16bits data */\r
        data_set[0] = (uint16_t)(data_reg[0] << 8 | data_reg[1]);       //X axis\r
        data_set[1] = (uint16_t)(data_reg[2] << 8 | data_reg[3]);       //Y axis                \r
@@ -128,13 +128,13 @@ int MMC5603_Factory_Test_Mode(void)
 /*********************************************************************************\r
 * decription: SET operation \r
 *********************************************************************************/\r
-void MMC5603_SET(void)\r
+void CUSTOM_MMC5603_SET(void)\r
 {      \r
        /* Write 0x08 to register 0x1B, set SET bit high */\r
-       I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_CTRL0, MMC5603_CMD_SET);     \r
+       I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_CTRL0, CUSTOM_MMC5603_CMD_SET);        \r
        \r
        /* Delay to finish the SET operation */\r
-       mmc5603_Delay_Ms(1);\r
+       CUSTOM_MMC5603_Delay_Ms(1);\r
        \r
        return; \r
 }\r
@@ -142,13 +142,13 @@ void MMC5603_SET(void)
 /*********************************************************************************\r
 * decription: RESET operation \r
 *********************************************************************************/\r
-void MMC5603_RESET(void)\r
+void CUSTOM_MMC5603_RESET(void)\r
 {      \r
        /* Write 0x10 to register 0x1B, set RESET bit high */\r
-       I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_CTRL0, MMC5603_CMD_RESET);\r
+       I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_CTRL0, CUSTOM_MMC5603_CMD_RESET);\r
        \r
        /* Delay to finish the RESET operation */\r
-       mmc5603_Delay_Ms(1);\r
+       CUSTOM_MMC5603_Delay_Ms(1);\r
        \r
        return; \r
 }\r
@@ -156,27 +156,27 @@ void MMC5603_RESET(void)
 /*********************************************************************************\r
 * decription: Product ID check\r
 *********************************************************************************/\r
-int MMC5603_CheckID(void)\r
+int CUSTOM_MMC5603_CheckID(void)\r
 {\r
        unsigned char pro_id = 0;\r
        \r
        /* Read register 0x39, check product ID */\r
-       I2C_Read_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_PRODUCTID1, &pro_id); \r
-       if(pro_id != MMC5603_PRODUCT_ID)\r
+       I2C_Read_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_PRODUCTID1, &pro_id);   \r
+       if(pro_id != CUSTOM_MMC5603_PRODUCT_ID)\r
                return -1;\r
        PRINT("MMC5603 ID : 0x%x\r\n",pro_id);\r
        return 1;\r
 }\r
 \r
-void MMC5603_GETID(unsigned char *id)\r
+void CUSTOM_MMC5603_GETID(unsigned char *id)\r
 {\r
-       I2C_Read_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_PRODUCTID1, id);      \r
+       I2C_Read_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_PRODUCTID1, id);        \r
 }\r
 \r
 /*********************************************************************************\r
 * decription: Auto self-test registers configuration\r
 *********************************************************************************/\r
-void MMC5603_Auto_SelfTest_Configuration(void)\r
+void CUSTOM_MMC5603_Auto_SelfTest_Configuration(void)\r
 {\r
        int i;\r
        uint8_t reg_value[3];\r
@@ -187,7 +187,7 @@ void MMC5603_Auto_SelfTest_Configuration(void)
        uint8_t st_thd_reg[3];          \r
 \r
        /* Read trim data from reg 0x27-0x29 */\r
-       I2C_MultiRead_Reg(MMC5603_7BITI2C_ADDRESS,MMC5603_REG_ST_X_VAL,3,reg_value);    \r
+       I2C_MultiRead_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS,CUSTOM_MMC5603_REG_ST_X_VAL,3,reg_value);      \r
        for(i=0;i<3;i++)\r
        {\r
                st_thr_data[i] = (int16_t)(reg_value[i]-128)*32; \r
@@ -202,9 +202,9 @@ void MMC5603_Auto_SelfTest_Configuration(void)
                        st_thd_reg[i] = (uint8_t)st_thd[i];\r
        }\r
        /* Write threshold into the reg 0x1E-0x20 */\r
-       I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_X_THD, st_thd_reg[0]);\r
-       I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_Y_THD, st_thd_reg[1]);\r
-       I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_Z_THD, st_thd_reg[2]);\r
+       I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_X_THD, st_thd_reg[0]);\r
+       I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_Y_THD, st_thd_reg[1]);\r
+       I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_Z_THD, st_thd_reg[2]);\r
        \r
        return;\r
 }\r
@@ -212,19 +212,19 @@ void MMC5603_Auto_SelfTest_Configuration(void)
 /*********************************************************************************\r
 * decription: Auto self-test\r
 *********************************************************************************/\r
-int MMC5603_Auto_SelfTest(void)\r
+int CUSTOM_MMC5603_Auto_SelfTest(void)\r
 {\r
        uint8_t reg_status = 0;\r
        \r
        /* Write 0x40 to register 0x1B, set Auto_st_en bit high */\r
-       I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_CTRL0, MMC5603_CMD_AUTO_ST_EN);\r
+       I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_CTRL0, CUSTOM_MMC5603_CMD_AUTO_ST_EN);\r
        \r
        /* Delay 15ms to finish the selftest process */\r
-       mmc5603_Delay_Ms(15);\r
+       CUSTOM_MMC5603_Delay_Ms(15);\r
        \r
        /* Read register 0x18, check Sat_sensor bit */\r
-       I2C_Read_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_STATUS1, &reg_status);        \r
-       if((reg_status&MMC5603_SAT_SENSOR))\r
+       I2C_Read_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_STATUS1, &reg_status);  \r
+       if((reg_status&CUSTOM_MMC5603_SAT_SENSOR))\r
        {\r
                return -1;\r
        }\r
@@ -235,22 +235,22 @@ int MMC5603_Auto_SelfTest(void)
 /*********************************************************************************\r
 * decription: Continuous mode configuration with auto set and reset\r
 *********************************************************************************/\r
-void MMC5603_Continuous_Mode_With_Auto_SR(uint8_t bandwith, uint8_t sampling_rate)\r
+void CUSTOM_MMC5603_Continuous_Mode_With_Auto_SR(uint8_t bandwith, uint8_t sampling_rate)\r
 {\r
        /* Write reg 0x1C, Set BW<1:0> = bandwith */\r
-       I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_CTRL1, bandwith);\r
+       I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_CTRL1, bandwith);\r
        \r
        /* Write reg 0x1A, set ODR<7:0> = sampling_rate */\r
-       I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_ODR, sampling_rate); \r
+       I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_ODR, sampling_rate); \r
        \r
        /* Write reg 0x1B */\r
        /* Set Auto_SR_en bit '1', Enable the function of automatic set/reset */\r
        /* Set Cmm_freq_en bit '1', Start the calculation of the measurement period according to the ODR*/      \r
-       I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_CTRL0, MMC5603_CMD_CMM_FREQ_EN|MMC5603_CMD_AUTO_SR_EN);\r
+       I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_CTRL0, CUSTOM_MMC5603_CMD_CMM_FREQ_EN|CUSTOM_MMC5603_CMD_AUTO_SR_EN);\r
 \r
        /* Write reg 0x1D */\r
        /* Set Cmm_en bit '1', Enter continuous mode */ \r
-       I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_CTRL2, MMC5603_CMD_CMM_EN);  \r
+       I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_CTRL2, CUSTOM_MMC5603_CMD_CMM_EN);     \r
        \r
        return;\r
 }\r
@@ -258,7 +258,7 @@ void MMC5603_Continuous_Mode_With_Auto_SR(uint8_t bandwith, uint8_t sampling_rat
 /*********************************************************************************\r
 * decription: Do selftest operation periodically\r
 *********************************************************************************/\r
-int MMC5603_Saturation_Checking(void)\r
+int CUSTOM_MMC5603_Saturation_Checking(void)\r
 {      \r
        int ret = 0; //1 pass, -1 fail, 0 elapsed time is less 5 seconds\r
 \r
@@ -269,16 +269,16 @@ int MMC5603_Saturation_Checking(void)
        if((cnt++)>=NumOfSamples)\r
        {\r
                cnt = 0;\r
-               ret = MMC5603_Auto_SelfTest();\r
+               ret = CUSTOM_MMC5603_Auto_SelfTest();\r
                if(ret == -1)           \r
                {\r
                        /* Sensor is saturated, need to do SET operation */\r
-                       MMC5603_SET();          \r
+                       CUSTOM_MMC5603_SET();           \r
                }\r
                \r
                /* Do TM_M after selftest operation */\r
-               I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS,MMC5603_REG_CTRL0,MMC5603_CMD_TMM);       \r
-               mmc5603_Delay_Ms(8);\r
+               I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS,CUSTOM_MMC5603_REG_CTRL0,CUSTOM_MMC5603_CMD_TMM);  \r
+               CUSTOM_MMC5603_Delay_Ms(8);\r
        }\r
 \r
        return ret;\r
@@ -287,13 +287,13 @@ int MMC5603_Saturation_Checking(void)
 /*********************************************************************************\r
 * decription: Auto switch the working mode between Auto_SR and SETonly\r
 *********************************************************************************/\r
-void MMC5603_Auto_Switch(uint16_t *mag)\r
+void CUSTOM_MMC5603_Auto_Switch(uint16_t *mag)\r
 {\r
        float mag_out[3];       \r
        \r
-       mag_out[0] = ((float)mag[0] - MMC5603_16BIT_OFFSET)/MMC5603_16BIT_SENSITIVITY;\r
-       mag_out[1] = ((float)mag[1] - MMC5603_16BIT_OFFSET)/MMC5603_16BIT_SENSITIVITY;\r
-       mag_out[2] = ((float)mag[2] - MMC5603_16BIT_OFFSET)/MMC5603_16BIT_SENSITIVITY;\r
+       mag_out[0] = ((float)mag[0] - CUSTOM_MMC5603_16BIT_OFFSET)/CUSTOM_MMC5603_16BIT_SENSITIVITY;\r
+       mag_out[1] = ((float)mag[1] - CUSTOM_MMC5603_16BIT_OFFSET)/CUSTOM_MMC5603_16BIT_SENSITIVITY;\r
+       mag_out[2] = ((float)mag[2] - CUSTOM_MMC5603_16BIT_OFFSET)/CUSTOM_MMC5603_16BIT_SENSITIVITY;\r
        \r
        if(sensor_state == 1)\r
        {\r
@@ -303,16 +303,16 @@ void MMC5603_Auto_Switch(uint16_t *mag)
                        sensor_state = 2;\r
                        \r
                        /* Disable continuous mode */   \r
-                       I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_CTRL2, 0x00);\r
-                       mmc5603_Delay_Ms(15);//Delay 15ms to finish the last sampling\r
+                       I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_CTRL2, 0x00);\r
+                       CUSTOM_MMC5603_Delay_Ms(15);//Delay 15ms to finish the last sampling\r
                        \r
                        /* Do SET operation */\r
-                       I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_CTRL0, MMC5603_CMD_SET);     \r
-                       mmc5603_Delay_Ms(1);//Delay 1ms to finish the SET operation\r
+                       I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_CTRL0, CUSTOM_MMC5603_CMD_SET);        \r
+                       CUSTOM_MMC5603_Delay_Ms(1);//Delay 1ms to finish the SET operation\r
                        \r
                        /* Do TM_M before next data reading */\r
-                       I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS,MMC5603_REG_CTRL0,MMC5603_CMD_TMM);       \r
-                       mmc5603_Delay_Ms(8);//Delay 8ms to finish the TM_M operation                    \r
+                       I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS,CUSTOM_MMC5603_REG_CTRL0,CUSTOM_MMC5603_CMD_TMM);  \r
+                       CUSTOM_MMC5603_Delay_Ms(8);//Delay 8ms to finish the TM_M operation                     \r
                }       \r
        }\r
        else if(sensor_state == 2)\r
@@ -323,16 +323,16 @@ void MMC5603_Auto_Switch(uint16_t *mag)
                        sensor_state = 1;\r
                        \r
                        /* Enable continuous mode with Auto_SR */\r
-                       I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_CTRL0, MMC5603_CMD_CMM_FREQ_EN|MMC5603_CMD_AUTO_SR_EN);\r
-                       I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_CTRL2, MMC5603_CMD_CMM_EN);\r
+                       I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_CTRL0, CUSTOM_MMC5603_CMD_CMM_FREQ_EN|CUSTOM_MMC5603_CMD_AUTO_SR_EN);\r
+                       I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_CTRL2, CUSTOM_MMC5603_CMD_CMM_EN);\r
                }\r
                else\r
                {       \r
                        /* Sensor checking */\r
-                       if(MMC5603_Saturation_Checking()==0)\r
+                       if(CUSTOM_MMC5603_Saturation_Checking()==0)\r
                        {                       \r
                                /* Do TM_M before next data reading */\r
-                               I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS,MMC5603_REG_CTRL0,MMC5603_CMD_TMM);       \r
+                               I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS,CUSTOM_MMC5603_REG_CTRL0,CUSTOM_MMC5603_CMD_TMM);  \r
                        }\r
                }               \r
        }\r
@@ -343,13 +343,13 @@ void MMC5603_Auto_Switch(uint16_t *mag)
 /*********************************************************************************\r
 * decription: Disable sensor continuous mode\r
 *********************************************************************************/\r
-void MMC5603_Disable(void)\r
+void CUSTOM_MMC5603_Disable(void)\r
 {\r
        /* Write reg 0x1D */\r
        /* Set Cmm_en bit '0', Disable continuous mode */       \r
-       I2C_Write_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_CTRL2, 0x00);\r
+       I2C_Write_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_CTRL2, 0x00);\r
        \r
-       mmc5603_Delay_Ms(20);\r
+       CUSTOM_MMC5603_Delay_Ms(20);\r
        \r
        return;\r
 }\r
@@ -357,7 +357,7 @@ void MMC5603_Disable(void)
 /*********************************************************************************\r
 * decription: Enable sensor\r
 *********************************************************************************/\r
-void MMC5603_Enable(void)\r
+void CUSTOM_MMC5603_Enable(void)\r
 {      \r
        int ret = 0;\r
        \r
@@ -365,20 +365,20 @@ void MMC5603_Enable(void)
        sensor_state = 1;\r
        \r
        /* Check product ID */\r
-       ret = MMC5603_CheckID();\r
+       ret = CUSTOM_MMC5603_CheckID();\r
        if(ret<0)\r
                return; \r
        \r
        /* Auto self-test registers configuration */\r
-       MMC5603_Auto_SelfTest_Configuration();\r
+       CUSTOM_MMC5603_Auto_SelfTest_Configuration();\r
                \r
        /* Do SET operation */\r
-       MMC5603_SET();          \r
+       CUSTOM_MMC5603_SET();           \r
 \r
        /* Work mode setting */\r
-       MMC5603_Continuous_Mode_With_Auto_SR(MMC5603_CMD_BW00, 50);\r
+       CUSTOM_MMC5603_Continuous_Mode_With_Auto_SR(CUSTOM_MMC5603_CMD_BW00, 50);\r
        \r
-       mmc5603_Delay_Ms(20);\r
+       CUSTOM_MMC5603_Delay_Ms(20);\r
        \r
        return;\r
 }\r
@@ -436,13 +436,13 @@ static float get_filter_data_z( float inputx)
 /*********************************************************************************\r
 * decription: Read the data register and convert to magnetic field \r
 *********************************************************************************/\r
-void MMC5603_GetData(float *mag_out)\r
+void CUSTOM_MMC5603_GetData(float *mag_out)\r
 {\r
        uint8_t data_reg[6] ={0};\r
        uint16_t data_temp[3] = {0};\r
                        \r
        /* Read register data */\r
-       I2C_MultiRead_Reg(MMC5603_7BITI2C_ADDRESS, MMC5603_REG_DATA, 6, data_reg);\r
+       I2C_MultiRead_Reg(CUSTOM_MMC5603_7BITI2C_ADDRESS, CUSTOM_MMC5603_REG_DATA, 6, data_reg);\r
        \r
        /* Get high 16bits data */\r
        data_temp[0] = (uint16_t)(data_reg[0] << 8 | data_reg[1]);      \r
@@ -450,16 +450,16 @@ void MMC5603_GetData(float *mag_out)
        data_temp[2] = (uint16_t)(data_reg[4] << 8 | data_reg[5]); \r
 \r
        /* Transform to unit Gauss */\r
-       mag_out[0] = ((float)data_temp[0] - MMC5603_16BIT_OFFSET)/MMC5603_16BIT_SENSITIVITY; \r
-       mag_out[1] = ((float)data_temp[1] - MMC5603_16BIT_OFFSET)/MMC5603_16BIT_SENSITIVITY;\r
-       mag_out[2] = ((float)data_temp[2] - MMC5603_16BIT_OFFSET)/MMC5603_16BIT_SENSITIVITY;\r
+       mag_out[0] = ((float)data_temp[0] - CUSTOM_MMC5603_16BIT_OFFSET)/CUSTOM_MMC5603_16BIT_SENSITIVITY; \r
+       mag_out[1] = ((float)data_temp[1] - CUSTOM_MMC5603_16BIT_OFFSET)/CUSTOM_MMC5603_16BIT_SENSITIVITY;\r
+       mag_out[2] = ((float)data_temp[2] - CUSTOM_MMC5603_16BIT_OFFSET)/CUSTOM_MMC5603_16BIT_SENSITIVITY;\r
 \r
        // mag_out[0] = get_filter_data_x(mag_out[0]);\r
        // mag_out[1] = get_filter_data_y(mag_out[1]);\r
        // mag_out[2] = get_filter_data_z(mag_out[2]);\r
        // filter_index_plus();\r
        \r
-       MMC5603_Auto_Switch(data_temp); \r
+       CUSTOM_MMC5603_Auto_Switch(data_temp);  \r
                        \r
        return;\r
 }\r
index 9a751ac..0b10c6e 100644 (file)
 // typedef   signed int   int32_t;     // signed 32-bt number    (-2,147,483,648 to +2,147,483,647)\r
 // typedef unsigned int   uint32_t;    // unsigned 32-bit number (+0 to +4,294,967,295)\r
 \r
-#define MMC5603_7BITI2C_ADDRESS                0x30\r
+#define CUSTOM_MMC5603_7BITI2C_ADDRESS         0x30\r
 \r
-#define MMC5603_REG_DATA                       0x00\r
+#define CUSTOM_MMC5603_REG_DATA                        0x00\r
 \r
-#define MMC5603_REG_STATUS1                    0x18\r
-#define MMC5603_REG_STATUS0                    0x19\r
+#define CUSTOM_MMC5603_REG_STATUS1                     0x18\r
+#define CUSTOM_MMC5603_REG_STATUS0                     0x19\r
 \r
-#define MMC5603_REG_ODR                                0x1A\r
-#define MMC5603_REG_CTRL0                      0x1B\r
-#define MMC5603_REG_CTRL1                      0x1C\r
-#define MMC5603_REG_CTRL2                      0x1D\r
+#define CUSTOM_MMC5603_REG_ODR                         0x1A\r
+#define CUSTOM_MMC5603_REG_CTRL0                       0x1B\r
+#define CUSTOM_MMC5603_REG_CTRL1                       0x1C\r
+#define CUSTOM_MMC5603_REG_CTRL2                       0x1D\r
 \r
-#define MMC5603_REG_X_THD                      0x1E\r
-#define MMC5603_REG_Y_THD                      0x1F\r
-#define MMC5603_REG_Z_THD                      0x20\r
+#define CUSTOM_MMC5603_REG_X_THD                       0x1E\r
+#define CUSTOM_MMC5603_REG_Y_THD                       0x1F\r
+#define CUSTOM_MMC5603_REG_Z_THD                       0x20\r
 \r
-#define MMC5603_REG_ST_X_VAL           0x27\r
-#define MMC5603_REG_ST_Y_VAL           0x28\r
-#define MMC5603_REG_ST_Z_VAL           0x29\r
+#define CUSTOM_MMC5603_REG_ST_X_VAL            0x27\r
+#define CUSTOM_MMC5603_REG_ST_Y_VAL            0x28\r
+#define CUSTOM_MMC5603_REG_ST_Z_VAL            0x29\r
 \r
-#define MMC5603_REG_PRODUCTID1         0x39\r
+#define CUSTOM_MMC5603_REG_PRODUCTID1          0x39\r
 \r
 /* Bit definition for control register ODR 0x1A */\r
-#define MMC5603_CMD_ODR_1HZ                    0x01\r
-#define MMC5603_CMD_ODR_5HZ                    0x05\r
-#define MMC5603_CMD_ODR_10HZ           0x0A\r
-#define MMC5603_CMD_ODR_50HZ           0x32\r
-#define MMC5603_CMD_ODR_100HZ          0x64\r
-#define MMC5603_CMD_ODR_200HZ          0xC8\r
-#define MMC5603_CMD_ODR_255HZ          0xFF\r
+#define CUSTOM_MMC5603_CMD_ODR_1HZ                     0x01\r
+#define CUSTOM_MMC5603_CMD_ODR_5HZ                     0x05\r
+#define CUSTOM_MMC5603_CMD_ODR_10HZ            0x0A\r
+#define CUSTOM_MMC5603_CMD_ODR_50HZ            0x32\r
+#define CUSTOM_MMC5603_CMD_ODR_100HZ           0x64\r
+#define CUSTOM_MMC5603_CMD_ODR_200HZ           0xC8\r
+#define CUSTOM_MMC5603_CMD_ODR_255HZ           0xFF\r
 \r
 /* Bit definition for control register 0 0x1B */\r
-#define MMC5603_CMD_TMM                                0x01\r
-#define MMC5603_CMD_TMT                0x02\r
-#define MMC5603_CMD_START_MDT          0x04\r
-#define MMC5603_CMD_SET                                0x08\r
-#define MMC5603_CMD_RESET                      0x10\r
-#define MMC5603_CMD_AUTO_SR_EN         0x20\r
-#define MMC5603_CMD_AUTO_ST_EN         0x40\r
-#define MMC5603_CMD_CMM_FREQ_EN                0x80\r
+#define CUSTOM_MMC5603_CMD_TMM                         0x01\r
+#define CUSTOM_MMC5603_CMD_TMT                 0x02\r
+#define CUSTOM_MMC5603_CMD_START_MDT           0x04\r
+#define CUSTOM_MMC5603_CMD_SET                         0x08\r
+#define CUSTOM_MMC5603_CMD_RESET                       0x10\r
+#define CUSTOM_MMC5603_CMD_AUTO_SR_EN          0x20\r
+#define CUSTOM_MMC5603_CMD_AUTO_ST_EN          0x40\r
+#define CUSTOM_MMC5603_CMD_CMM_FREQ_EN         0x80\r
 \r
 /* Bit definition for control register 1 0x1C */\r
-#define MMC5603_CMD_BW00                       0x00\r
-#define MMC5603_CMD_BW01                       0x01\r
-#define MMC5603_CMD_BW10                       0x02\r
-#define MMC5603_CMD_BW11                       0x03\r
-#define MMC5603_CMD_ST_ENP                     0x20\r
-#define MMC5603_CMD_ST_ENM                     0x40\r
-#define MMC5603_CMD_SW_RST                     0x80\r
+#define CUSTOM_MMC5603_CMD_BW00                        0x00\r
+#define CUSTOM_MMC5603_CMD_BW01                        0x01\r
+#define CUSTOM_MMC5603_CMD_BW10                        0x02\r
+#define CUSTOM_MMC5603_CMD_BW11                        0x03\r
+#define CUSTOM_MMC5603_CMD_ST_ENP                      0x20\r
+#define CUSTOM_MMC5603_CMD_ST_ENM                      0x40\r
+#define CUSTOM_MMC5603_CMD_SW_RST                      0x80\r
 \r
 /* Bit definition for control register 2 0x1D */\r
-#define MMC5603_CMD_PART_SET1          0x00\r
-#define MMC5603_CMD_PART_SET25         0x01\r
-#define MMC5603_CMD_PART_SET75         0x02\r
-#define MMC5603_CMD_PART_SET100                0x03\r
-#define MMC5603_CMD_PART_SET250                0x04\r
-#define MMC5603_CMD_PART_SET500                0x05\r
-#define MMC5603_CMD_PART_SET1000       0x06\r
-#define MMC5603_CMD_PART_SET2000       0x07\r
-#define MMC5603_CMD_EN_PART_SET                0x08\r
-#define MMC5603_CMD_CMM_EN                     0x10\r
-#define MMC5603_CMD_INT_MDT_EN         0x20\r
-#define MMC5603_CMD_INT_MD_EN          0x40\r
-#define MMC5603_CMD_HPOWER                     0x80\r
-\r
-#define MMC5603_PRODUCT_ID                     0x10\r
-#define MMC5603_MM_DONE_INT                    0x01\r
-#define MMC5603_MT_DONE_INT                    0x02\r
-#define MMC5603_MDT_FLAG_INT           0x04\r
-#define MMC5603_ST_FAIL_INT                    0x08\r
-#define MMC5603_OTP_READ_DONE          0x10\r
-#define MMC5603_SAT_SENSOR                     0x20\r
-#define MMC5603_MM_DONE                                0x40\r
-#define MMC5603_MT_DONE                                0x80\r
+#define CUSTOM_MMC5603_CMD_PART_SET1           0x00\r
+#define CUSTOM_MMC5603_CMD_PART_SET25          0x01\r
+#define CUSTOM_MMC5603_CMD_PART_SET75          0x02\r
+#define CUSTOM_MMC5603_CMD_PART_SET100         0x03\r
+#define CUSTOM_MMC5603_CMD_PART_SET250         0x04\r
+#define CUSTOM_MMC5603_CMD_PART_SET500         0x05\r
+#define CUSTOM_MMC5603_CMD_PART_SET1000        0x06\r
+#define CUSTOM_MMC5603_CMD_PART_SET2000        0x07\r
+#define CUSTOM_MMC5603_CMD_EN_PART_SET         0x08\r
+#define CUSTOM_MMC5603_CMD_CMM_EN                      0x10\r
+#define CUSTOM_MMC5603_CMD_INT_MDT_EN          0x20\r
+#define CUSTOM_MMC5603_CMD_INT_MD_EN           0x40\r
+#define CUSTOM_MMC5603_CMD_HPOWER                      0x80\r
+\r
+#define CUSTOM_MMC5603_PRODUCT_ID                      0x10\r
+#define CUSTOM_MMC5603_MM_DONE_INT                     0x01\r
+#define CUSTOM_MMC5603_MT_DONE_INT                     0x02\r
+#define CUSTOM_MMC5603_MDT_FLAG_INT            0x04\r
+#define CUSTOM_MMC5603_ST_FAIL_INT                     0x08\r
+#define CUSTOM_MMC5603_OTP_READ_DONE           0x10\r
+#define CUSTOM_MMC5603_SAT_SENSOR                      0x20\r
+#define CUSTOM_MMC5603_MM_DONE                         0x40\r
+#define CUSTOM_MMC5603_MT_DONE                         0x80\r
 \r
 // 16-bit mode, null field output (32768)\r
-#define        MMC5603_16BIT_OFFSET            32768\r
-#define        MMC5603_16BIT_SENSITIVITY       1024\r
+#define        CUSTOM_MMC5603_16BIT_OFFSET             32768\r
+#define        CUSTOM_MMC5603_16BIT_SENSITIVITY        1024\r
 \r
 /**\r
  * @brief Enable the sensor\r
  */\r
-void MMC5603_Enable(void);\r
+void CUSTOM_MMC5603_Enable(void);\r
 \r
 /**\r
  * @brief Disable the sensor\r
  */\r
-void MMC5603_Disable(void);\r
+void CUSTOM_MMC5603_Disable(void);\r
 \r
 /**\r
  * @brief Get sensor data\r
  * @param mag_out is the magnetic field vector, unit is gauss\r
  */\r
-void MMC5603_GetData(float *mag_out);\r
+void CUSTOM_MMC5603_GetData(float *mag_out);\r
 \r
-void MMC5603_GETID(unsigned char *id);\r
+void CUSTOM_MMC5603_GETID(unsigned char *id);\r
 \r
 #endif\r
 \r
index 65161e9..9ad8f9a 100644 (file)
@@ -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)