OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 18277|回复: 22

分享自己编写的HMC5883L 测试程序(寄存器版)

[复制链接]

5

主题

8

帖子

0

精华

新手上路

积分
48
金钱
48
注册时间
2012-10-1
在线时间
0 小时
发表于 2013-5-13 15:07:26 | 显示全部楼层 |阅读模式
分享自己编写的HMC5883L 测试程序(寄存器版)

HMC5883LSTM32测试.rar

578.5 KB, 下载次数: 4691

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165475
金钱
165475
注册时间
2010-12-1
在线时间
2115 小时
发表于 2013-5-13 16:15:53 | 显示全部楼层
回复 支持 反对

使用道具 举报

3

主题

14

帖子

0

精华

新手上路

积分
49
金钱
49
注册时间
2013-4-28
在线时间
1 小时
发表于 2013-5-22 16:20:03 | 显示全部楼层
楼主 你这个DEMO在MINI板子上运行效果不正常啊
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手上路

积分
26
金钱
26
注册时间
2013-5-21
在线时间
1 小时
发表于 2013-5-25 01:09:22 | 显示全部楼层
辛苦了!感谢楼主的无私奉献!
回复 支持 反对

使用道具 举报

0

主题

9

帖子

0

精华

新手上路

积分
29
金钱
29
注册时间
2013-7-24
在线时间
0 小时
发表于 2013-7-24 21:23:03 | 显示全部楼层
菜鸟一个,好好学习下
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
21
金钱
21
注册时间
2013-7-23
在线时间
0 小时
发表于 2013-8-22 19:22:58 | 显示全部楼层

谢谢了

回复 支持 反对

使用道具 举报

45

主题

248

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
448
金钱
448
注册时间
2013-5-18
在线时间
0 小时
发表于 2013-8-27 10:54:56 | 显示全部楼层
顶!!!
回复 支持 反对

使用道具 举报

2

主题

20

帖子

0

精华

新手上路

积分
48
金钱
48
注册时间
2012-10-19
在线时间
0 小时
发表于 2013-10-16 16:19:35 | 显示全部楼层
十分感谢楼主分享
回复 支持 反对

使用道具 举报

2

主题

20

帖子

0

精华

新手上路

积分
48
金钱
48
注册时间
2012-10-19
在线时间
0 小时
发表于 2013-10-16 17:42:00 | 显示全部楼层
楼主,你好,不知道你反馈的角度数值范围大约是从多少到多少。我这反馈的角度值大约是从50到130,顺时针与逆时针并不完全对称;不知道怎么把它修饰成从0到360
回复 支持 反对

使用道具 举报

2

主题

20

帖子

0

精华

新手上路

积分
48
金钱
48
注册时间
2012-10-19
在线时间
0 小时
发表于 2013-10-17 18:28:17 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
原子哥,你好!不知道你有没有看过楼主的这个程序。在IIC_5883.c中有
void I2C_GPIO_Config(void)
{
  RCC->APB2ENR|=1<<3;//先使能外设IO ORTC时钟   
GPIOB->CRL&=0X00FFFFFF;//PC11/12 推挽输出
GPIOB->CRL|=0X33000000;    
GPIOB->ODR|=3<<6;     //PC11,12 输出高

}

bool I2C_Start(void)
{
SDA_H;
SCL_H;
I2C_delay();
if(!SDA_read)return FALSE; //SDA线为低电平则总线忙,退出
SDA_L;
I2C_delay();
if(SDA_read) return FALSE; //SDA线为高电平则总线出错,退出
SDA_L;
I2C_delay();
return TRUE;
}
其中if(!SDA_read)return FALSE;这句话中的SDA_read很是费解。右击到定义则是在IIC_5883.h中的
#define SDA_read      GPIOB->IDR  & GPIO_Pin_7
右击GPIO_Pin_7到定义则是在stm32f10x_gpio.h中的
#define GPIO_Pin_7                 ((u16)0x0080)  /* in 7 selected */这么一句话。
在其他的程序中则再没有找到相关配置GPIO口输入模式的配置。如果不把GPIO_Pin_7 引脚配置为输入模式,那么读这个引脚的时候就应该一直是零啊。当然这个程序是能用的,真的不知道什么时候,把这个引脚配置成的输入模式。还是#define SDA_read      GPIOB->IDR  & GPIO_Pin_7这一句话就直接把它配置成了输入模式,而且你也可以看到下面的程序  SDA_L;  也没有重新配置输入输出模式,直接是将引脚拉低,这应该又是回到输出模式了吧。请给指点指点这是怎么回事
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165475
金钱
165475
注册时间
2010-12-1
在线时间
2115 小时
发表于 2013-10-17 23:32:20 | 显示全部楼层
回复【10楼】yangyankunlc:
---------------------------------
我还真没看过这代码。
你可以仿真下,跟踪代码看看,肯定有地方修改模式的。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

