IC解密stm32+QMC5883L磁力传感器源程序 时间:2026-08-19 来源: 芯片解密 浏览:2次 字号:大 中 小 IC解密单片机源程序如下:IC解密#include "HMC5883L.h"IC解密#include "I2C.h"IC解密#include "delay.h"void hmc_write_reg(u8 reg,u8 data){ IIC_Start(); IIC_Send_Byte(WRITE_ADDRESS); IIC_Wait_Ack(); IIC_Send_Byte(reg); IIC_Wait_Ack(); IIC_Send_Byte(data); IIC_Wait_Ack(); IIC_Stop(); //delay_ms(5);}u8 hmc_read_reg(u8 reg){ u8 data; IIC_Start(); IIC_Send_Byte(WRITE_ADDRESS); IIC_Wait_Ack(); IIC_Send_Byte(reg); IIC_Wait_Ack(); IIC_Stop(); IIC_Start(); IIC_Send_Byte(READ_ADDRESS); IIC_Wait_Ack(); data=IIC_Read_Byte(); IIC_NAck(); IIC_Stop(); return data;}void hmc_read_XYZ(short int *data){// u16 temp;// temp=hmc_read_reg(DATAX_M);// *data++=(temp<<8)+hmc_read_reg(DATAX_L);// temp=hmc_read_reg(DATAY_M);// *data++=(temp<<8)+hmc_read_reg(DATAY_L);// temp=hmc_read_reg(DATAZ_M);// *data++=(temp<<8)+hmc_read_reg(DATAZ_L); *data++=((int16_t)hmc_read_reg(DATAX_M)<<8)|hmc_read_reg(DATAX_L); *data++=((int16_t)hmc_read_reg(DATAY_M)<<8)|hmc_read_reg(DATAY_L); *data++=((int16_t)hmc_read_reg(DATAZ_M)<<8)|hmc_read_reg(DATAZ_L);}void hmc_init(void){ hmc_write_reg(0X0B,0x01); hmc_write_reg(0X20,0x40); hmc_write_reg(0X21,0x01); hmc_write_reg(CONFIGA,0x1D); delay_ms(10);} 上一篇:IC解密STM32F4+W5500以太网通讯 下一篇:STC15单片机IC解密