单片机解密MC11S测试电容参考程序MM32单片机
单片机解密主控芯片为mm32,已经过测试,1000pf电容测试效果,误差在1%。程序调试中,仅供参考
- 单片机解密#include "delay.h"
- 单片机解密#include "command.h"
- 单片机解密#include "Vbe.h"
- 单片机解密#include "math.h"
- 单片机解密#include "i2c_master.h"
- #include "MC11S.h"
- #define CLKIN 2.4
- #define PI 3.14159
- int MC11_WriteReg(uint8_t temp)
- {
- u8 data;
- MC11_I2C_Transmit(I2C_ADDR[1],CFG,OS_SD_Stop_Trans);
- Delay_ms(10);
- if((temp=0x0C)||(temp=0x0D)||(temp=0x10)||(temp=0x15)||(temp=0x16)||(temp>=0x1D && temp<=0x1F)
- ||(temp>=0x21 && temp<=0x22)||(temp=0x25)||(temp==0x33))
- {
- MC11_I2C_Transmit(I2C_ADDR[1],CFG,REF_SEL_In_CLK|INTB_EN_EN|INTB_MODE_ALERT|CR_1S|OS_SD_Stop_Trans);
- Delay_ms(20);
- MC11_I2C_Transmit(I2C_ADDR[1],temp,temp&0xff);
- Delay_ms(20);
- MC11_I2C_Receive(I2C_ADDR[1],temp,&data);
- printf("\r\nRegAddr:%02X Data:%02X",temp,data);
- if(temp==0x21)
- {
- MC11_I2C_Transmit(I2C_ADDR[1],4,0);
- MC11_I2C_Transmit(I2C_ADDR[1],5,0);
- MC11_I2C_Transmit(I2C_ADDR[1],6,0);
- MC11_I2C_Transmit(I2C_ADDR[1],7,0);
- }
- }
- else printf("\nThis register cannot be written to");
- }
- int MC11_ReadReg(void)
- {
- u8 data=0;
- MC11_I2C_Transmit(I2C_ADDR[1],CFG,OS_SD_Stop_Trans);
- Delay_ms(10);
- for(u8 i=4;i<8;i++)
- {
- MC11_I2C_Receive(I2C_ADDR[1],i,&data);
- printf("\r\nRegAddr:%02X Data:%02X",i,data);
- }
-
- for(u8 i=0x0C;i<0x0E;i++)
- {
- MC11_I2C_Receive(I2C_ADDR[1],i,&data);
- printf("\r\nRegAddr:%02X Data:%02X",i,data);
- }
-
- MC11_I2C_Receive(I2C_ADDR[1],0x10,&data);
- printf("\r\nRegAddr:10 Data:%02X",data);
-
-
- for(u8 i=0x15;i<0x17;i++)
- {
- MC11_I2C_Receive(I2C_ADDR[1],i,&data);
- printf("\r\nRegAddr:%02X Data:%02X",i,data);
- }
- MC11_I2C_Receive(I2C_ADDR[1],0x18,&data);
- printf("\r\nRegAddr:18 Data:%02X",data);
-
- for(u8 i=0x1D;i<0x20;i++)
- {
- MC11_I2C_Receive(I2C_ADDR[1],i,&data);
- printf("\r\nRegAddr:%02X Data:%02X",i,data);
- }
-
- for(u8 i=0x21;i<0x23;i++)
- {
- MC11_I2C_Receive(I2C_ADDR[1],i,&data);
- printf("\r\nRegAddr:%02X Data:%02X",i,data);
- }
-
- MC11_I2C_Receive(I2C_ADDR[1],0x25,&data);
- printf("\r\nRegAddr:25 Data:%02X",data);
-
- MC11_I2C_Receive(I2C_ADDR[1],0x33,&data);
- printf("\r\nRegAddr:33 Data:%02X",data);
-
- MC11_I2C_Receive(I2C_ADDR[1],0x7E,&data);
- printf("\r\nRegAddr:7E Data:%02X",data);
-
- MC11_I2C_Receive(I2C_ADDR[1],0x7F,&data);
- printf("\r\nRegAddr:7F Data:%02X",data);
- }

芯片解密