【CanMV K230】外接传感器

【CanMV K230】外接传感器

  • 外接LED灯

B站视频链接
抖音链接


我们后面主要做是机器视觉。K230能帮我们捕捉到图像信息。更多小功能需要我们自己来做。

在这里插入图片描述
比如舵机抬杆,测温报警等
在这里插入图片描述

都需要我们外接传感器。

本篇就来分享一下如何使用K230外接传感器

首先需要知道K230插座(排针)都是什么功能。

可以看到官方给我们提供了插座功能图。记住位置。
在这里插入图片描述
知道了怎么对应引脚图,我们看下边的就行。
请添加图片描述
实战一下

外接LED灯

我们知道了K230的引脚功能,那么如何连接?

下面是连接方式

首先确认使用的传感器。

比如我从某地买的8MM发光LED模块。
在这里插入图片描述

首先确认传感器所需电压,可以从基本信息(参数)看到,电压是5V。
在这里插入图片描述

有3个(插座)引脚。分别是OUT,VCC,GND

在这里插入图片描述
我们知道大部分LED都是输出设备,参照板载LED。

VCC连接电压,GND接GND,OUT就是所谓的信号引脚52号。

当然了,板载LED已经使用了52号,我们不能接了。在引脚图上选个2号我们来试试。
在这里插入图片描述

我做成了表格,方便大家观看。
此表格我后面会常用,能看懂这个就可以接线。

开发板LED
2OUT
5VVCC
GNDGND

说明一下这张图怎么看。
开发板2号引脚连接发光模块的OUT引脚
开发板5V引脚连接发光模块的VCC引脚
依次类推(后面可能接很多传感器。)
在这里插入图片描述
现在我们连好线了,输入代码运行试试,此发光模块和板载LED使用方式相似

from machine import Pin #导入Pin模块
from machine import FPIOA
import time#将GPIO2配置为普通GPIO
fpioa = FPIOA()
fpioa.set_function(2,FPIOA.GPIO2)LED=Pin(2,Pin.OUT) #构建led对象,GPIO2,输出
LED.value(1) #点亮LED,也可以使用led.on()

可能有的小伙伴会问,你不说和板载LED相似吗?代码怎么是这样的。

由于K230功能多,所以大部分GPIO引脚会复用多个功能,因此CanMV K230 提供FPIOA库(Field Programmable Input and Output Array 现场可编程IO阵列),以便实现不同引脚功能选择。

在这里插入图片描述
点灯!如果成功了请扣1 并领取下面的卡。
请添加图片描述

from machine import Pin #导入Pin模块
from machine import FPIOA
import time#将GPIO52配置为普通GPIO
fpioa = FPIOA()
fpioa.set_function(2,FPIOA.GPIO2)LED=Pin(2,Pin.OUT) #构建led对象,GPIO2,输出
LED.value(1) #点亮LED,也可以使用led.on()

相信小伙伴成功了。那么来试试板载按键控制外接LED发光模块吧。

rom machine import Pin
from machine import FPIOA
import time#将GPIO2、GPIO21配置为普通GPIO模式
fpioa = FPIOA()
fpioa.set_function(52,FPIOA.GPIO52)
fpioa.set_function(21,FPIOA.GPIO21)LED=Pin(2,Pin.OUT) #构建LED对象,开始熄灭
KEY=Pin(21,Pin.IN,Pin.PULL_UP) #构建KEY对象state=0 #LED引脚状态while True:if KEY.value()==0:   #按键被按下time.sleep_ms(10) #消除抖动if KEY.value()==0: #确认按键被按下state=not state  #使用not语句而非~语句LED.value(state) #LED状态翻转print('KEY')while not KEY.value(): #检测按键是否松开pass

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/878104.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

栈OJ题——有效的括号

文章目录 一、题目链接二、解题思路三、解题代码 一、题目链接 有效的括号 题目描述:给定一个只包括 ‘(’,‘)’,‘{’,‘}’,‘[’,‘]’ 的字符串 s ,判断字符串是否有效。括号匹配。 二、…

Pycharm module ‘serial‘ has no attribute ‘Serial‘

已经pip install serial 已经提示安装成功了,提示没有Serial的属性,经过查询 ,发现安装的模块不对,应该安装pyserial模块。 解决步骤 第一步:卸载serial pip uninstall serial 第二步:安装pyserial pip u…

【2025校招】4399 NLP算法工程师笔试题

目录 1. 第一题2. 第二题3. 第三题 ⏰ 时间:2024/08/19 🔄 输入输出:ACM格式 ⏳ 时长:2h 本试卷分为单选,自我评价题,编程题 单选和自我评价这里不再介绍,4399的编程题一如既往地抽象&#xff…

xss-labs通关攻略 11-15关

第十一关:less-11 步骤一:利用burp抓包 步骤二:添加referer:click me!" type"button" οnmοuseοver"alert(/xss/)进行放包 第十二关:less-12 步骤一:利用burp抓包 步骤二:修改User A…

【机器学习】独立成分分析的基本概念、应用领域、具体实例(含python代码)以及ICA和PCA的联系和区别

引言 独立成分分析(Independent Component Analysis,简称ICA)是一种统计方法,用于从多个观察到的混合信号中提取出原始的独立信号源 文章目录 引言一、独立成分分析1.1 定义1.2 独立成分分析的基本原理1.3 独立成分分析的步骤1.3.…

