网站建设和推广电话销售话术王也图片高清头像

news/2025/9/23 4:27:27/文章来源:
网站建设和推广电话销售话术,王也图片高清头像,wordpress即时聊天,曲阳住房和城乡建设局网站在前几篇笔记之中都是使用的GPIO输出功能#xff0c;还没有用过GPIO输入功能#xff0c;本章就来学习一下如果在Linux下编写GPIO输入驱动程序。正点原子STM32MP1开发板上有三个按键#xff0c;就使用这些按键来完成GPIO输入驱动程序#xff0c;同时利用原子操作来对按键值进…在前几篇笔记之中都是使用的GPIO输出功能还没有用过GPIO输入功能本章就来学习一下如果在Linux下编写GPIO输入驱动程序。正点原子STM32MP1开发板上有三个按键就使用这些按键来完成GPIO输入驱动程序同时利用原子操作来对按键值进行保护。 Linux下按键驱动原理 按键驱动和LED驱动原理上来讲基本都是一样的都是操作GPIO只不过一个是读取GPIO的高低电平一个是从GPIO输出高低电平。本章实现按键输入在驱动程序中使用一个整形变量来表示按键值应用程序通过read函数来读取按键值判断按键有没有按下。在这里这个保存按键值的变量就是个共享资源驱动程序要向其写入按键值应用程序要读取 按键值。所以要对其进行保护对于整形变量而言首选的就是原子操作使用原子操作对变量进行赋值以及读取。Linux下的按键驱动原理很简单接下来开始编写驱动。 注意本章例程只是为了演示Linux下GPIO输入驱动的编写实际中的按键驱动并不会采用本章中所讲解的方法Linux下的input子系统专门用于输入设备 硬件原理图分析 开发板上有三个按键KEY0、KEY1和WK_UP原理图如下图所示 从上图可以看出按键KEY0 、KEY1和WK_UP这三个按键分别连接到正点原子STM32MP1开发板的PG3、PH7和PA0这三个IO上。本节只用到KEY0这个按键从上图可以看出KEY0接了一个10K的上拉电阻因此KEY0没有按下的时候PG3应该是 高电平当KEY0按下以后PG3就是低电平。 实验程序编写 修改设备树文件 在根节点“/”下创建KEY节点命名为“key”节点内容如下 示例代码29.3.1.1 创建KEY节点 1 key { 2 compatible alientek,key; 3 status okay; 4 key-gpio gpiog 3 GPIO_ACTIVE_LOW; 5 };按键驱动程序编写 这里总体跟驱动LED的结构是类似的。 首先在设备结构体key_dev中定义一个原子变量atomic_t的keyvalue。 在初始化函数keyio_init中与之前的区别就是在最后调用gpio_direction_input设定gpio为输入模式。 key_open中只要调用keyio_init初始化按键。 key_read中通过gpio_get_value来读取IO口当前电平如果读到0也就是低电平在维持高电平也就是按键持续按下进入while循环等待释放释放后设置atomic_set为KEY0VALUE(0XF0)。然后通过atomic_read读取原子变量。 在mykey_init中调用(atomic_t)ATOMIC_INIT(0)初始化原子变量然后通过atomic_set设置原子变量为INVAKEY(0X00)。 编写测试APP 这里就是在open这个字符设备之后在while死循环中read值以此来判断按键是否按下。 运行测试 编译驱动程序和测试APP 编译驱动程序 把Makefile的obj-m改成key.o然后“make”就可以了。 编译测试APP 可以通过如下命令编译keyApp.c arm-none-linux-gnueabihf-gcc keyApp.c -o keyApp 运行测试 将上一小节编译出来的key.ko和keyApp这两个文件拷贝到rootfs/lib/modules/5.4.31目录中重启开发板进入到目录lib/modules/5.4.31中输入如下命令加载key.ko驱动模块 depmod //第一次加载驱动的时候需要运行此命令 modprobe key.ko //加载驱动 加载成功后通过如下命令来测试 ./keyApp /dev/key 按下开发板上的KEY0keyApp就会过去并输出案件信息如下图所示 从上图可以看出当按下KEY0以后就会打印出“KEY0 Press, value 0XF0”表示按键按下。但是可能会发现有时候按下一次KEY0但是会输出好几行“KEY0 Press, value 0XF0”这是因为代码没有做按键消抖处理。 如果要卸载驱动可以使用如下命令 rmmod key.ko 总结 按键输入和之前的LED驱动是很相似的只是在驱动之中要换成gpio_direction_input表示这个GPIO是输入的。然后使用原子变量的时候是在key_read之中通过原子变量控制读操作不会产生并发竞争。

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

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

