【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 ,判断字符串是否有效。括号匹配。 二、…

Windows Edge浏览器对Web Authentication API的支持分析与实践应用

随着网络技术的发展,Web安全认证方式也在不断进步。Web Authentication API(通常称为WebAuthn)是一个现代的Web标准,旨在提供更安全、更便捷的认证机制。它支持多种认证方式,包括生物识别技术、硬件令牌和手机认证等。…

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…

高级调度1

一.初始化容器InitContainer 1.定义 initContainers 是 Kubernetes Pod 中的一个功能,用于在主容器启动之前执行初始化任务。initContainers 与主容器的作用不同,它们在主容器启动之前运行,并且可以完成准备工作,如下载依赖、配…

Nginx: 反向代理之upstream模块以及完整配置反向代理示例

upstream模块 对于upstream模块而说,它默认已经被编译进Nginx中了想禁用的话,通过 –without-http_upstream_model 这样一个参数来明确的禁用 1 )基本用法 1.1 upstream 语法: upstream name { … }默认值:无上下文…

xss-labs通关攻略 11-15关

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

springboot集成elasticsearch(7.17.22)

官方文档地址:Javadoc | Elasticsearch Java API Client [7.17] | Elastic springboot版本2.1.3 1.pom文件 以下是如何使用maven作为依赖关系管理器配置依赖关系。将以下内容添加到pom.xml文件中: 注:版本号一定要和elasticsearch的版本号…

IDEA2022配置JDK1.8版本与Maven3.3依赖包

第一步: 根据window / linux环境,安装不同IDEA2022 和 下载不同JDK1.8。 Maven依赖包可在不同环境共用,但需要更换Maven依赖包中conf > settings.xml。 第二步: 配置IEDA中JDK1.8版本 File > Project Structure > Proj…

如何使用JMeter的JSON提取器解析JSON响应

在性能测试和API测试中,经常需要处理JSON格式的数据。Apache JMeter提供了一个强大的工具——JSON提取器,用于从JSON响应中提取特定的值。本文将通过一个实际的例子,演示如何使用JMeter的JSON提取器来解析JSON响应。 背景 假设我们收到了一…

gevent 入门篇

gevent 入门篇 并发编程模型主要有: 多进程,多线程,事件驱动, 协程. gevent 是基于协程的异步框架,它需要依赖于greenlet.gevent有什么样的优势? 先来通过一个简单的例子对比同步执行一个方法和使用gevent的异步方式. 普通的单线程同步执行任务 import timedef sync_task()…

Chrome 渲染器中的对象转换到 RCE

在本文中,我将利用CVE-2024-5830,这是 Chrome 的 JavaScript 引擎 v8 中的一个类型混淆错误,我于 2024 年 5 月将其报告为错误 342456991。该错误已在版本126.0.6478.56/57中修复。此错误允许通过一次访问恶意网站在 Chrome 的渲染器沙箱中执行远程代码执行 (RCE)。 V8 中的…

前端Html5/Css3—div盒子模型

文章目录 第六章 盒子模型6.1 border边框6.2 border-width粗细6.3 border-style边框样式6.4 border简写6.5 margin外边距6.6 padding内边距6.7 盒子模型尺寸6.8 box-sizing6.9 border-radius圆角边框6.9.1 制作圆形6.9.2 半圆6.9.3 四分之一圆 6.10 box-shadow盒子阴影 第六章 …

速盾:中小企业网站cdn加速方案?

中小企业网站在如今的互联网时代中起到了非常重要的作用,能够帮助企业提升品牌形象、增加曝光度、吸引潜在客户等。然而,随着用户对网页加载速度的要求越来越高,网站的访问速度成为决定用户是否留在网站的关键因素之一。为了提升网站的访问速…

通过css,js html结合实现第一个页面

html以及 js代码 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title><link …

react调用子组件方法`TS2304: Cannot find name ‘Ref‘`

文章目录 发现宝藏1. 使用正确的 React.Ref 类型2. 使用 React.Ref 或 React.RefObject 作为 ref 类型3. 确保你的 tsconfig.json 设置正确总结 发现宝藏 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。…

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

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

Java重修笔记 第四十三天 Set 集合、HashSet 类

Set 接口 1. 它是无序的&#xff08;添加和取出的顺序不一致&#xff0c;但取出的结果是固定的&#xff09;&#xff0c;没有索引 2. Set 接口也是 Collection 的子接口&#xff0c;所以继承了 Collection 的方法 3. Set 接口的遍历方式有两种&#xff0c;迭代器和增强 for…

计算机专业的真正的就业情况

首先听到计算机行业&#xff0c;大多数人岗位已经饱和&#xff0c;前端已死&#xff0c;程序员35岁危机。但是事实上这些认知都是片面的&#xff0c;今天由我来为大家分析计算机行业的内幕。 疫情过后&#xff0c;过内各种行业都受到了冲击&#xff0c;你们敢说除了体制内的行业…

速盾:高防 CDN 如何提高电子商务网站的性能和用户体验?

随着电子商务的迅速发展&#xff0c;电子商务网站的性能和用户体验成为了至关重要的因素。其中&#xff0c;高防 CDN&#xff08;内容分发网络&#xff09;可以为电子商务网站提供很大的帮助&#xff0c;使其能够提高性能和用户体验。下面将详细介绍高防 CDN 如何实现这一目标。…