芯驰(E3-gateway)开发板环境搭建
1-Windows下环境配置
可以在Windows上使用命令行或者IAR IDE编译SSDK项目。Windows编译依赖的工具已经包含在
prebuilts/windows 目录中,包括编译器、Python和命令行工具。
1.1.1 CMD
SSDK集成 msys 工具,可以在Windows命令行中完成SDK的配置、编译和打包。编译前需要将 msys
的路径添加到用户环境变量中。可以使用SDK集成的脚本添加环境变量,双击SSDK目录下的 setupenv.bat 脚本即可,执行效果如下:显示下面这种就是成功了。

注意:
如果安装过MinGW/Cygwin等Windows上类UNIX模拟环境,可能会出现与SSDK
中MinGW版本不一致而导致SSDK编译失败的问题。这种情况下需先卸载安装 的MinGW/Cygwin,然后测试编译功能。 如果运行
setup-env.bat 失败,可手动将
D:\repo\ssdk-alpha\prebuilts\windows\msys\usr\bin 添加到系统环
境变量path中,然后重新打开cmd窗口即可。
1.1.2配置SDK
SSDK使用Kconfig进行配置,以e3_gateway工程为例,在SSDK目录下,输入以下命令启
动menuconfig,其中 -b 指示BOARD, -p 指示PROJECT, -c 指示CORE(可以是sf, sp0, sp1, sx0,
sx1)。如下命令
sh build.sh -b e3_gateway -p xip>output.txt

启动成功后显示界面如下:

1.1.3 GCC编译
在CMD工具下,执行以下命令即可启动GCC编译,其中 -b 指示BOARD, -p 指示PROJECT。
如下命令:后面必须加上>output.txt,否则会进入无限循环中。
sh build.sh -b e3_gateway -p xip>output.txt
如下如:

1.1.4 生成PAC包
GCC编译完成后自动打包PAC镜像,PAC包位于 boards$(BOARD)\build$(PROJECT)\gcc\ 目
录下,烧录到OSPI Flash的镜像名为 ospi_KaTeX parse error: Expected group after '_' at position 31: …到eMMC的镜像名为 emmc_̲
(BOARD).pac 。可以使用芯驰提供的SDFactoryTool工具,通过USB烧录镜像。
PAC包的打包的方式由 boards$(BOARD)\sf\projects$(PROJECT)\pac_config.json 文
件控制。
1.2.1 IAR
SSDK支持通过IAR编译、下载和调试。
生成IAR工程
SSDK中已包含了E3参考板的IAR工程,工程路径在 boards/(BOARD)/build/(BOARD)/build/(BOARD)/build/(PROJECT)/iar
文件夹下,用户可以直接双击 eww 文件打开该工程。
另外,SSDK也提供了IAR工程自动生成脚本,方便用户快速建立新的工程。以e3_gateway板为例,可
在CMD下运行如下命令行:
sh build.sh -b e3_gateway -p xip -iar
其中 -b 指示BOARD, -p 指示PROJECT, -c 指示core( -c 为可选项,不特殊指明时将生成所
有core的IAR工程)。生成完毕后的工程将在存放放在 boards/(BOARD)/build/(BOARD)/build/(BOARD)/build/
(PROJECT)/iar 文件夹下。
IAR编译
以E3640芯片(用于e3_gateway参考板)为例,打开eww文件后会出现如下图所示5个Project,每
个IAR Project对应一个CR5核。
• 单个Project编译:可通过下图中(1)或(2)菜单栏选择需要编译的Project,然后通过选
择Project→Make(或Rebuild All)进行编译;

全部编译:也可按住Shift键选择所有的Project进行编译,如下图所示;