相关文章

广东网站设计公司电话h5应用

图片来源:https://cn.bing.com本文系生物谷原创编译,欢迎分享,转载须授权!研究人员发现了一种直接将皮肤细胞重新编程成用于视觉的光敏杆状感光器的技术。实验室制造的杆状体使失明的老鼠能够在细胞移植到眼睛后探测到光线。这项研…

哪里有做旅游包车的网站智慧新零售系统

用一张图详细的描述DNS寻址的过程,是高级前端进阶的网络篇: 主要是第三步要记仔细就行啦,每一步都要详细的记录下来,总结的脉络如下: 本地DNS缓存本地DNS服务器根域名服务器 顶级域名服务器再次顶级域名服务器权威域名…

滨江区高端网站建设优化推广方案

上周我们学习了如何使用元素创建SVG文本。在实例中我们设置了x和y坐标来定位文本,也尝试了给SVG文本中的每个字符定位。关于元素还有很多内容。在处理SVG文本时,不要局限于x和y属性。元素还有几个可以添加的属性,现在我们开始讨论吧。dx和dy属…

重庆有哪些做网站公司做网站怎么样引流

身为一位产品经理或设计师,原型设计工具是必不可少的工作伙伴。但我们难免会遇到预算有限的时候,这时候,去哪里寻找一款好用的免费原型设计工具呢?以下,小编为大家精心挑选了7款免费的原型工具,并对其进行了…

手表 网站策划常德市建设工程造价信息网

前言 在安装好anaconda之后,系统默认就安装好了一个jupyter notebook的工具,该工具可以在网页端运行,类似这样: 提供了一个按行运行的python运行环境,每一步的输出都可以打印到界面,对于我们初学python&am…

爱站关键词挖掘软件wordpress d压缩

引言 在现代应用程序开发中,确保数据库操作的完整性和一致性至关重要。MySQL 提供了强大的事务管理功能,允许开发者以原子性、一致性、隔离性和持久性(ACID)的方式处理数据。本文将通过详细的解释和实际示例,带你深入…

网站的购物车怎么做检查网站是否做网站地图

杜教筛 1.概述 杜教筛是用以解决积性函数前缀和的算法。 在学习了莫比乌斯反演之后,杜教筛的过程就会显得简单而自然。 2.基本形式 对于积性函数,我们定义如下函数: 构造积性函数 ,使得 显然 : 进一步转化&#xf…

青浦做网站价格网站代码500

企业级 文件传输加密应用 简历一直在投,一直无音讯,今天我又从硬盘里翻出一个 好玩的加密软件,这个是 2017年的时候和荷兰某世界500强公司合作的小项目。 今天分享给大家 。 文章目录 企业级 文件传输加密应用1.目的2.软件介绍3.下载好 安装…

房山网站建设公司wordpress管理工具栏

在互联网时代,IP地址的重要性不言而喻。作为网络通信的基础,IP地址用于标识每一台连接到互联网的设备。然而,传统的IP地址定位方式仅能粗略地确定设备的大致位置,无法实现精确定位。那么,IP地址能否实现精确定位呢&…

