mac系统上搭建k210命令行开发环境

2024-04-03 14:38

本文主要是介绍mac系统上搭建k210命令行开发环境,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、目的

相信很多同学已经按照各种各样的资源已经能够搭建k210的基于IDE的开发环境,由于作者本身是一个命令行开发重度患者,并且平时的工作都是在MAC电脑上进行的,所以把自己在MAC搭建K210开发环境的步骤列出来,以供参考。

特别感谢博客https://blog.csdn.net/myg22/article/details/104589607/ 里面提供的一些链接,方便k210开发者找到需要的文档或者相关资源。

二、操作

1、在自己电脑上的用户主目录下新建一个目录,例如k210

cd ~/

mkdir k210

cd k210

2、下载k210 freertos sdk

git clone https://github.com/kendryte/kendryte-freertos-sdk.git

3、安装cmake

brew install cmake

4、下载交叉编译工具链

下载地址:https://github.com/kendryte/kendryte-gnu-toolchain/releases/tag/v8.2.0-20190409

mv ~/Downloads/kendryte-toolchain-osx-mojave-8.2.0-20190409.tar.bz2 .

tar -jxvf kendryte-toolchain-osx-mojave-8.2.0-20190409.tar.bz2

cd ~/k210/kendryte-freertos-sdk/

mkdir build

cd build

cmake .. -DPROJ=hello_world -DTOOLCHAIN=/Users/我的用户名/k210/kendryte-toolchain/bin

注意:上面这个操作的时候要填写自己的用户名

 

在cmake运行过程中可能会遇到macos的安全检查

可以用下面的命令解决

sudo spctl --master-disable

另外需要注意的是下载的工具链有可能会存在权限的问题,在电脑安全管理中一一确认

make

这个过程中可能也存在有权限问题,在电脑安全管理中一一确认

安全管理

如果上面没有任何问题,你就可以看到

接下来就是下载了

首先需要下载kflash

pip3 install kflash

烧写固件

kflash -h
usage: kflash [-h] [-p PORT] [-f FLASH] [-b BAUDRATE] [-l BOOTLOADER] [-k KEY] [-v] [--verbose][-t] [-n] [-s] [-B {kd233,dan,bit,bit_mic,goE,goD,maixduino,trainer}] [-S]firmwarepositional arguments:firmware              firmware bin pathoptional arguments:-h, --help            show this help message and exit-p PORT, --port PORT  COM Port-f FLASH, --flash FLASHSPI Flash type, 0 for SPI3, 1 for SPI0-b BAUDRATE, --baudrate BAUDRATEUART baudrate for uploading firmware-l BOOTLOADER, --bootloader BOOTLOADERBootloader bin path-k KEY, --key KEY     AES key in hex, if you need encrypt your firmware.-v, --version         Print version.--verbose             Increase output verbosity-t, --terminal        Start a terminal after finish (Python miniterm)-n, --noansi          Do not use ANSI colors, recommended in Windows CMD-s, --sram            Download firmware to SRAM and boot-B {kd233,dan,bit,bit_mic,goE,goD,maixduino,trainer}, --Board {kd233,dan,bit,bit_mic,goE,goD,maixduino,trainer}Select dev board-S, --Slow            Slow download mode

这边我是烧写到sram中运行的,即增加-s选项 

-t选项是烧写完毕后打开一个terminal用户显示打印。

kflash  -p /dev/cu.usbserial-1410 -b 115200 -t hello_world.bin -s
[INFO] COM Port Selected Manually:  /dev/cu.usbserial-1410
[INFO] Default baudrate is 115200 , later it may be changed to the value you set.
[INFO] Trying to Enter the ISP Mode...
._
[INFO] Automatically detected goE/kd233[INFO] Greeting Message Detected, Start Downloading ISP
Downloading ISP: |=================================================================| 100.0% 9kiB/s
[INFO] Booting From 0x80000000
[INFO] Boot user code from SRAM
--- forcing DTR active
--- forcing RTS active
--- Miniterm on /dev/cu.usbserial-1410  115200,8,N,1 ---
--- Quit: Ctrl+] | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H ---
Hello World

