社区导航

 

搜索
查看: 648|回复: 12

[原创] arduino的X-NUCLEO-IKS01A3驱动

[复制链接]

14

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2019-7-20 20:16 | 显示全部楼层 |阅读模式

恩,参加了一个活动,白给一块板子但是前提是要调试移植到一个MCU上,我就写了arduino UNO。然后拿到手以后发现ST自己其实写了STM32duino的库在这里
[https://github.com/stm32duino/X-NUCLEO-IKS01A3](https://github.com/stm32duino/X-NUCLEO-IKS01A3)
然后还有技术手册在这里
[https://www.st.com/content/ccc/resource/technical/document/user_manual/group1/22/ae/90/6d/9f/03/4e/45/DM00601501/files/DM00601501.pdf/jcr:content/translations/en.DM00601501.pdf](https://www.st.com/content/ccc/resource/technical/document/user_manual/group1/22/ae/90/6d/9f/03/4e/45/DM00601501/files/DM00601501.pdf/jcr:content/translations/en.DM00601501.pdf)

但是有个问题是这个库拿到手并不能直接用。。。
我就写下怎么用这个库吧。。
首先是先把这个库下回来,放在arduino的library下面,打开example发现各种找不到文件,然后需要把在github上列举的那几个库都放回来

1.png

2.png

 

然后打开hello world,首先有一个问题是float_t未定义
3.png

打开文件把这个定义加上就好了。
4.png

然后是有两个报错
5.png
第一个是HTS221的描述文件里说的不支持avr,只支持stm32,这个我试了下是可以直接运行的,如果想解决的话在这里打开这个 6.png

在最后一行加上avr
7.png

另外一个是把uint和int比较了,在前面加上一个类型转换就行


9.png

10.png 11.png

 




此内容由EEWORLD论坛网友jianshan原创,如需转载或用于商业用途需征得作者同意并注明出处
12.png


这会编译就没问题了

不过我测试的时候刚开始是没有输出的,后来我写了一个i2c_scanner扫了一下就又行了,不确定为什么。。。中间发现一个我自己写的代码有类似问题是因为没有写i2c.begin();加上就正常了,但是返回看样例代码好像是有的,不知道是什么玄学。。。

来源:EEWorld ST传感器与低功耗无线技术论坛板块,转载请附上链接
8.png


回复

使用道具 举报

14

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

 楼主| 发表于 2019-7-20 20:19 | 显示全部楼层

额。。。有没有人知道怎么发附件。。

点评

nmg
[attachimg]423608[/attachimg]  详情 回复 发表于 2019-7-21 15:27


回复

使用道具 举报

3655

TA的帖子

202

TA的资源

管理员

Rank: 13Rank: 13Rank: 13Rank: 13

发表于 2019-7-21 15:27 | 显示全部楼层
jianshan 发表于 2019-7-20 20:19 额。。。有没有人知道怎么发附件。。

QQ图片20190721152649.png

点评

额。。。已经发了的文章哪里能重新编辑吗?我想添加附件但是找不到地方。。  详情 回复 发表于 2019-8-3 21:02


回复

使用道具 举报

8587

TA的帖子

14

TA的资源

版主

Rank: 6Rank: 6

测评达人

发表于 2019-7-21 22:33 | 显示全部楼层

开始没有输出,很可能是arduino接口的接触不太好。

点评

Arduio有直接例子,还有CPP的函数,写的非常好,就是很难理解,  详情 回复 发表于 2019-7-25 16:22


回复

使用道具 举报

14

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

 楼主| 发表于 2019-7-22 23:09 | 显示全部楼层


回复

使用道具 举报

14

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

 楼主| 发表于 2019-7-22 23:10 | 显示全部楼层
dcexpert 发表于 2019-7-21 22:33 开始没有输出,很可能是arduino接口的接触不太好。

恩,因为烧写是可以的,应该不是这个问题我觉得。。



回复

使用道具 举报

1712

TA的帖子

4

TA的资源

一粒金砂(高级)

Rank: 3Rank: 3

发表于 2019-7-25 16:22 | 显示全部楼层
dcexpert 发表于 2019-7-21 22:33 开始没有输出,很可能是arduino接口的接触不太好。

Arduio有直接例子,还有CPP的函数,写的非常好,就是很难理解,

点评

arduino的好处是容易复制和使用,缺点是难以改进和调试。  详情 回复 发表于 2019-7-25 16:34


回复

使用道具 举报

8587

TA的帖子

14

TA的资源

版主

Rank: 6Rank: 6

测评达人

发表于 2019-7-25 16:34 | 显示全部楼层
DavidZH 发表于 2019-7-25 16:22 Arduio有直接例子,还有CPP的函数,写的非常好,就是很难理解,

arduino的好处是容易复制和使用,缺点是难以改进和调试。

点评

是啊,都封装成C++;  详情 回复 发表于 2019-7-27 22:32


回复

使用道具 举报

1712

TA的帖子

4

TA的资源

一粒金砂(高级)

Rank: 3Rank: 3

发表于 2019-7-27 22:32 | 显示全部楼层
dcexpert 发表于 2019-7-25 16:34 arduino的好处是容易复制和使用,缺点是难以改进和调试。

是啊,都封装成C++;



回复

使用道具 举报

14

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

 楼主| 发表于 2019-8-3 20:56 | 显示全部楼层

恩,我个人觉得封装的还行,看一下example基本就会用了。

setup里面enable一下,想用的时候get就行了



回复

使用道具 举报

14

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

 楼主| 发表于 2019-8-3 21:02 | 显示全部楼层

额。。。已经发了的文章哪里能重新编辑吗?我想添加附件但是找不到地方。。



回复

使用道具 举报

14

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

 楼主| 发表于 2019-9-2 20:04 | 显示全部楼层

链接: https://pan.baidu.com/s/1zBLOK8bQrOOkoH77CaEs4Q 提取码: grcy 



回复

使用道具 举报

14

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

 楼主| 发表于 2019-9-2 20:05 | 显示全部楼层
我实在找不到上传文件的地方。。。我把文件传到百度云上了,链接在11楼。。


回复

使用道具 举报

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

关闭

站长推荐上一条 /6 下一条

  • 论坛活动 E手掌握

    扫码关注
    EEWORLD 官方微信

  • EE福利  唾手可得

    扫码关注
    EE福利 唾手可得

Archiver|手机版|小黑屋|电子工程世界 ( 京ICP证 060456 )

GMT+8, 2019-9-21 15:13 , Processed in 0.361969 second(s), 18 queries , Gzip On, MemCache On.

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