怎样建设淘客网站app开发流程

chrono是C11中新加入的时间日期操作库,可以方便地进行时间日期操作,主要包含了:duration, time_point, clock。 时钟与时间点 chrono中用time_point模板类表示时间点,其支持基本算术操作;不同时钟clock分别返回其对应…

网站审批号一起做网站女装夏季裙

设计灵感: 1 单线程io多路复用服务端 2 使用poll实现 3 将server_sockfd client_sockfd 设为非阻塞,实现最大io效率 4 使用套接字选项SO_REUSEADDR 用于测试环境调试 5 将server_sockfd 和每一个有效的client_sockfd 都设为poll的监控事件 6 有客户端关闭连接时,自动从数…

深圳做网站公司 南山信阳高端网站建设

附:赛制和比赛规则一、赛制1.比赛执行国家体育总局最新审定的《乒乓球竞赛规则》,比赛使用红双喜40毫米白色乒乓球,执行国际乒联关于“11分”制,一分钟暂停,“无遮挡发球”的竞赛规定。2.男子团体比赛采用五场三胜,每盘…

网站建设的前期工作基础win7网站建设

“楼下一个男人病得要死,那间隔壁的一家唱着留声机,对面是弄孩子。楼上有两人狂笑;还有打牌声。河中的船上有女人哭着她死去的母亲。人类的悲欢并不相通,我只觉得他们吵闹。” A - XORwice 把a和b看成二进制数处理,不…

自己建设小城市网站得多少钱美图秀秀网页版

2009全国硕士研究生入学考试过关必练_网络试题一. 通过选择题过关必练1. 常用的数据传输速率单位有Kbps、Mbps、Gbps与Tbps,1Mbps等于A. 1103bps B. 1106bps C. 1109bps D. 11012bps2. 常用的数据传输速率单位有Kbps、Mbps、Gbps,如果局域网的…

做网站如何添加表单知了网站后台

布隆过滤器是一种空间效率很高的概率型数据结构,主要用于快速判断一个元素是否存在于一个集合中。它的主要应用场景、优势和不足如下: 应用场景 缓存:在缓存系统中,可以利用布隆过滤器快速判断某个数据是否存在于缓存中&#xf…

网站建设完成后为何无法运营下去cookies因预料之外的输出被阻止 wordpress

鼠标悬浮线条动态变化 整体效果核心代码html 代码:css 部分代码: 完整代码如下html 页面:css 样式:页面渲染效果: 整体效果 这个链接悬浮效果主要用 css3 的 animation 属性配合 :hover 伪选择器来实现的。 此效果可以…

东莞建设网站流程从化定制型网站建设

背景 通过调用函数的url,将参数传递给函数执行,函数里如何获取这个参数 过程 下一个简单的demo如下 参考这个链接https://support.huaweicloud.com/devg-functiongraph/functiongraph_02_0420.html写一个demo,这个是百度视频云获取token的…

制做网站首先应该怎么做南宁住房和城乡建设部网站

Linux中系统调用很多,但是再多也有几种不变的根本:创建,打开,写,读,关闭,删除,等最最基本的操作,就像人们所常说的,Linux上的一切我们都可以当做文件来处理&a…

如何用asp编写网站后台企业号怎么注册

项目中用到了小程序的服务消息通知,通知订单状态信息,下边就是整理的一下代码,放到项目中,把项目的小程序appid和小程序的secret写进去,直接运行即可 提前申请好小程序服务信息通知短信模板,代码需要用到模…

可以做拟合的在线网站成都网站建设公司开发

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 管理员端2.2 Web 端2.3 移动端 三、系统展示四、核心代码4.1 查询项目4.2 移动端新增团队4.3 查询讲座4.4 讲座收藏4.5 小程序登录 五、免责说明 一、摘要 1.1 项目介绍 基于JAVAVueSpringBootMySQL的创意工坊双创管理…