
K210开发板
文章平均质量分 90
本专栏用于写K210教程,包括C和Python两种语言开发方式;勘智K210是嘉楠科技推出自主设计研发的全球首款基于RISC-V的量产商用边缘智能计算芯片。该芯片依托于完全自主研发的AI神经网络加速器KPU,具备自主IP、视听兼具与可编程能力三大特点,能够充分适配多个业务场景的需求。
叶与花语
热爱生活,热爱工作,在平凡的岗位上默默守护
展开
-
AI嵌入式K210项目(29)-模型加载
上一章节介绍了如何进行在线模型训练,生成部署包后,本章介绍加载模型;K210的介绍就到这里,接下来给大家介绍最新的K230芯片开发板,如需购买可以到pdd和淘宝搜索维脑科技,购买CANMV-K230开发吧;原创 2024-02-19 17:04:31 · 2007 阅读 · 4 评论 -
AI嵌入式K210项目(28)-在线模型训练
前面我们使用已经训练好的模型在K210开发板上进行了人脸识别,口罩识别,手写数字识别等实验,那么模型除了使用已经训练好的,如何根据自己的需求,获得相应的模型那?本章我们来介绍下如何使用嘉楠科技提供的在线模型训练工具;嘉楠科技开发者社区(https://developer.canaan-creative.com/)模型训练板块是为简化开发流程,提高开发效率开放的训练平台。该平台使用户更加注重视觉场景的落地实现,更加快捷的完成从数据标注到获得部署包,并在搭载嘉楠科技Kendryte®。原创 2024-02-06 15:30:38 · 2575 阅读 · 4 评论 -
AI嵌入式K210项目(27)-条形码识别
本章介绍基于机器视觉实现条形码识别,主要包含两个过程,首先检测图像中是否有条形码,如果有则框出并打印条形码信息;条形码是一种图形标识符,由一系列宽度不等的黑条和空白组成,按照一定的编码规则排列。它可以用来表达一组信息,并且通常被印刷在商品、图书、邮件等各种物品上。通过使用条形码识别设备,可以快速、准确地读取条形码中的信息,并将其传输到计算机系统进行处理。条形码的发明可以追溯到20世纪20年代,最初是为了对邮政单据实现自动分检而发明的。原创 2024-02-05 17:41:26 · 1764 阅读 · 0 评论 -
AI嵌入式K210项目(26)-二维码识别
本章介绍基于机器视觉实现二维码识别,主要包含两个过程,首先检测图像中是否有二维码,如果有则框出并打印二维码信息;二维码,也称为二维条码,是一种在二维方向上编码信息的方式。它使用特定的几何图形按一定规律在平面上分布,形成黑白相间的图形。二维码是在一维条码的基础上扩展出来的,比一维条码能存更多的信息,也可以表示更多的数据类型。设备通过扫描二维码,可以识别条码中的二进制数据并获取其中的信息。原创 2024-02-05 17:02:10 · 1827 阅读 · 0 评论 -
AI嵌入式K210项目(25)-手写数字识别
本节课主要学习K210识别数字的功能,能识别手写的数字和打印的数字。本实验使用K210的KPU和yolov2模型实现数字识别功能,使用IDE示例中代码,对实现的功能模块加以分析;可以通过调节阈值调整识别的准确率;原创 2024-01-30 15:52:36 · 1481 阅读 · 2 评论 -
AI嵌入式K210项目(24)-口罩检测
本节课主要学习口罩检测功能,将摄像头采集的画面分析,比对模型,分析是否佩戴口罩,打印出佩戴口罩的状态本实验使用K210的KPU和yolov2模型实现人脸检测功能,使用IDE示例中代码,对实现的功能模块加以分析;可以通过调节阈值调整识别的准确率;原创 2024-01-30 15:22:50 · 1327 阅读 · 1 评论 -
AI嵌入式K210项目(23)-人脸检测
本章使用预训练好的模型,进行人脸检测,将摄像头采集的画面分析,比对模型,如果有人脸则框出来,并打印相关信息。本实验使用K210的KPU和yolov2模型实现人脸检测功能,使用IDE示例中代码,对实现的功能模块加以分析;原创 2024-01-30 14:40:53 · 1669 阅读 · 0 评论 -
AI嵌入式K210项目(22)-使用自定义Python库
前面我们介绍MicroPython调用的库都是内置的,如果我们想调用的一些功能或者模块系统不存在怎么办呢?那就需要导入和使用自定义函数库;当然,在调用函数库之前需要预先将函数库导入;本章介绍了2种方法将自定义函数库文件导入至TF卡,为后续我们进行开发做个铺垫;原创 2024-01-30 09:46:36 · 1527 阅读 · 1 评论 -
AI嵌入式K210项目-目录
Kendryte K210是一颗中国芯,由嘉楠科技设计开发,采用RISC-V处理器架构,希望为国产芯崛起贡献一点点力量吧!原创 2024-01-27 19:15:35 · 3166 阅读 · 2 评论 -
AI嵌入式K210项目(21)-AI模型文件导入至TF卡
上一章节介绍了使用MicroPython进行开发,IDE中有很多的示例教程,相信大家已经迫不及待的想试试了,里面人目标检测的例程需要调用训练好的模型文件,这一章介绍如何将AI模型文件导入至TF卡本章介绍了2种方法将AI模型文件导入至TF卡,为后续我们进行开发做个铺垫;原创 2024-01-26 16:51:57 · 1734 阅读 · 0 评论 -
AI嵌入式K210项目(20)-MicroPython介绍
单片机嵌入式编程经历了汇编、 C 语言的发展历程,可以说是一次编程革命,其背后的原因是单片机的速度越来越快,集成度越来越高。而这一趋势并没停止,摩尔定律仍然适用。在未来,单片机上很可能直接跑机器语言。在 2014 年, MicroPython 在英国诞生了,对于电子爱好者来说无疑拉开了新时代的序幕,用 python 这个每年用户量不断增长的编程语言来开发嵌入式,加上无数开源的函数模块,让嵌入式开发变得从未如此的简单。原创 2024-01-25 12:11:37 · 2022 阅读 · 0 评论 -
AI嵌入式K210项目(19)-安装CanMV IDE开发软件
前几章我们介绍K210使用C语言裸机开发方法,大家对K210内部的硬件和各种加速器有了初步的了解,但是开发人工智能相关程序,使用C语言的话复杂度比较高,因此接下来我们逐步学习基于K210芯片使用python开发人工智能相关程序,包含颜色识别,人脸识别,口罩识别等,也包括一些分类应用;区域①菜单栏:操作文件,使用工具等。区域②快捷按钮:区域①中的文件和编辑中部分功能的快捷方式。区域③连接设备:连接设备和程序控制按钮。区域④代码编辑区:编辑要运行的代码。区域⑤串行终端:显示串口打印的调试信息。原创 2024-01-24 14:22:44 · 7101 阅读 · 8 评论 -
AI嵌入式K210项目(18)-卷积人工神经网络硬件加速器 KPU
K210内置了丰富的加速器,包括神经网络处理器 (KPU),AES(高级加密加速器),APU 麦克风阵列语音数据加速计算处理器,现场可编程 IO 阵列 (FPIOA),数字摄像头接口 (DVP),相对于软件可以极大的提高 AES 运算速度,快速傅里叶变换加速器 (FFT),安全散列算法加速器 (SHA256)。本文介绍内置的卷积人工神经网络硬件加速器 KPU;K210芯片内置了卷积人工神经网络硬件加速器KPU,它可以在低功耗的情况下实现卷积神经网络计算,实时获取被检测目。原创 2024-01-24 09:49:44 · 3055 阅读 · 0 评论 -
AI嵌入式K210项目(17)-快速傅里叶变换加速器 (FFT)
K210内置了丰富的加速器,包括神经网络处理器 (KPU),AES(高级加密加速器),APU 麦克风阵列语音数据加速计算处理器,现场可编程 IO 阵列 (FPIOA),数字摄像头接口 (DVP),相对于软件可以极大的提高 AES 运算速度,快速傅里叶变换加速器 (FFT),安全散列算法加速器 (SHA256)。本文介绍内置的快速傅里叶变换加速器 (FFT);傅里叶变换(Fourier Transform)可以将一个在时间(或空间)域内的信号转换成频率域内的信号。原创 2024-01-21 11:35:42 · 1711 阅读 · 0 评论 -
AI嵌入式K210项目(16)-高级加密加速器
K210内置了丰富的加速器,包括神经网络处理器 (KPU),AES(高级加密加速器),APU 麦克风阵列语音数据加速计算处理器,现场可编程 IO 阵列 (FPIOA),数字摄像头接口 (DVP),相对于软件可以极大的提高 AES 运算速度,快速傅里叶变换加速器 (FFT),安全散列算法加速器 (SHA256)。本文介绍高级加密加速器 (AES);AES是高级加密标准,在密码学中又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准。原创 2024-01-19 16:34:28 · 1238 阅读 · 0 评论 -
AI嵌入式K210项目(15)-安全散列算法加速器
K210内置了丰富的加速器,包括神经网络处理器 (KPU),AES(高级加密加速器),APU 麦克风阵列语音数据加速计算处理器,现场可编程 IO 阵列 (FPIOA),数字摄像头接口 (DVP),相对于软件可以极大的提高 AES 运算速度,快速傅里叶变换加速器 (FFT),安全散列算法加速器 (SHA256)。本文介绍安全散列算法加速器 (SHA256);说到SHA256就不得不说SHA-2,因为SHA256是SHA-2的子集,SHA-256是当今最常用的SHA2变体之一,因为它具有很高的安全性和性能。原创 2024-01-19 16:04:33 · 1738 阅读 · 0 评论 -
AI嵌入式K210项目(14)-TF卡读取
本章介绍一些读取TF卡的方法,本章内容和前面的项目非常类似,都是采用了SPI接口AI嵌入式K210项目(11)-SPI Flash读写TF有4个数据传输端,DAT0,DAT1,DAT2,DAT3。还有一个CMD脚,是用来读取卡内信息的。TF卡主要管脚的功能:CLK:时钟信号,每个时钟周期传输一个命令或数据位,频率可在0~25MHz之间变化,TF卡的总线管理器可以不受任何限制的自由产生0~25MHz 的频率;原创 2024-01-18 16:48:21 · 2021 阅读 · 2 评论 -
AI嵌入式K210项目(13)-Camera
我们这款开发板应该是最便宜的AI开发板了吧,200RMB左右,搭载1TOPS处理能力的K210芯片,丰富的外设接口,内置超多算法,除此之外,开发板还带了屏幕和摄像头。本章我们介绍SPI接口的另一个应用,驱动LCD屏幕。需要开发板可以联系我,可以价格更低哦!上一章写了LCD屏幕显示,这一章介绍下摄像头,最终实现摄像头的图像在LCD上显示;原创 2024-01-18 15:54:13 · 3272 阅读 · 0 评论 -
AI嵌入式K210项目(12)-SPI LCD显示
我们这款开发板应该是最便宜的AI开发板了吧,200RMB左右,搭载1TOPS处理能力的K210芯片,丰富的外设接口,内置超多算法,除此之外,开发板还带了屏幕和摄像头。本章我们介绍SPI接口的另一个应用,驱动LCD屏幕。需要开发板可以联系我,可以价格更低哦!LCD显示的基本原理是将液晶至于两片导电玻璃基板之间,在上下玻璃基板的两个电极作用下,引起液晶分子扭曲变形,改变通过液晶盒光束的偏振状态,实现对背光源光束的开关控制。原创 2024-01-18 14:23:07 · 2066 阅读 · 0 评论 -
AI嵌入式K210项目(11)-SPI Flash读写
这一章我们来学习下SPI及其应用,SPI 是一种高速的,全双工,同步的通信总线,由于其高速、同步和简单的特性,被广泛应用于各种微控制器和外围设备之间的通信场景,如:EEPROM和Flash存储器、实时时钟(RTC)、数模转换器(ADC)、网络控制器、数字信号处理(DSP)、数字信号解码器;FLASH 芯片是应用非常广泛的存储材料,与之对应的是RAM芯片,区别在于FLASH芯片断电后数据可以保存,而RAM芯片断电后数据不会保存。那么FLASH是如何工作的呢?原创 2024-01-17 15:55:13 · 1651 阅读 · 0 评论 -
AI嵌入式K210项目(10)-看门狗
本章我们来学习下看门狗(watchdog),看门狗是一种形象的说法,他是一种用于监测单片机程序运行状态的芯片,由于单片机的工作常常会受到来自外界电磁场的干扰,造成各种寄存器和内存的数据混乱,导致程序指针错误、取出错误的程序指令等,都有可能会陷入死循环,程序的正常运行被打断,导致整个系统的陷入停滞状态,发生不可预料的后果。有了看门狗之后就会对系统进行复位;原创 2024-01-17 15:04:52 · 1261 阅读 · 0 评论 -
AI嵌入式K210项目(9)-DMA
本章我们来介绍K210的DMA控制器,大家应该都知道在大数据量传输时,如果CPU全程参与,是非常浪费资源的,于是芯片内置了DMAC用做传输控制,CPU仅仅在输出传输开始和结束时参与,这样大大降低了CPU的负载,同时也可以加快传输的速率,一举两得,本章我们一起来学习下;DMAC是可以提高CPU效率,直接通过DMA在设备和内存之间传输数据,而CPU只需要启动dma传输就可以,等待完成即可,直接内存存取控制器DMAC需要搭配其他的设备,如串口、I2C或者I2S通讯来使用,发送和传输使用不同的通道;原创 2024-01-17 14:30:29 · 1222 阅读 · 0 评论 -
AI嵌入式K210项目(8)-PWM控制呼吸灯
上一章我们讲了定时器,本章我们来看一下PWM的功能,并实现一个呼吸灯的小实验;PWM控制的是脉冲输出的占空比,占空比是指在一个脉冲循环内,通电时间相对于总时间所占的比例。比如说,一个RGB灯在它一个工作周期中有一半时间被接通了,那么它的占空比就是50%,同时亮度也只有50%。如果加在该工作元件上的信号电压为3V,则实际的工作电压平均值或电压有效值就是1.5V。详细介绍可以参考我的这篇博客,原理都是类似的STM32开发(6)----CubeMX配置PWM。原创 2024-01-17 11:32:11 · 1249 阅读 · 0 评论 -
AI嵌入式K210项目(7)-定时器
本章简单介绍下K210定时器的使用,实现LED灯定时闪烁的小实验;简单的说,定时器其实是加1计数器,对机器周期进行计数,每过一个机器周期,计数器自动加1,直到计数器计满溢出。由于计数的周期是固定的,所以根据计数的多少就可以很方便的计算出计数的时间,当符合自己设定的超时时间,则调用中断回调函数,然后重新开始计数。但是定时器有很多种类,可以参考我的这篇博客STM32开发(10)----CubeMX配置基本定时器。原创 2024-01-17 10:02:50 · 1143 阅读 · 0 评论 -
AI嵌入式K210项目(6)-开启双核模式
前面我们在介绍K210时提及到,K210芯片中有两个RISC-V核心,一般情况下,只有一个核心在运行,本章将介绍如何开启双核模式。K210系统架构如下,可以看到其包含两个64位RISC-V核心,两个核心分别带有FPU处理单元,FPU(浮点运算单元)是集成于CPU中的专用于浮点运算的处理器。K210核心0和核心1都具备独立的FPU,满足IEEE754-2008标准,计算流程以流水线方式进行,具备很强的运算能力,每个FPU都具备除法器和平方根运算器,支持单精度和双精度浮点硬件加速运算。原创 2024-01-16 13:58:55 · 1627 阅读 · 0 评论 -
AI嵌入式K210项目(5)-串口通讯
串口通讯是平时大家进行调试最常用的方法,嵌入式应用通常要求一个简单的并且占用系统资源少的方法来传输数据。通用异步收发传输器 (UART)即可以满足这些要求,它能够灵活地与外部设备进行全双工数据交换,那么本章我们来了解下,本节课主要学习K210的串口通讯。原创 2024-01-16 12:52:45 · 2190 阅读 · 0 评论 -
AI嵌入式K210项目(4)-FPIOA
磨刀不误砍柴工,在正式开始学习之前,我们先来了解下K210自带的FPIOA,这个概念可能与我们之前学习STM32有很多不同,STM32每个引脚都有特定的功能,我们只需要对引脚进行配置后使用即可(配置其寄存器,进行输入/输出/上拉/下拉等)。使用FPIOA(现场可编程 IO 阵列),可能需要我们先从思维模式上做个转变,下面我们一起来看看吧;本节主要用大白话和大家说了什么事FPIOA,解析了其实现过程。原创 2024-01-15 19:47:39 · 2109 阅读 · 0 评论 -
AI嵌入式K210项目(3)-GPIO控制
前面介绍了开发板和环境搭建的基本情况,接下来我们开始学习使用C进行裸板开发,本节课先来学习下K210最基础的功能,引脚映射和点灯。在开始具体学习之前,我介绍下通用的学习和使用方法:大致了解芯片->了解进行编程的类型(GPIO/I2C/UART/SPI)->查看硬件原理图->查看编程手册->进行编程。让我们以一个IO控制开始吧!本节介绍了K210芯片使用FPIOA可编程阵列,所以每次使用硬件IO口前都需要对硬件IO口进行引脚映射。而且在软件中调用的也是软件映射后的软件GPIO。原创 2024-01-15 19:40:40 · 2241 阅读 · 3 评论 -
AI嵌入式K210项目(2)-开发环境搭建
该教程先介绍使用C语言进行裸机开发,完成这一部分的学习之后在介绍如何使用MicroPython进行开发,这样安排主要是考虑到学习的循序渐进,让大家对这颗芯片最底层有所了解后,在进行应用的开发。使用C语言开发,搭建开发环境有两种,一种是在win的开发环境,另一种是linux的开发环境;主要看个人开发习惯选择吧;本章介绍了K210的windows开发环境搭建过程,大家可以使用我分享的工具进行搭建,这样可能会省事些。原创 2024-01-11 17:41:30 · 3106 阅读 · 4 评论 -
AI嵌入式K210项目(1)-芯片开发板介绍
本章将介绍AI嵌入式K210项目所使用的芯片和开发板,有需要的同学可以联系我进行购买V:SpringWa1tz;Kendryte K210是一颗中国芯,由嘉楠科技设计开发,采用RISC-V处理器架构,具备视听一体、自主IP核与可编程能力强三大特点,支持机器视觉与机器听觉多模态识别,可广泛应用于智能家居、智能园区、智能能耗和智能农业等场景;Kendryte K210 使用台积电 (TSMC) 超低功耗的 28 纳米先进制程,具有双核64位处理器,拥有较好的功耗性能,稳定性与可靠性。原创 2024-01-11 14:05:35 · 5661 阅读 · 0 评论