收藏官网首页
查看: 9382|回复: 11

[资料] 【教程】RT-thread接入机智云,点亮一盏灯(以GoKit为例)

551

主题

1210

帖子

6893

积分

版主

Rank: 7Rank: 7Rank: 7

积分
6893
发表于 2018-7-2 10:21:35 | 显示全部楼层 |阅读模式
免费使用STM32、APP自动代码生成工具
本帖最后由 Genius 于 2018-7-2 11:30 编辑

本文以gokit为例,阐述RT-thread接入机智云,创建一个线程,点亮一盏灯。

硬件准备:
  • GoKit3、USB数据线

软件环境:
  • mdk5、机智云APP

RT-thread接入机智云流程
  • 1.RT-thread与机智云介绍
  • 2.基于mkd5安装RT-Thread Nano Pack
  • 3.注册机智云开发作者账号(建议注册企业账号)
  • 4.创建新产品
  • 5.定义数据点
  • 6.下载自动生成mcu代码
  • 7.给自动生成mcu代码移植RGB灯驱动
  • 8.给自动生成mcu代码移植RT-thread,并烧写进gokit(重点)
  • 9.下载机智云APP控制gokit
1.RT-thread与机智云介绍
使用RT-thread接入机智云的好处:
  • 1.机智云mcu SDK没有嵌入式操作系统的概念,只有前后台系统,直接操作裸机,RT-thread刚好弥补这一空白,使得机智云mcu SDK也可以多任务/线程并行运行程序,并提供一系列任务调度机制、同步机制、任务间通信机制,使得程序更丰富多彩,功能更强。
  • 2.RT-thread具备非常优异的实时性、稳定性、可剪裁性,当进行最小配置时,内核体积可以到 3k ROM 占用、1k RAM 占用。机智云GoKit硬件条件使用RT-thread无压力。
  • 3.RT-thread移植难度低,习惯使用机智云mcu SDK的开发者也容易上手使用。
2.基于mkd5安装RT-ThreadNano Pack

3.注册机智云开发作者账号


4.创建新产品
new5.png

5.根据产品需求,分析硬件开发需求,定义数据点
image7.png 本文以点亮一盏灯为例,数据点分析如下:
table41.png


6.下载自动生成mcu代码
在机智云自助开发平台自动生成MCU代码包  并下载(请注意,硬件平台需与板卡型号保持一致,如不一致,则选择“其他方案”)
new12.png


7.给自动生成mcu代码移植RGB灯驱动
new16.png
从MCU SDK文件内容目录结构(上图)看到,自动生成MCU代码里面没有rgb_led灯驱动,我们可以去机智云官网,开发者中心,下载中心,去参考下载其他含rgb_led灯驱动的项目,把里面的rgb_led灯驱动提取出来移植,以移植微信宠物屋rgb_led灯驱动为例。

new19.png
我们把刚刚下载的微信宠物项目解压,进入如下目录,可以看到有个rgb_led灯驱动文件夹,把文件夹复制到自己的自动生成MCU驱动目录里面
new20.png
new21.png
回到我们自己MCU代码,在驱动目录里面添加rgb_led驱动文件
new22.png
new23.png
在main.c和gizwits_product.c文件加入#include “Hal_rgb_led/Hal_rgb_led.h”
new24.png
new25.png


8.给自动生成mcu代码移植RT-thread,并烧写进gokit(重点)
8.1.添加RTOS的kernel文件
1.png

8.2.添加kernel文件后,我们可看到工程目录多了”RTOS”的目录,进入rtconfig.h文件,第15行改成宏定义1000,第108行去掉注释
2.png
21.png

8.3.进入board.c文件,第25行加上#include "STM32f1xx_hal.h",第37行宏定义改成10,第66行到76行去掉注释,并加上HAL_IncTick();HAL_SYSTICK_IRQHandler();两个函数。
3.png
31.png
8.4.进入stm32f1xx_it.c文件,注释掉HardFault_Handler()、PendSV_Handler()、SysTick_Handler()这三个函数
4.png
41.png
8.5.进入main.c文件,第47行加上#include "rtthread.h"
5.png

8.6.进入main.c文件,在main函数注释原while(1)大循环,并创建线程
6.png
61.png

至此,我们便完成了使用RT-Thread来跑机智云逻辑程序,也就实现了RT-thread快速接入机智云。当然我们还可以根据自己实际需求来创建更多线程来跑自己的程序,这里就不一一累述了

8.7..编译程序
通过数据线给gokit烧写移植了RT-thread与RGB驱动的固件进gokit。将stm32底板(左)与功能板(右)与小心翼翼地分离开来,然后stm32底板中间拨键拨到system,插上数据线,即可使用stm32flashloader软件烧写固件。烧写完后,中间拨键拨到flash,功能板与stm32底板合并,再按stm32底板左边的reset,即可正常使用。
QQ截图20180702102053.jpg

9.下载机智云APP控制gokit

下载APP:可通过下面的二维码下载, 亦可在各个应用商店搜索“机智云”下载
QQ截图20180702101830.jpg


本案例源码回帖可见:
游客,如果您要查看本帖隐藏内容请回复




1、机智云QQ群: 287087942
机智云爱好者-APP开发群: 599735135
QQ群目前非常活跃,欢迎大家参与进来,交流,讨论,答疑,解惑~~
2、机智云微信公众号: 机智云 gizwits /   机智云智能宠物屋go-kit
关注机智云Gizwits官方公众号随时掌握最新资讯和活动信息

0

主题

4

帖子

96

积分

注册会员

Rank: 2

积分
96
发表于 2018-8-6 20:46:17 来自手机 | 显示全部楼层
我有移植,过来学习

0

主题

3

帖子

44

积分

新手上路

Rank: 1

积分
44
发表于 2018-9-20 15:00:23 | 显示全部楼层
学习一下,我搞了好久,有个函数始终报错。

点评

有问题 发帖 FAE每天上来解答问题 这个是FAE写的  详情 回复 发表于 2018-9-20 16:42

551

主题

1210

帖子

6893

积分

版主

Rank: 7Rank: 7Rank: 7

积分
6893
 楼主| 发表于 2018-9-20 16:42:05 | 显示全部楼层
校园创客福利
蓝冰 发表于 2018-9-20 15:00
学习一下,我搞了好久,有个函数始终报错。

有问题 发帖  FAE每天上来解答问题
这个是FAE写的
1、机智云QQ群: 287087942
机智云爱好者-APP开发群: 599735135
QQ群目前非常活跃,欢迎大家参与进来,交流,讨论,答疑,解惑~~
2、机智云微信公众号: 机智云 gizwits /   机智云智能宠物屋go-kit
关注机智云Gizwits官方公众号随时掌握最新资讯和活动信息

1

主题

4

帖子

18

积分

新手上路

Rank: 1

积分
18
发表于 2019-8-27 16:15:04 | 显示全部楼层
看看,学习一下

1

主题

4

帖子

18

积分

新手上路

Rank: 1

积分
18
发表于 2019-8-27 16:15:25 | 显示全部楼层
学习,学习,看看看看

1

主题

4

帖子

18

积分

新手上路

Rank: 1

积分
18
发表于 2019-8-27 16:15:55 | 显示全部楼层
看看源代码咯

0

主题

2

帖子

107

积分

注册会员

Rank: 2

积分
107
发表于 2021-9-27 14:31:13 | 显示全部楼层
买的板,试一下
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

加入Q群 返回顶部

© 2011-2017 Gizwits ( 粤ICP备11090211号 )

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