0

主题

4

帖子

0

精华

新手入门

积分
24
金钱
24
注册时间
2014-6-20
在线时间
0 小时
发表于 2015-2-6 12:29:35 | 显示全部楼层
先谢了,看看!
回复 支持 反对

使用道具 举报

28

主题

135

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
492
金钱
492
注册时间
2012-8-9
在线时间
58 小时
发表于 2015-4-18 11:29:40 | 显示全部楼层
楼主你这东西运行了没啥效果。。。。。代码不对吧?
回复 支持 反对

使用道具 举报

1

主题

16

帖子

0

精华

初级会员

Rank: 2

积分
163
金钱
163
注册时间
2016-3-2
在线时间
30 小时
发表于 2016-3-9 14:59:28 | 显示全部楼层
正想搞这个,看看行不习行
回复 支持 反对

使用道具 举报

2

主题

19

帖子

0

精华

新手上路

积分
43
金钱
43
注册时间
2016-3-22
在线时间
5 小时
发表于 2016-3-29 11:56:27 | 显示全部楼层
我觉得他标错了GPIOB->CRL&=0X00FFFFFF;//PC6/7 推挽输出
                         GPIOB->CRL|=0X33000000;         
很明显CRL是低八位,00处在第6,7 位,所以他先将PC6,7 置0,再将6,7设置为推挽输出(33)
回复 支持 反对

使用道具 举报

20

主题

108

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
375
金钱
375
注册时间
2016-9-26
在线时间
59 小时
发表于 2016-12-15 20:51:30 | 显示全部楼层
好帖子
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手上路

积分
45
金钱
45
注册时间
2017-4-24
在线时间
6 小时
发表于 2018-5-20 14:06:54 | 显示全部楼层
感谢楼主,亲测可用
回复 支持 反对

使用道具 举报

2

主题

8

帖子

0

精华

新手上路

积分
30
金钱
30
注册时间
2018-7-5
在线时间
6 小时
发表于 2018-7-11 14:32:29 | 显示全部楼层
没有矫正的话,能比较准确的算出水平转角吗?
回复 支持 反对

使用道具 举报

1

主题

25

帖子

0

精华

初级会员

Rank: 2

积分
165
金钱
165
注册时间
2018-1-18
在线时间
22 小时
发表于 2019-8-8 15:39:58 | 显示全部楼层
学习路过,谢谢分享。
回复 支持 反对

使用道具 举报

0

主题

6

帖子

0

精华

初级会员

Rank: 2

积分
60
金钱
60
注册时间
2019-5-13
在线时间
17 小时
发表于 2019-9-18 10:54:38 | 显示全部楼层
楼主 stm32f10x_Lib.h在哪呀
回复 支持 反对

使用道具 举报

0

主题

60

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3575
金钱
3575
注册时间
2020-4-9
在线时间
323 小时
发表于 2020-4-14 15:03:30 | 显示全部楼层
感谢楼主分享
回复 支持 反对

使用道具 举报

0

主题

60

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3575
金钱
3575
注册时间
2020-4-9
在线时间
323 小时
发表于 2020-5-28 19:30:03 | 显示全部楼层
网上下一个2.2的库,亲测有效
回复 支持 反对

使用道具 举报

0

主题

286

帖子

0

精华

高级会员

Rank: 4

积分
950
金钱
950
注册时间
2018-4-21
在线时间
264 小时
发表于 2020-12-16 22:16:12 | 显示全部楼层
参考参考,蟹蟹楼主分享
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-14 18:16

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表