极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

楼主: Ansifa

Arduino学习笔记A3 - Arduino连接HMC5883L三轴电子罗盘传感器

  [复制链接]
发表于 2014-10-27 09:27:21 | 显示全部楼层
1.0.6版本的,库改过了。运行结果都是乱的,第一列数字: 111,45,270,123,135,0 。。。。。没规律的,难道我家磁场干扰这么厉害吗、有没有遇到同样问题的兄弟,求解答{:soso_e183:}
回复 支持 反对

使用道具 举报

发表于 2014-11-12 15:07:48 | 显示全部楼层
树·水·风 发表于 2012-3-7 19:08
哦,谢谢。我在淘宝上搜,有引脚的要贵很多,自己又没有焊接的经验,有点囧啊

焊接还是很简单的,个人玩买个可调温和恒温的电烙铁,最好60W的,升温快,焊接前先将烙铁头附锡(其实一般新电烙铁都需要先附锡,每次用完也要附锡防氧化),面板焊接点注意刷好助焊剂(可以用松香+酒精自己调,酒精要纯度高的工业酒精大概酒精和松香1:0.2就差不多了,然后刷到要焊接的引脚和PCB板上),最后直接焊锡丝点烙铁头刷引脚(不要担心连线,先让焊锡全部下到引脚上,最后拿烙铁刷一边,焊锡会自己焊接到点,最好让板子稍微倾斜,自上而下刷,这样多余的锡会流到最下边,然后拿烙铁点掉就好了),最后用酒精棉擦洗焊点(将多余助焊剂洗掉),检查焊点是否有连接,如果不确定用镊子刮一刮就好了。(烙铁使用要快点快提,这样锡会自己成非常漂亮的形状,不要长时间点焊点)

PCB板是不会附着焊锡的,所以不用担心焊不好,其实很简单,关键烙铁要好,个人用我觉得黄花907调温恒温烙铁就好,淘宝上很便宜,反正我自己用的就很不错。。。。

最后,烙铁头要多买几个不同样式的,以应对不同焊点。。
回复 支持 反对

使用道具 举报

发表于 2014-11-12 20:37:30 | 显示全部楼层
darkorigin 发表于 2012-6-1 17:15
楼主的代码用了,很爽,呵呵
纠结了3天了,就是为了测试新买的10轴模块的好坏
之前用MWC代码测试之后唯独 ...

请教一下,为什么我用楼主的代码编译的结果一直出错啊,即使已经使用了楼主的库。难道必须覆盖原库才行吗?
回复 支持 反对

使用道具 举报

发表于 2014-11-12 20:58:52 | 显示全部楼层
被迫幸福 发表于 2014-11-12 20:37
请教一下,为什么我用楼主的代码编译的结果一直出错啊,即使已经使用了楼主的库。难道必须覆盖原库才行吗 ...

ARDUINO 的IDE版本问题可能性最大
一般开帖子尤其要注意
还有就是错误代码要贴出来 你不贴错误码 别人很难帮你看的
就好像去看医生去说 我朋友病了 不舒服其他都不说 即便是扁鹊再生也没法子的
回复 支持 反对

使用道具 举报

发表于 2014-11-12 21:00:42 | 显示全部楼层
被迫幸福 发表于 2014-11-12 20:37
请教一下,为什么我用楼主的代码编译的结果一直出错啊,即使已经使用了楼主的库。难道必须覆盖原库才行吗 ...

11年的代码  IDE版本变化导致库文件失效 很多函数都变了~~~~
回复 支持 反对

使用道具 举报

发表于 2014-11-12 21:24:41 | 显示全部楼层
darkorigin 发表于 2014-11-12 21:00
11年的代码  IDE版本变化导致库文件失效 很多函数都变了~~~~

恩,谢谢你了,按照评论里把cpp文件里面的代码改了一些,已经可以输出了。
回复 支持 反对

使用道具 举报

发表于 2014-11-13 10:02:10 | 显示全部楼层
darkorigin 发表于 2014-11-12 21:00
11年的代码  IDE版本变化导致库文件失效 很多函数都变了~~~~

用HMC5883L_Example-ansifa成功读出了数据,可是z轴的输出只有0 180  360三种,请问一下这是为何?下面这个是用另一个程序调试时出现的错误,不知道怎么修改的?
Arduino:1.5.8 (Windows 7), 板:"Arduino Uno"

Build options changed, rebuilding all

