嘉楠勘智k230开发板上手记录(一)--烧录sdk

2024-01-03 19:59

本文主要是介绍嘉楠勘智k230开发板上手记录(一)--烧录sdk,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、前言

因为是小白,对于硬件接触不多,有什么错误欢迎指出。

环境:win11+wsl2的ubuntu22.04

官方github kendryte/k230_docs: Kendryte K230 SDK Docs (github.com)

参考的文档 :k230_docs/zh/01_software/board/K230_SDK_使用说明.md at main · kendryte/k230_docs (github.com)

二、开发环境搭建 

1. 安装docker

        

curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
2. 搭建镜像

这里我们用sdk里的dockerfile搭建,花费时间1.2小时,直接docker pull实在太慢了。

下载sdk,建议直接下载安装包,git clone要很久,安装包大概350MB大,我上传到网盘上了,另外不要在win11上解压缩,会有问题。

链接:https://pan.baidu.com/s/1U6YTcEDV_CbaCMuEYSLVww 
提取码:nx8l 
--来自百度网盘超级会员V5的分享
mkdir my_docker
cd my_docker/
cp ../k230/k230_sdk-main/tools/docker/Dockerfile .
docker build -t k230:v0.8 -f ./Dockerfile ./

搭建完成后会重新一个名为k230的镜像

 我把我搭建好的镜像上传到网盘了

链接:https://pan.baidu.com/s/1x3h6mGssmjczlRnkXlqauA 
提取码:notq 
--来自百度网盘超级会员V5的分享
3. 编译sdk

进入sdk根目录

cd k230/k230_sdk-main

下载toolchain

source tools/get_download_url.sh && make prepare_sourcecode

进入镜像,这里注意,虽然没有输入任何东西或者有什么变化,但是我们已经在容器里了

docker run -u root -it -v $(pwd):$(pwd) -v $(pwd)/toolchain:/opt/toolchain -w $(pwd) k230:v0.8 /bin/bash

 Docker环境下执行下面命令进行编译SDK

make CONF=k230_evb_defconfig

编译时间会比较久,编译成功后在output/k230_evb_defconfig/images下会看到编译输出产物

三、烧录镜像文件

编译产物简介
k230_evb_defconfig/images
├── big-core
├── env.env
├── jffs2.env
├── little-core
├── sysimage-sdcard.img    # SD和emmc非安全启动镜像
├── sysimage-sdcard.img.gz # SD和emmc的非安全启动镜像压缩包
├── sysimage-spinor32m.img # norflash非安全启动镜像
├── sysimage-spinor32m.img.gz    # norflash非安全启动镜像压缩包
└── sysimage-spinor32m_jffs2.img # norflash jffs2非安全启动镜像
烧录

用balena Etcher选择sysimage-sdcard.img烧录

 另外我烧录sd卡,烧录成功,但是验证失败,不过插到k230上没有出现问题

 k230 启动!

在上电之前,把boot的开关拨到1 2,代表高电平,也就是sd卡启动,插入sd卡

 启动成功

遇到的错误

1. 运行make prepare_sourcecode时报错

source tools/get_download_url.sh
URL is not accessible
download toolchain
https://kendryte-download.canaan-creative.com/k230
test1
extract toolchain
./toolchain/riscv64-unknown-linux-musl-rv64imafdcv-lp64d-20230420.tar.bz2
tar (child): bzip2: Cannot exec: No such file or directory
tar (child): Error is not recoverable: exiting now
tar: Child returned status 2
tar: Error is not recoverable: exiting now
make: *** [Makefile:91: extract_toolchain] Error 2

没有安装bzip2

apt install bzip2

参考

通过Dockerfile文件构建镜像_陈家宝的博客-CSDN博客

嘉楠勘智k230开发板开箱和搭建开发环境(一)_flamebox的博客-CSDN博客

这篇关于嘉楠勘智k230开发板上手记录(一)--烧录sdk的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/566880

相关文章

