【资源下载】下载地址如下:
https://docs.qq.com/doc/DTlRSd01BZXNpRUxl
STM32单片机智能指南针电子罗盘方位显示23
本系统由STM32F103C8T6单片机、LCD1602液晶显示、GY-271模块及电压组成。
1、上电先进行数据校准,刚上电,液晶没有出现显示的情况下:
以传感器为中心顺时针缓慢旋转一周;然后以传感器为轴心缓慢翻转一周。
2、校准后液晶开始显示,指南针模块获取位置信息,
并在液晶LC1602上显示方向和角度。
extern unsigned char BUF[8]; //接收数据缓存区 extern void Init_HMC5883(void); //初始化5883 extern void conversion(unsigned int temp_data); extern void Single_Write_HMC5883(unsigned char REG_Address,unsigned char REG_data); //单个写入数据 //unsigned char Single_Read_HMC5883(unsigned char REG_Address); //单个读取内部寄存器数据 extern void Multiple_Read_HMC5883(void); //连续的读取内部寄存器数据 int x,y,z;//中间变量 double angle;//角度 #define CalThreshold 0 int Xmax, Xmin, Ymax, Ymin, Zmax, Zmin; //中间变量 最大 最小值 int Mag_UserCal_Offset_X,Mag_UserCal_Offset_Y,Mag_UserCal_Offset_Z;//变量差值