5868|4

27

帖子

2

TA的资源

一粒金砂(中级)

楼主
 

【嘉楠勘智K510】+资料获取与开发环境搭建 [复制链接]

  本帖最后由 superw 于 2022-9-9 13:40 编辑

一、资料获取

测评页面厂商提供了K510相关文档和SDK,也可以通过github下载相关SDK与文档,链接为https://github.com/kendryte,gitee链接为https://gitee.com/kendryte。

Linux下可通过如下命令获取K510 SDK

git clone https://github.com/kendryte/k510_buildroot.git

K510_buildroot拉取后默认保存在home目录下

K510_buildroot内包含了SDK相关源码,其中各文件描述如下

二、开发环境搭建

要想开发板正常启动,需要将K510 SDK编译生成的镜像烧录到板上的存储设备上。

而生成镜像文件则需要相应的docker编译环境,这里刚开始我也挺懵的,之前没接触过docker根本不知道是什么,正好借此机会学习一下。

------------题外话

Docker是一个开源的应用容器引擎,可以让开发者打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。

当你进行开发之前,需要安装各种开发工具和服务支持到开发环境中,可能会出现依赖问题、环境变量问题、端口冲突、编译库问题等等。开发途中,可能又需要依赖一些其他的服务,最好祈祷不会出问题,否则可能又要重新配置环境,这样下来需要花费大量的时间用在搭建环境当中。

运用Docker的好处有试错、统一开发和生产环境、高性能、成果展示等方面。

---------------------

重新回到搭建Docker编译环境上来

编译

在K510_buildroot上级目录执行以下命令启动Docker

sh k510_buildroot/tools/docker/run_k510_docker.sh

执行结果如下,此时注意环境已经变成K510 Docker环境了,而ubuntu环境下为wu@wu-virtual-machine:,开发环境搭建过程中有些命令是在K510 Docker环境下输入的,有些命令是在ubuntu环境下输入的,需要特别注意区分。

如果终端出现“docker:未找到命令”的错误,可能是因为未安装Docker,需要安装一下Docker,在终端执行以下命令即可安装

 1. sudo apt-get install docker
 2. sudo apt-get install -y docker.io
 3. sudo apt-get install docker-registry

启动Docker后在K510 Docker环境下输入如下命令下载源码包,可以加速编译

make dl

源码包下载过程可能比较慢,我直接晚上电脑挂在那里下载睡觉去了

下载完成后在K510 Docker环境下输入如下命令启动编译

make CONF=k510_crb_lp3_v1_2_defconfig

编译完成后可以发现K510 Docker环境下生成了k510_crb_lp3_v1_2_defconfig文件夹

对于生成的k510_crb_lp3_v1_2_defconfig文件夹中各文件描述如下

其中images目录下的即为最终需要烧录到存储设备中的镜像

此贴只展示开发环境的搭建过程并烧录hello_world演示程序,因此对其中的buildroot、U-Boot、Linux kernel、dts文件的配置和编译不做更改,保持默认即可。

在虚拟机环境下修改k510_buildroot目录下的Config.in文件,输入如下命令

vi Config.in


在Config.in 中添加package/hello_world/Config.in所在的路径并保存

在K510 Docker环境下输入如下命令配置buildroot

make CONF=k510_crb_lp3_v1_2_defconfig menuconfig

进入buildroot配置界面后,选择External option,然后选中其中的hello_world后保存并退出

在K510 Docker环境下,k510_buildroot目录下输入如下命令再次保存配置

make CONF=k510_crb_lp3_v1_2_defconfig savedefconfig

在K510 Docker环境下,k510_buildroot目录下,输入如下命令再次编译整个程序,并将hello_world打包到emmc和sd卡镜像文件中

make CONF=k510_crb_lp3_v1_2_defconfig

输出如下信息表示编译成功

此时在k510_buildroot/k510_crb_lp3_v1_2_defconfig/target/app/hello_world/目录下,可以看到刚生成的hello应用程序

至此编译工作已完成,接下来需要将镜像文件烧录到存储设备里,这里我选择把镜像文件烧录到TF SD卡中。

烧录

烧录镜像可以在windows下烧录,也可以在ubuntu下烧录,这里选择ubuntu下烧录

在ubuntu终端下输入如下命令查看当前的存储设备

ls -l /dev/sd*

将TF SD卡插入读卡器中然后接入电脑,再次输入上面的命令查看此时的存储设备,新增加的就是 sd 卡设备节点

此时需要特别注意sd卡设备节点,后面烧录需要用到,上图中我的sd卡设备节点就是/dev/sdb。不同环境下生成的sd卡设备节点可能不同,后续烧录时需要根据实际节点进行相应修改。

ubuntu下进入k510_buildroot/k510_crb_lp3_v1_2_defconfig/image目录

输入如下命令将sysimage-sdcard.img文件烧录到sd卡中,注意此时需要更换上述sd卡设备节点

sudo dd if=sysimage-sdcard.img of=/dev/sdb bs=1M oflag=sync

输出如下信息即代表烧写成功

运行

将sd卡插入开发板的TF卡座中,选择对应的启动模式,打开电源开关可发现程序正常运行

开机显示嘉楠科技的logo

同时串口打印初始化成功的信息

摄像头拍摄图片

至此,开发环境已搭建完成并成功将hello_world的demo烧录。

最后,明天中秋,祝各位坛友们中秋节快乐!!!

最新回复

您好,请教一下您,您有部署K510AI的步骤吗     详情 回复 发表于 2024-6-8 17:50
点赞 关注(2)
 
 

回复
举报

7608

帖子

18

TA的资源

五彩晶圆(高级)

沙发
 

谢谢分享,期待后续!

个人签名

默认摸鱼,再摸鱼。2022、9、28

 
 
 

回复

6960

帖子

11

TA的资源

版主

板凳
 

见识大佬的精彩作品,感谢分享环境搭建、编译与下载等的经验。

 
 
 

回复

33

帖子

0

TA的资源

一粒金砂(中级)

4
 

谢谢分享,期待后续!

 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(初级)

5
 

您好,请教一下您,您有部署K510AI的步骤吗

 

 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表