生成PAC包
IAR IDE编译完成后自动生成PAC包,PAC包位于 boards$(BOARD)\build$(PROJECT)\iar
目录下,烧录到OSPI Flash的镜像名为 ospi_KaTeX parse error: Expected group after '_' at position 31: …到eMMC的镜像名为 emmc_̲
(BOARD).pac ,可以使用芯驰提供的SDFactoryTool工具,通过USB烧录镜像。
PAC包的打包的方式由 boards$(BOARD)\sf\projects$(PROJECT)\pac_config.json 文
件控制,关于该文件的解析详见“打包配置文件”小节。
在IAR中Flash烧录
IAR镜像可以通过IAR Flashloader下载到NorFlash中,用户可操作单个Project对单个核的镜像进行下
载更新。这里以Gateway板卡为例进行说明。
- 选择Boot模式:IAR镜像下载需要在JTAG(1110)模式下,如下图所示:

- 选择需要下载的Project(CR5核):可通过workspace窗口选择当前需激活的Project,具体截图
可参考编译IAR工程章节; - 选择Flashloader运行核:由于Flashloader需要运行在SF核上,所以在下载其他核的镜像时也需
要Attach到SF核上,将Project→Options→Debugger→Extra Options中的Use command line
options选项去除掉,则会默认Attach到SF核上;

