4回答

1收藏

[评测分享] 【ROHM传感器套件试用】二、stm32代码移植(所有模块通过测试)

#板卡评测 #板卡评测 5583 人阅读 | 4 人回复 | 2017-03-30

本帖最后由 踏平幼稚园 于 2017-3-30 19:45 编辑


    因为官网提供的测试例程是arduino平台,所以使用stm32需要适当的修改下。本着代码最小修改原则,本次通过实现arduino下的同名函数接口供模块调用,以下是移植过程及需要注意的一些问题。

一、I2C
    1、I2C模块主要修改实现的是读写函数,这里从简
直接将原来函数内容替换为一个函数调用。如:KX022模块的kx022.cpp文件
        修改前:

        

        
        修改后:

        


    2、arduino的I2C地址传入的是7bit地址,但是stm32是8bit地址,所以各I2C模块的头文件需要改一下设备地址。如:KX022模块的kx022.h文件
        修改前:

        


        修改后:

        


    3、实现I2C类及初始化,读,写接口,实现文件为Wire.cpp和Wire.h
        


二、I/O
    实现I/O初始化,输入,中断接口,实现文件Digital.cpp和Digital.h
        

        

三、ADC
    实现ADC初始化,采样接口,实现文件Analog
.cpp和Analog.h
        


四、串口
    实现串口初始化,输出接口,实现文件Serial.cpp和Serial.h
        


五、替换arduino.h头文件
    将各模块中arduino.h替换为各模块所需的功能头文件。如KX022模块:

        修改前:
         


        修改后:
         


六、使用及测试

    将所有模块ino文件的测试例程全部整合到main.c中,并在main.h中添加宏,以便控制每个模块的测试与否
        


至此移植结束,接下来会是各模块的功能测试,敬请期待。


官网提供的资料及例程(目录结构整理了下分成doc和code文件夹):
   
ROHM官网资源r.zip (7.71 MB, 下载次数: 49)


stm32移植后代码(主控Nucleo-F411RE),stm32使用的cube新库,其他stm芯片使用时添加lib库中文件修改对应io,在拷贝main文件内容应该就可以直接用了:
   
ROHM-stm32.zip (1.08 MB, 下载次数: 75)

关注下面的标签,发现更多相似文章
分享到:
回复

使用道具 举报

回答|共 4 个

倒序浏览

沙发

噗噗熊

发表于 2017-3-31 13:43:18 | 只看该作者

哇,写的很清楚,关注了
板凳

trucy

发表于 2017-3-31 16:31:24 | 只看该作者

写的很清楚,关注了 GOOD
地板

survive79

发表于 2017-9-14 21:27:59 | 只看该作者

特地注册来支持~
5#

jiangyimfs

发表于 2022-5-27 19:47:59 | 只看该作者

正好要用到,谢谢了
回复 支持 反对

使用道具 举报

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

本版积分规则

关闭

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