Spring Boot 配置文件之类型、加载顺序与最佳实践记录

《SpringBoot配置文件之类型、加载顺序与最佳实践记录》SpringBoot的配置文件是灵活且强大的工具,通过合理的配置管理,可以让应用开发和部署更加高效,无论是简单的属性配置,还是复杂... 目录Spring Boot 配置文件详解一、Spring Boot 配置文件类型1.1 applicatio

MySQL INSERT语句实现当记录不存在时插入的几种方法

《MySQLINSERT语句实现当记录不存在时插入的几种方法》MySQL的INSERT语句是用于向数据库表中插入新记录的关键命令,下面:本文主要介绍MySQLINSERT语句实现当记录不存在时... 目录使用 INSERT IGNORE使用 ON DUPLICATE KEY UPDATE使用 REPLACE

Python 中的异步与同步深度解析(实践记录)

《Python中的异步与同步深度解析(实践记录)》在Python编程世界里,异步和同步的概念是理解程序执行流程和性能优化的关键,这篇文章将带你深入了解它们的差异,以及阻塞和非阻塞的特性,同时通过实际... 目录python中的异步与同步:深度解析与实践异步与同步的定义异步同步阻塞与非阻塞的概念阻塞非阻塞同步

Python Dash框架在数据可视化仪表板中的应用与实践记录

《PythonDash框架在数据可视化仪表板中的应用与实践记录》Python的PlotlyDash库提供了一种简便且强大的方式来构建和展示互动式数据仪表板,本篇文章将深入探讨如何使用Dash设计一... 目录python Dash框架在数据可视化仪表板中的应用与实践1. 什么是Plotly Dash?1.1

Spring Boot中定时任务Cron表达式的终极指南最佳实践记录

《SpringBoot中定时任务Cron表达式的终极指南最佳实践记录》本文详细介绍了SpringBoot中定时任务的实现方法,特别是Cron表达式的使用技巧和高级用法,从基础语法到复杂场景,从快速启... 目录一、Cron表达式基础1.1 Cron表达式结构1.2 核心语法规则二、Spring Boot中定

QT移植到RK3568开发板的方法步骤

《QT移植到RK3568开发板的方法步骤》本文主要介绍了QT移植到RK3568开发板的方法步骤,文中通过图文示例介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录前言一、获取SDK1. 安装依赖2. 获取SDK资源包3. SDK工程目录介绍4. 获取补丁包二

国内环境搭建私有知识问答库踩坑记录(ollama+deepseek+ragflow)

《国内环境搭建私有知识问答库踩坑记录(ollama+deepseek+ragflow)》本文给大家利用deepseek模型搭建私有知识问答库的详细步骤和遇到的问题及解决办法,感兴趣的朋友一起看看吧... 目录1. 第1步大家在安装完ollama后,需要到系统环境变量中添加两个变量2. 第3步 “在cmd中

Spring Retry 实现乐观锁重试实践记录

《SpringRetry实现乐观锁重试实践记录》本文介绍了在秒杀商品SKU表中使用乐观锁和MybatisPlus配置乐观锁的方法,并分析了测试环境和生产环境的隔离级别对乐观锁的影响,通过简单验证,... 目录一、场景分析 二、简单验证 2.1、可重复读 2.2、读已提交 三、最佳实践 3.1、配置重试模板

在 Spring Boot 中使用异步线程时的 HttpServletRequest 复用问题记录

《在SpringBoot中使用异步线程时的HttpServletRequest复用问题记录》文章讨论了在SpringBoot中使用异步线程时,由于HttpServletRequest复用导致... 目录一、问题描述:异步线程操作导致请求复用时 Cookie 解析失败1. 场景背景2. 问题根源二、问题详细分

如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解

《如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解》:本文主要介绍如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别的相关资料,描述了如何使用海康威视设备网络SD... 目录前言开发流程问题和解决方案dll库加载不到的问题老旧版本sdk不兼容的问题关键实现流程总结前言作为