HMC5883L_Example.pde:1:1: error: stray '\' in program
HMC5883L_Example.pde:4:13: error: variable or field 'Output' declared void
HMC5883L_Example.pde:4:13: error: 'MagnetometerRaw' was not declared in this scope
HMC5883L_Example.pde:4:34: error: 'MagnetometerScaled' was not declared in this scope
HMC5883L_Example.pde:4:61: error: expected primary-expression before 'float'
HMC5883L_Example.pde:4:76: error: expected primary-expression before 'float'
HMC5883L_Example.pde:1:2: error: 'ufeff' does not name a type
In file included from HMC5883L_Example.pde:20:0:
D:\Program Files\Arduino\hardware\arduino\avr\libraries\Wire/Wire.h:77:8: error: 'TwoWire' does not name a type
extern TwoWire Wire;
        ^
HMC5883L_Example.pde: In function 'void setup()':
HMC5883L_Example.pde:36:3: error: 'Wire' was not declared in this scope
HMC5883L_Example.pde: In function 'void loop()':
HMC5883L_Example.pde:85:46: error: 'Output' was not declared in this scope
编译有误。

  报告将会包含更多的信息
  "Show verbose output during compilation"
  在 文件>首选项 中启用
回复 支持 反对

使用道具 举报

发表于 2014-11-14 09:54:51 | 显示全部楼层
HMC5883L_Example.pde:1:1: error: stray '\' in program
错误 缺失的 "\"在程序里
HMC5883L_Example.pde:4:13: error: variable or field 'Output' declared void
变量Output 没有初始值




估计还是库文件、程序和IDE版本不对应的问题 老代码容易出这样的 蛮多函数定义 都需要改变
基本上一套代码 要配合对应的IDE 和对应版本的库文件  特别是前两个要对应 否则一堆类似变量未定义 函数未定义之类的问题
回复 支持 反对

使用道具 举报

发表于 2014-11-19 09:20:15 | 显示全部楼层
darkorigin 发表于 2014-11-14 09:54
HMC5883L_Example.pde:1:1: error: stray '\' in program
错误 缺失的 "\"在程序里
HMC5883L_Example.pd ...

版本不同的话,有什么固定的库修改方法吗,还是说改动很大?
回复 支持 反对

使用道具 举报

发表于 2014-11-21 02:46:30 | 显示全部楼层
被迫幸福 发表于 2014-11-19 09:20
版本不同的话,有什么固定的库修改方法吗,还是说改动很大?

有些函数的调用变了
比如参数的数量 类型
有些是函数名变了  会导致无效调用
0.8和1.0的代码很多都不能调试成功。

语法不会变 毕竟都是C的扩展。
回复 支持 反对

使用道具 举报

发表于 2014-11-21 02:48:30 | 显示全部楼层
被迫幸福 发表于 2014-11-19 09:20
版本不同的话,有什么固定的库修改方法吗,还是说改动很大?

还有就是准备安下心去搞ARDUINO,一定要尽量学会看错误代码
“ 失败乃成功之母 ” 其实在IT界来说 错误是正确之母
错误信息 能读懂 这样很多问题都不是问题  特别是新手 语法、调用格式等总容易出错 自己看得懂之后 就好的多
回复 支持 反对

使用道具 举报

发表于 2014-11-28 09:46:08 | 显示全部楼层
scyzygl 发表于 2014-10-4 02:08
上传一个HMC5883L库文件,放在C:\Program Files (x86)\Arduino\libraries就可运行,ARDUINO 1.0.6版本的三轴 ...

非常感谢!楼主居然把那么老的版本拿出来,叫我们怎么改啊!无语!!IDE官网都出到1.5.8了,真是,害我这小白试了半天都报错,还以为传感器坏了
回复 支持 反对

使用道具 举报

发表于 2014-12-20 12:40:55 | 显示全部楼层
Good_Morning 发表于 2014-9-15 23:38
求助啊大神们,我的5883怎么没有反应呢

我的跟你的一样 没反应
回复 支持 反对

使用道具 举报

发表于 2015-1-19 11:32:00 | 显示全部楼层
zjhyhky 发表于 2013-1-22 22:46
1.0以上版本具体如何改库

没有人解答,我自己百度百度,终于解决了。方法如下:

正解,终于把这问题解决了。3Q
回复 支持 反对

使用道具 举报

发表于 2015-1-28 10:39:01 | 显示全部楼层
zjhyhky 发表于 2013-1-22 22:46
1.0以上版本具体如何改库

没有人解答,我自己百度百度,终于解决了。方法如下:

这个是对的
回复 支持 反对

使用道具 举报

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

本版积分规则 需要先绑定手机号

Archiver|联系我们|极客工坊

GMT+8, 2024-3-29 09:48 , Processed in 0.050573 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

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