当前位置: 首页 > news >正文

彩票网站开发周期如何去除痘痘效果好

彩票网站开发周期,如何去除痘痘效果好,国内常用erp系统有哪几种,泸县做网站公司本文以 ESP32-S3-Zero 板载的按键为例,介绍了GPIO的使用方法,以及如何获取按键的点击事件。板载按钮作为自带的天然用户按钮,除了其本身的功能外,也可以作为某些应用场景下的简单的交互方式。 1. 引言 对于一般的产品来说&#x…

本文以 ESP32-S3-Zero 板载的按键为例,介绍了GPIO的使用方法,以及如何获取按键的点击事件。板载按钮作为自带的天然用户按钮,除了其本身的功能外,也可以作为某些应用场景下的简单的交互方式。

1. 引言

对于一般的产品来说,比如路由器等,都提供了 RESET 功能,我们通过板载的按键就可以轻松的实现,并获取到按钮按下的时间。我们也可以使用其作为配网按钮,当用户按下按钮时,设备进入配网模式,这样,就可以方便的实现设备的配网功能。

在这篇文章中,我们主要使用其进行一些简单的交互:按下 BOOT 按钮,点亮板载的 LED 灯,松开灯灭。

2. 板载按键

ESP32-S3-Zero 板载了两个按键,不同于一般的载板只有一个按键,同时用于复位或者进入下载模式。这就意味着,我们可以在自己的程序中使用一个按钮,方便用户进行交互。如下图所示,板载的两个按键,分别是标号6的 BOOT 和 标号7的 RESET 按键。

请添加图片描述

根据原理图,我们可以看到,这两个按键都是通过一个电阻分压电路,将按键的电平变化转换为电压信号,然后通过一个 IO 口输入到 ESP32-S3 芯片中。如下图所示,已经标出了 BOOT 按键 K2 的电压信号输入到了 IO0 引脚。当按键按下时,IO0 引脚与 GND 短接,电压为 0V,当按键松开时,IO0 引脚与 3.3V 之间有一个 10K 的电阻,电压为 3.3V。也就是说,当用户按下 BOOT 按钮时,IO0 引脚的电平会变为低电平,当用户松开时,IO0 引脚的电平会变为高电平。

请添加图片描述

知道了原理,我们就可以通过程序来获取按键的点击事件了。不过,虽然有两个按键,但是我们只能使用一个,因为另一个按键是用于复位的,当按下 RESET 按钮时,ESP32-S3 芯片会复位,这样,我们就无法获取到按键的点击事件了。

3. 获取按键的点击事件

在 nanoFramework 中,我们可以通过 GpioController 类来获取 IO 口的状态,也就是获取 IO 口的电平。我们可以通过 ValueChanged 事件来获取 IO 口电平的变化,从而获取到按键的点击事件。

在下面的代码中,我们 Ws2812c 类来控制板载的 LED 灯,ESP32-S3-Zero 的板载 LED 引脚为21,只有1个灯珠。我们通过 Image 属性来获取到灯珠的图像,然后通过 SetPixel 方法来设置灯珠的颜色,最后通过 Update 方法来更新灯珠的状态:

public static void Main()
{// 1 个灯珠,1像素int WS2812_Count = 1;//  ESP32-S3-Zero 灯珠的引脚int WS2812_Pin = 21;var gpioController = new GpioController();var leddev = new Ws2812c(WS2812_Pin, WS2812_Count);BitmapImage img = leddev.Image;var userbtn = gpioController.OpenPin(0,PinMode.InputPullDown);userbtn.ValueChanged += (s, e) =>{Debug.WriteLine("BOOT 按钮事件:" + e.ChangeType.ToString());Debug.WriteLine("IO0 的值:" + userbtn.Read());if (userbtn.Read() == PinValue.Low){// 开灯img.SetPixel(0, 0, Color.White);}else{// 关灯img.SetPixel(0, 0, Color.Black);}leddev.Update();};Thread.Sleep(Timeout.Infinite);
}

如下图所示,我们可以看到,当按下 BOOT 按钮时,IO0 引脚的电平变为低电平,当松开时,电平变为高电平。在代码中我们根据当前的电平来设置灯珠的颜色,当按下按钮时,灯珠变为白色,当松开时,灯珠变为黑色,即灭灯。

请添加图片描述

通过上面的编码,我们很轻松的就制作了一个小电灯。当然,我们也可以通过修改代码,通过 flag 来控制灯珠的状态,这样,我们就可以实现按下按钮时,灯珠点亮,再次按下时,灯珠熄灭。

请添加图片描述

4. 最后

在这篇文章中,我们详细介绍了如何在.NET nanoFramework环境下,使用ESP32-S3-Zero开发板的板载按键进行简单的用户交互。我们了解了如何通过GPIO接口读取按键状态,并根据按键的状态控制板载LED的开关。这只是一个简单的示例,实际上,我们可以在这个基础上进行更多的扩展,比如,我们可以通过按键实现更复杂的功能,比如长按进入特定模式,或者双击执行特定操作等。

希望这篇文章能帮助你理解如何在.NET nanoFramework环境下,使用ESP32-S3-Zero开发板的板载按键进行交互。如果你有任何问题或者想法,欢迎在评论区留言。

最后,期待看到你使用这些知识创造出更多有趣的项目和产品。祝编程愉快!

http://www.laogonggong.com/news/49534.html

相关文章:

  • 品牌整合营销传播公司排名seo
  • 东航集团客户网站是哪家公司建设购物网站大全
  • 网站开发工具网络营销策略主要包括
  • 企业起名网站怎么做杭州百度推广代理公司哪家好
  • 网站改版 百度影响产品经理培训哪个机构好
  • 自动优化网站建设咨询新平台推广
  • 深圳网站建设服务公2021年最为成功的营销案例
  • 国内网站服务器我要看今日头条
  • 网站建设需申请注册域名樱桃磁力bt天堂
  • 调兵山 网站建设广州营销型网站
  • 深圳响应式网站开发seo自学网视频教程
  • 广州自助建设网站平台深圳 网站制作
  • 南京专业的网站设计团队品牌推广方案包括哪些
  • 企业网站空间域名百度搜索引擎优化的养成良好心态
  • 做网站的版式会侵权吗新闻发布的网站
  • 网站建设团队定制zoho crm
  • 三点水网站建设合同书优秀网站设计
  • 怎么看自己的网站是用什么做的软文是什么
  • 深圳建站公司品牌网站建设腾讯会议多少钱一个月
  • 网站空间信息查询重庆网站开发公司
  • 网站做那个效果好seo关键字排名优化
  • 北京网站建设服务seo包年优化费用
  • 海口网站建设介绍网络营销企业有哪些
  • 建筑类企业网站模板seo综合查询
  • 外贸网站 万网品牌营销策划方案案例
  • 自己做网站 做什么好国内网站建设公司
  • 没有网站怎么做百度竞价手机seo关键词优化
  • 哪些网站做物流推广比较好成都网站seo性价比高
  • 专业零基础网站建设教学在哪里太原关键词排名优化
  • 苏州网站开发公司排名百度竞价软件哪个好