至此mac上的开发环境这就配置完毕

这篇关于mac系统上搭建k210命令行开发环境的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

浅谈配置MMCV环境,解决报错,版本不匹配问题

《浅谈配置MMCV环境,解决报错,版本不匹配问题》:本文主要介绍浅谈配置MMCV环境,解决报错,版本不匹配问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录配置MMCV环境,解决报错,版本不匹配错误示例正确示例总结配置MMCV环境,解决报错,版本不匹配在col

Python通过模块化开发优化代码的技巧分享

《Python通过模块化开发优化代码的技巧分享》模块化开发就是把代码拆成一个个“零件”,该封装封装,该拆分拆分,下面小编就来和大家简单聊聊python如何用模块化开发进行代码优化吧... 目录什么是模块化开发如何拆分代码改进版:拆分成模块让模块更强大:使用 __init__.py你一定会遇到的问题模www.

Spring Security基于数据库的ABAC属性权限模型实战开发教程

《SpringSecurity基于数据库的ABAC属性权限模型实战开发教程》:本文主要介绍SpringSecurity基于数据库的ABAC属性权限模型实战开发教程,本文给大家介绍的非常详细,对大... 目录1. 前言2. 权限决策依据RBACABAC综合对比3. 数据库表结构说明4. 实战开始5. MyBA

使用Python开发一个简单的本地图片服务器

《使用Python开发一个简单的本地图片服务器》本文介绍了如何结合wxPython构建的图形用户界面GUI和Python内建的Web服务器功能,在本地网络中搭建一个私人的,即开即用的网页相册,文中的示... 目录项目目标核心技术栈代码深度解析完整代码工作流程主要功能与优势潜在改进与思考运行结果总结你是否曾经

Python FastAPI+Celery+RabbitMQ实现分布式图片水印处理系统

《PythonFastAPI+Celery+RabbitMQ实现分布式图片水印处理系统》这篇文章主要为大家详细介绍了PythonFastAPI如何结合Celery以及RabbitMQ实现简单的分布式... 实现思路FastAPI 服务器Celery 任务队列RabbitMQ 作为消息代理定时任务处理完整

使用Python实现快速搭建本地HTTP服务器

《使用Python实现快速搭建本地HTTP服务器》:本文主要介绍如何使用Python快速搭建本地HTTP服务器,轻松实现一键HTTP文件共享,同时结合二维码技术,让访问更简单,感兴趣的小伙伴可以了... 目录1. 概述2. 快速搭建 HTTP 文件共享服务2.1 核心思路2.2 代码实现2.3 代码解读3.

Linux系统中卸载与安装JDK的详细教程

《Linux系统中卸载与安装JDK的详细教程》本文详细介绍了如何在Linux系统中通过Xshell和Xftp工具连接与传输文件,然后进行JDK的安装与卸载,安装步骤包括连接Linux、传输JDK安装包... 目录1、卸载1.1 linux删除自带的JDK1.2 Linux上卸载自己安装的JDK2、安装2.1

MySQL双主搭建+keepalived高可用的实现

《MySQL双主搭建+keepalived高可用的实现》本文主要介绍了MySQL双主搭建+keepalived高可用的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,... 目录一、测试环境准备二、主从搭建1.创建复制用户2.创建复制关系3.开启复制,确认复制是否成功4.同

Spring Boot + MyBatis Plus 高效开发实战从入门到进阶优化(推荐)

《SpringBoot+MyBatisPlus高效开发实战从入门到进阶优化(推荐)》本文将详细介绍SpringBoot+MyBatisPlus的完整开发流程,并深入剖析分页查询、批量操作、动... 目录Spring Boot + MyBATis Plus 高效开发实战:从入门到进阶优化1. MyBatis

Python基于wxPython和FFmpeg开发一个视频标签工具

《Python基于wxPython和FFmpeg开发一个视频标签工具》在当今数字媒体时代,视频内容的管理和标记变得越来越重要,无论是研究人员需要对实验视频进行时间点标记,还是个人用户希望对家庭视频进行... 目录引言1. 应用概述2. 技术栈分析2.1 核心库和模块2.2 wxpython作为GUI选择的优