查看: 1023|回复: 0

[分享] 基于i.MX RT1050的云接入

[复制链接]
  • TA的每日心情
    开心
    2024-3-26 15:16
  • 签到天数: 266 天

    [LV.8]以坛为家I

    3299

    主题

    6546

    帖子

    0

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    32024
    最后登录
    2024-4-25
    发表于 2020-10-23 15:15:56 | 显示全部楼层 |阅读模式
    RT-Thread源码目录介绍
    RT-Thread源码结构大致如下

    1. rt-thread                       
    2. ├───bsp             // 板级支持包
    3. ├───components      // 组件代码
    4. ├───documentation   // 一些说明文档
    5. ├───examples        // 一些例子                 
    6. ├───include         // 内核头文件
    7. ├───libcpu          // 各类芯片的接口文件
    8. ├───src             // 内核的源文件
    9. └───tools           // 一些工具
    复制代码
    以下强行打个比喻。根目录rt-thread好比一个资源丰富的汽车及其零件库:
    11.png
    bsp目录就是这里所说的汽车库中,这里面已经造好了市面上常见的品牌的车的模板,供给制造或者改造汽车的我们做参考、使用:
    12.png
    components目录就是零件库,这里面提供了很多公用的、丰富的零件及轮子,给我们造车提供了很多的便利性:
    13.png
    documentation目录是这个汽车及其零件库的一些说明:
    14.png
    src、include目录是这个汽车库中所有车的车架:
    15.png
    16.png
    有了这个车架之后才能在车架上添加汽车零部件去造车。也就是说这是汽车及汽车零件库最核心的东西,没有这一块也就没有rt-thread。


    examples目录里放着汽车车架及零件的使用例子:
    17.png
    libcpu是各种品牌车独有的核心零件,要造哪一类车就选择特定的核心零件:
    18.png
    tools是管理这个汽车及其零件库的一些工具:
    19.png
    除了这些,其实还有一个高级的零件包package不断给rt-thread这个汽车及其零件库供货,package零件包是由一些造车爱好者造出来的,并且这个package零件包会不断增多,这会给我们造车及改造车提供了更多的可能性与便利性。


    i.MX RT1050EVK云接入
    20.png
    本实验使用RW007  wifi模块连接Onenet平台,并把温度信息上传到Onenet平台上。(以下内容大多来自培训资料及官网资料)


    1、注册Onenet账号并新建一个产品及设备:



    (1)  注册账号并登陆
    1. https://open.iot.10086.cn
    复制代码
    进入开发者中心建立设备和产品 :
    21.png
    (2)选择 全部产品 -> 多协议接入
    22.png
    (3)  选择MQTT(旧版),并点击添加产品,创建新产品 ,  接着创建设备 :
    23.png
    (4)  填写新设备信息,其中的鉴权信息建议填写时间 ,  比如
    1. 202010191000
    复制代码
    24.png
    记录下如下信息备用:


    设备ID


    设备鉴权信息


    设备的APIKey


    产品ID


    产品APIKey


    2、从bsp中找到汽车:imxrt1052-nxp-evk
    1. H:\rt-thread\bsp\imxrt\imxrt1052-nxp-evk
    复制代码
    使用menuconfig工具来开始改装我们这这辆汽车,
    25.png
    26.png
    因为RTT是个可裁剪的,可以通过这个界面来进行配置,需要用到的就添加,不需要用到的也可以删掉。比如这里用到RW007模块,需要设置WiFi连接的信息:
    27.png
    用到Onenet软件包,需要设置上面备用的信息:
    28.png
    其它模块也是这么设置,设置完保存退出即可。此时软件包已被标记选中,但是还没有下载到本地,所以还无法使用。


    此时输入:pkgs --update,软件包就会自动下载。同样的,如果在menuconfig界面取消选择软件包,也要输入该命令,本地的软件包才会被删除。


    随着RTT的不断发展壮大,软件包package会越来越多,本地看到 menuconfig 中的软件包列表可能会与服务器 不同步,此时我们使用pkgs --upgrate来同步。


    此时需要用的源码已经准备好了,我们可以在命令行使用scons命令来编译,也可以使用MDK或者IAR来编译,但前提是要更新相关工程,相关命令为:
    1. scons --target=iar
    2. scons --target=mdk4
    3. scons --target=mdk5
    复制代码
    如配置前与配置后的mdk5的工程如下:
    29.png
    可见,menuconfig工具给我们提供了很多便利,可以很方便地建立我们需要的工程。


    编译完后运行之后。 运行onenet_mqtt_init命令后,可以看到连接log信息 :
    30.png
    运行onenet_upload_cycle命令,板卡端将会模拟周期上报温度信息,如:
    31.png
    可见,以上实验中我们仅进行了一些简单的配置,即可与Onenet平台对接,能够达到这样快速开发是因为rt-thread这个汽车及其零件库给我们准备了很多可以直接使用的零件、轮子,我们可以利用这些轮子快速地进行我们的应用开发。


    虽然说已经有很多可用的轮子供给我们使用了,但是我们还是需要多练习、多使用,理清各层的关系才能用好这些轮子。


    签到签到
    回复

    使用道具 举报

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

    本版积分规则

    关闭

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

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2024-4-25 18:39 , Processed in 0.128176 second(s), 20 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

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