- 开始下载:选择Project→Download→Download active application开始下载,下载过程中会弹
出窗口显示Programming flash memory,当进度条完成则表示下载完成,此时串口也会打印
“Flashload finished”字样; - 重新启动:下载完成后,拨码开关拨到XSPI1 Nor Flash(0000)模式,重新上电后则可正常启
动。
IAR调试
IAR IDE支持在线调试功能,用户激活待调试核对应的Project,选择Project→Attach to Running
Target,则可对该核进行在线调试。
注意
在调试模式下,请确保Project→Options→Debugger→Extra Options→Use
command line options选项被勾选上,否则会默认attach到SF核上。
相关文章:
芯驰(E3-gateway)开发板环境搭建
1-Windows下环境配置 可以在Windows上使用命令行或者IAR IDE编译SSDK项目。Windows编译依赖的工具已经包含在 prebuilts/windows 目录中,包括编译器、Python和命令行工具。 1.1.1 CMD SSDK集成 msys 工具,可以在Windows命令行中完成SDK的配置、编译和…...
HiveSql一天一个小技巧:如何巧用分布函数percent_rank()求去掉最大最小值的平均薪水问题
0 问题描述参考链接(3条消息) HiveSql面试题12--如何分析去掉最大最小值的平均薪水(字节跳动)_莫叫石榴姐的博客-CSDN博客文中已经给出了三种解法,这里我们借助于此题,来研究如何用percent_rank()函数求解,简化解题思路…...
【python实现华为OD机试真题】优雅子数组【2023 Q1 | 200分】
题目描述 如果一个数组Q中出现次数最多的元素出现大于等于K次,被称为k-优雅数组,k也可以被称为优雅阈值只。 例如: 数组1,2, 3, 1、2, 3, 1,它是一个3-优雅数组,因为元素1出现次数大于等于3次, 数组[1,2, 3, 1, 2]就不是一一个3-优雅数组,因为其中出现次数最多的元素是1和…...
九种分布式ID解决方案
文章目录背景1、UUID2、数据库自增ID2.1、主键表2.2、ID自增步长设置3、号段模式4、Redis INCR5、雪花算法6、美团(Leaf)7、百度(Uidgenerator)8、滴滴(TinyID)总结比较背景 在复杂的分布式系统中,往往需要对大量的数据进行唯一标识,比如在对一个订单表…...
RocketMQ源码分析
RocketMQ源码深入剖析 1 RocketMQ介绍 RocketMQ 是阿里巴巴集团基于高可用分布式集群技术,自主研发的云正式商用的专业消息中间件,既可为分布式应用系统提供异步解耦和削峰填谷的能力,同时也具备互联网应用所需的海量消息堆积、高吞吐、可靠…...
跟着我从零开始入门FPGA(一周入门系列)第六天
6、有限状态机状态机,只要C代码写过2年的人,估计无人不识君,稍微复杂的逻辑都可以借助状态机来简化问题。为了方便,我们使用前面用过的一个例子,来说明状态机的应用,也就是说我们前面已经有意无意的用过状态…...
2023最新JVM面试题汇总进大厂必备
JVM 面试题汇总 1.什么是 JVM?它有什么作用? 答:JVM 是 Java Virtual Machine(Java 虚拟机)的缩写,顾名思义它是一个虚 拟计算机,也是 Java 程序能够实现跨平台的基础。它的作用是加载 Java 程…...
Cocoa-presentViewController
presentViewController:animator: 将一个viewController以动画方式显示出来 当VCA模态的弹出了VCB,那么VCA就是presenting view controller,VCB就是presented view controller presentViewController 相较于addSubView 直接作为subView就是不会出现一…...
Vue Mixins
Vue Mixins 详解 Vue.js 是一个非常流行的 JavaScript 框架,它提供了一系列的工具来简化 Web 应用程序的开发。其中一个非常有用的工具就是 Mixins。 什么是 Mixins? Mixins 是一种 Vue.js 组件复用的方法,它允许您将一组组件选项合并到一…...
Django-版本信息介绍-版本选择
文章目录1.如何获取Django1.1.选项1:获取最新的正式版本1.2.选项2:获取4.2的beta版1.3.选项3:获取最新的开发版本2.得到之后3.支持版本4.选择版本1.如何获取Django Django在BSD许可下是开源的。我们建议使用最新版本的Python 3。支持Python 2.7的最新版本是Django 1.11 LTS。请…...
写给交互设计新手的信息架构全方位指南
目录什么是信息架构?通用方法日常工作可以关注的大神常用工具相关书籍什么是信息架构?信息架构是一个比众多其他领域更难定义的领域。内容策划由内容策划师来完成,交互设计由设计师来完成,而信息架构的完成与它们不同,…...
15、主从复制,gtid,并行复制,半同步复制,实操案例,常用命令,故障处理
主从复制,gtid,并行复制,半同步复制,实操案例,常用命令,故障处理 1.认识主从复制1.1 主从复制原理深入讲解1.2 主从复制相关参数1.3.主从复制架构部署1.4从库状态详解1.5 .过滤复制2 .gtid复制2.1 什么是GTID?2.2 GTID主从配置2.5 gtid维护2.4 GTID的特点2.3 工作原理2.4 g…...
【C语言】实现文件内容映射转移
有两个文件(QA,与QB)。 文件A是经过了字母映射加密的文本(将英文字母一一映射成了另一个), 文件B是字母映射的关系表(格式如A-c;B-R;…,其中前一个字母为加密前的),编写程…...
html css输入框获得焦点、失去焦点效果
input输入框获得焦点、失去焦点效果 废话shao shuo ! 直接看效果图,好吧! 效果图: code: <!DOCTYPE html> <html> <head><title></title><meta charset"utf-8" /><style type"text…...
Spark Streaming
第1章 SparkStreaming 概述1.1 Spark Streaming 是什么Spark 流使得构建可扩展的容错流应用程序变得更加容易。**Spark Streaming 用于流式数据的处理。**Spark Streaming 支持的数据输入源很多,例如:Kafka、Flume、Twitter、ZeroMQ 和简单的 TCP 套接字…...
[kubernetes]-k8s通过psp限制nvidia-plugin插件的使用
导语: k8s通过psp限制nvidia-plugin插件的使用。刚开始接触psp 记录一下 后续投入生产测试了再完善。 通过apiserver开启psp 静态pod会自动更新 # PSP(Pod Security Policy) 在默认情况下并不会开启。通过将PodSecurityPolicy关键词添加到 --enbale-admission-plu…...
简单易懂又非常牛逼的Spring源码解析,推断构造与bean的实例化
简单易懂又非常牛逼的Spring源码解析,推断构造与bean的实例化原理解析实例化bean的入口工厂方法实例化推断构造初次筛选二次筛选bean的实例化代码走读实例化bean的入口createBeanInstance方法内部的流程推断构造初次筛选二次筛选bean的实例化总结往期文章࿱…...
Win11的两个实用技巧系列清理磁盘碎片、设置系统还原点的方法
Win11如何清理磁盘碎片?Win11清理磁盘碎片的方法磁盘碎片过多,会影响电脑的运行速度,所以需要定期清理,这篇文章将以Win11为例,给大家分享的整理磁盘碎片方法相信很多用户都会发现,随着电脑使用时间的增加,…...
嵌入式 STM32 红外遥控
目录 红外遥控 NEC码的位定义 硬件设计 软件设计 源码程序 红外遥控 红外遥控是一种无线、非接触控制技术,具有抗干扰能力强,信息传输可靠,功耗低,成本低,容易实现等显著的特点,被诸多电子设备特别…...
【java web篇】使用JDBC操作数据库
📋 个人简介 💖 作者简介:大家好,我是阿牛,全栈领域优质创作者。😜📝 个人主页:馆主阿牛🔥🎉 支持我:点赞👍收藏⭐️留言Ὅ…...
生成xcframework
打包 XCFramework 的方法 XCFramework 是苹果推出的一种多平台二进制分发格式,可以包含多个架构和平台的代码。打包 XCFramework 通常用于分发库或框架。 使用 Xcode 命令行工具打包 通过 xcodebuild 命令可以打包 XCFramework。确保项目已经配置好需要支持的平台…...
css实现圆环展示百分比,根据值动态展示所占比例
代码如下 <view class""><view class"circle-chart"><view v-if"!!num" class"pie-item" :style"{background: conic-gradient(var(--one-color) 0%,#E9E6F1 ${num}%),}"></view><view v-else …...
《Playwright:微软的自动化测试工具详解》
Playwright 简介:声明内容来自网络,将内容拼接整理出来的文档 Playwright 是微软开发的自动化测试工具,支持 Chrome、Firefox、Safari 等主流浏览器,提供多语言 API(Python、JavaScript、Java、.NET)。它的特点包括&a…...
STM32F4基本定时器使用和原理详解
STM32F4基本定时器使用和原理详解 前言如何确定定时器挂载在哪条时钟线上配置及使用方法参数配置PrescalerCounter ModeCounter Periodauto-reload preloadTrigger Event Selection 中断配置生成的代码及使用方法初始化代码基本定时器触发DCA或者ADC的代码讲解中断代码定时启动…...
页面渲染流程与性能优化
页面渲染流程与性能优化详解(完整版) 一、现代浏览器渲染流程(详细说明) 1. 构建DOM树 浏览器接收到HTML文档后,会逐步解析并构建DOM(Document Object Model)树。具体过程如下: (…...
学习STC51单片机32(芯片为STC89C52RCRC)OLED显示屏2
每日一言 今天的每一份坚持,都是在为未来积攒底气。 案例:OLED显示一个A 这边观察到一个点,怎么雪花了就是都是乱七八糟的占满了屏幕。。 解释 : 如果代码里信号切换太快(比如 SDA 刚变,SCL 立刻变&#…...
laravel8+vue3.0+element-plus搭建方法
创建 laravel8 项目 composer create-project --prefer-dist laravel/laravel laravel8 8.* 安装 laravel/ui composer require laravel/ui 修改 package.json 文件 "devDependencies": {"vue/compiler-sfc": "^3.0.7","axios": …...
九天毕昇深度学习平台 | 如何安装库?
pip install 库名 -i https://pypi.tuna.tsinghua.edu.cn/simple --user 举个例子: 报错 ModuleNotFoundError: No module named torch 那么我需要安装 torch pip install torch -i https://pypi.tuna.tsinghua.edu.cn/simple --user pip install 库名&#x…...
在鸿蒙HarmonyOS 5中使用DevEco Studio实现指南针功能
指南针功能是许多位置服务应用的基础功能之一。下面我将详细介绍如何在HarmonyOS 5中使用DevEco Studio实现指南针功能。 1. 开发环境准备 确保已安装DevEco Studio 3.1或更高版本确保项目使用的是HarmonyOS 5.0 SDK在项目的module.json5中配置必要的权限 2. 权限配置 在mo…...
聚六亚甲基单胍盐酸盐市场深度解析:现状、挑战与机遇
根据 QYResearch 发布的市场报告显示,全球市场规模预计在 2031 年达到 9848 万美元,2025 - 2031 年期间年复合增长率(CAGR)为 3.7%。在竞争格局上,市场集中度较高,2024 年全球前十强厂商占据约 74.0% 的市场…...