RACL: Adversarially Robust Neural Architectures

RACL: 对抗鲁棒网络架构 论文链接:https://arxiv.org/abs/2009.00902v2 Abstract 深度神经网络(DNN)容易受到对抗性攻击。现有的方法致力于开发各种鲁棒训练策略或正则化来更新神经网络的权值。但除了权重之外,网络中的整体结构和信息流是由网络架构明…

模块一(任务3):WDM系统原理解读

一、WDM的概念及波段划分 1、WDM系统概念 WDM系统就像高铁系统一样,这里可以将一根光纤看做是一个多车道的高速铁路。 把不同波长的光信号组合起来(也就是复用),进入到同一根光纤中进行传输,在接收端将组合波长的光信…

数据库mysql集群主从、高可用MGR、MHA技术详解

一、安装数据库mysql步骤 环境:红帽7.9系统 安装依赖 yum install cmake gcc-c openssl-devel ncurses-devel.x86_64 libtirpc-devel-1.3.3-8.el9_4.x86_64.rpm rpcgen.x86_64 -y 将下载的MySQL软件包解压并cd到mysql的目录下 [rootmysql-node10 ~]# tar zxf mysq…

数据结构(邓俊辉)学习笔记】优先级队列 08——左式堆:结构

文章目录 1. 第一印象2. 堆之合并3. 奇中求正4. NPL5. 左倾性6. 左展右敛 1. 第一印象 在学习过常规的完全二叉堆之后,我们再来学习优先级队列的另一变种,也就是左式堆。所谓的左式堆,也就是在拓扑形态上更加倾向于向左侧倾斜的一种堆&#…

洛谷刷题(4)

P1089 [NOIP2004 提高组] 津津的储蓄计划 题目描述 津津的零花钱一直都是自己管理。每个月的月初妈妈给津津 300 元钱,津津会预算这个月的花销,并且总能做到实际花销和预算的相同。 为了让津津学习如何储蓄,妈妈提出,津津可以随…

UE5打包iOS运行查看Crash日志

1、查看Crash 1、通过xCode打开设备 2、选择APP打开最近的日志 3、选择崩溃时间点对应的日志 4、选择对应的工程打开 5、就能看到对应的Crash日志 2、为了防止Crash写代码需要注意 1、UObject在Remov

Nextjs(App Router) 开发记录

最近业余在开发一款智能助理产品,记录开发过程中的一些问题以备忘,也是帮其他人防坑。 主要技术栈 本项目采用了前沿的技术栈来构建一个高性能且可维护的应用。选择了 Nx 作为构建管理和单一代码库解决方案,通过模块化和插件系统来扩展和优…

论文学习—Efficient Multi-label Classification with Many Labels

论文学习:Efficient Multi-label Classification with Many Labels 摘要2. 多标签分类相关工作2.1 Label Transformation1. **降维(Dimensionality Reduction)**2. **回归模型(Regression Model)**3. **逆变换&#xf…

【Python机器学习】NLP词中的数学——词袋

我们已经收集了一些词/词条,对这些词进行计数,并将它们归并成词干或者词元,接下来就可以做更多的事情。分析词对一些简单的任务有用,例如得到词用法的一些统计信息,或者进行关键词检索。但如果我们想知道哪些词对于某篇…

利用深度学习技术来实现街景图像的语义分割(街景图像语义分割)

本项目致力于利用深度学习技术来实现街景图像的语义分割。通过精确地识别和分类图像中的每个像素,该技术能够自动划分出街道、人行道、车辆、行人等各种不同的物体类别。这在智能交通系统、自动驾驶、城市规划等领域有着广泛的应用前景。 技术实现 深度学习模型&am…

zsh: command not found: brew(M系列芯片)

利用官网的命令安装完brew /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"查看版本,提示找不到命令 % brew -v zsh: command not found: brew解决方法,在终端中执行以下命令&#xff0c…

git仓库删除某个历史提交

目录 问题情况1情况2 问题 如果我们在开发过程中,存在一些验证性的提交或者失误性的提交,那么这些提交我们不想要了,怎么办? 情况1 如果是想要删除某个commitid之后的所有提交 那么git reset 可以满足你 git reset --hard 你要…

Keilv5 逻辑分析仪的使用

声明:基于视频【事件驱动型编程和 QP/C 框架】所做的笔记 Keilv5逻辑分析仪是Keil MDK集成开发环境(IDE)中的一个工具,用于帮助开发人员进行嵌入式系统的调试和分析。 它的作用主要有: 监测信号:Keilv5逻…

QGIS制图流程

在之前我们推送了QGIS的软件安装、插件安装、数据导入等基础操作,今天我们介绍一下QGIS的制图功能。QGIS的制图与ArcGIS Pro存在一定的区别,但是思路上相似。我们教程内容主要是参考QGIS官方文档: https://docs.qgis.org/3.34/en/docs/user_…

大数据技术之 Flume概述、安装(1)

目录 Flume 概述 Flume 定义 为什么选用 Flume Flume 基础架构 Agent Source Sink Channel Event Flume 安装 Flume 安装部署 安装地址 安装部署 Flume 概述 Flume 定义 Flume 是 Cloudera 提供的一个高可用的、高可靠的、分布式的海量日志采集、聚合和传输的系统。Flume…