robe.zhang 发表于 2024-11-17 10:15:12

【米尔-MYD-LR3568-GK开发板--试用评测】F.阿里云客户端移植

本帖最后由 robe.zhang 于 2024-11-17 18:18 编辑

方便复制文件,把开发板共享目录映射到为 windows 电脑上的硬盘,如下
!(//m.qjumbo.com/forum/data/attachment/forum/202411/17/100610tu10zo2mom1002ob.png)
映射为Y盘
!(//m.qjumbo.com/forum/data/attachment/forum/202411/17/100617w54g53im5m3ic5gc.png)
从阿里云官方下载物联网客户端,解压复制到开发板 Y 盘中
!(//m.qjumbo.com/forum/data/attachment/forum/202411/17/100625lk2t7nunknlbk4s3.png)
串口或ssh远程登录开发板, git 初始化仓库,使用 git 管理代码版本
!(//m.qjumbo.com/forum/data/attachment/forum/202411/17/100637cze9womvzxk66m4v.png)
创建commit 当作初始版本,可以愉快的开发了
!(//m.qjumbo.com/forum/data/attachment/forum/202411/17/100644qbhi2h1yjcjy1gmh.png)

在Windows电脑端用 vscode 打开工作目录,写代码
!(//m.qjumbo.com/forum/data/attachment/forum/202411/17/100652ee6zssp67q1muni6.png)
在开发板上编译:
!(//m.qjumbo.com/forum/data/attachment/forum/202411/17/100659kxtz2omnqzlkodq7.png)
在开发板上运行:
!(//m.qjumbo.com/forum/data/attachment/forum/202411/17/100706xdbqdcvchm3jfx3j.png)

这种开发方式,只有写代码是在windows完成,编译运行都在开发板上,不涉及交叉编译,调试起来很方便

阿里云物联网客户端,框架层次清晰,移植时候处理好接口,以下结构体
!(//m.qjumbo.com/forum/data/attachment/forum/202411/17/100725ciuhktthq9tnt8nh.png)
!(//m.qjumbo.com/forum/data/attachment/forum/202411/17/100729rrnhzcknhqnhhrxn.png)
结构体中都是函数,把这些函数在debian系统中实现,debian底层是linux,linux符合标准posix标准,移植起来方便很多,如下是接口实现
!(//m.qjumbo.com/forum/data/attachment/forum/202411/17/100756fl9bcpcp6zcubz8r.png)
比如 core\_sysdep\_malloc 申请内存接口,调用 linux 平台的 malloc 接口分配内存
!(//m.qjumbo.com/forum/data/attachment/forum/202411/17/100805wjk0a884bbg3yjz4.png)
比如 core\_sysdep\_network\_recv 网络接受接口,调用 linux 平台的 selectrecv 实现。接收到数据后,while 开始循环从网络socket中读取所有数据保存到 buf 中
!(//m.qjumbo.com/forum/data/attachment/forum/202411/17/100815e0zcevuvs3hjvc0h.png)
!(//m.qjumbo.com/forum/data/attachment/forum/202411/17/100818d4yx1wlr8yxylr12.png)
所有接口实现,编译检查没有问题,移植成功

页: [1]
查看完整版本: 【米尔-MYD-LR3568-GK开发板--试用评测】F.阿里云客户端移植

Baidu
map