AliOS Things手势识别应用演示-阿里云开发者社区

开发者社区> 玄一> 正文

AliOS Things手势识别应用演示

简介: 1. 概述 手势识别作为一种辅助的人机交互方式,在人机脱离的场景下可以提供方便的交互体验。本文介绍基于AliOS Things + STM32F413H Discovery开发板实现手势交互功能的演示。
+关注继续查看

1. 概述

手势识别作为一种辅助的人机交互方式,在人机脱离的场景下可以提供方便的交互体验。本文介绍基于AliOS Things + STM32F413H Discovery开发板实现手势交互功能的演示。

2. 环境搭建

开发板:STM32F413H Discovery(附带麦克风阵列板)
手势传感器:Seeed Grove PAJ7620
温湿度传感器:HTS221
LED数码管:Seeed Grove LED Bar
硬件说明:

使用STM32F413H作为主控芯片,提供I2C接口、GPIO控制接口、显示控制接口等。

手势识别传感器和温湿度传感器均为标准I2C接口,连接到STM32F413H的I2C2上,通过slave address区分。

LED数码管的控制引脚连接到STM32F413H上的PC13、PA4两个gpio(PC13作为clock、PA4作为data),通过输出高低电平控制每一个LED的亮灭。

硬件连接:
p01

3. 软件编译

软件:AliOS Things
下载AliOS Things后,切换到developer分支。

执行如下命令编译Application:
aos make sensordemo@stm32f413h-discovery

编译成功后,使用下面命令烧录镜像:
aos upload sensordemo@stm32f413h-discovery

4. 软件介绍

  • AliOS Things

AliOS Things是面向IOT领域的轻量级物联网嵌入式操作系统。AliOS Things启动过程中,依次完成内核初始化、硬件资源初始化、功能组件初始化、外设驱动初始化。系统就绪后,通过用户定义的application_start()函数进入应用程序。

  • 创建显示界面

在application_start()函数中调用display_init()创建LCD刷新任务、显存刷新任务、定义显示界面。

一共添加了3个显示界面:

界面1:显示声音方位。

界面2:显示音量。

界面3:显示温度和湿度

  • 手势识别过程

在传感器驱动初始化函数drv_gesture_paj7620_init()中进行芯片设置和中断注册。当检测到物体距离变化后,触发中断,然后在中断处理函数中读取相关寄存器,得到识别的手势类型。
然后在显存刷新任务fb_refresh_task刷新界面时,根据当前手势类型判断是否需要进行显示界面切换或者控制LED数码管亮灭。

  • 手势功能定义

向上 —— LED Bar逐渐点亮
向下 —— LED Bar逐渐熄灭
向左 —— 显示上一个显示界面
向右 —— 显示下一个显示界面

5. 功能演示

视频观看:AliOS-Things手势识别应用演示

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
《Ember.js实战》——1.4 第一个Ember.js应用程序:记事本应用
在图1-6的底部,Ember.js通过Ember Data来简化应用程序,Ember Data提供了创建富Web应用所需的大量数据-模型特性,其描绘了一种跟服务器端通信的可行实现方式。其他库也具备这种功能,你可以编写或引入你自己的客户端-服务器端通信层。
1953 0
阿里云服务器端口号设置
阿里云服务器初级使用者可能面临的问题之一. 使用tomcat或者其他服务器软件设置端口号后,比如 一些不是默认的, mysql的 3306, mssql的1433,有时候打不开网页, 原因是没有在ecs安全组去设置这个端口号. 解决: 点击ecs下网络和安全下的安全组 在弹出的安全组中,如果没有就新建安全组,然后点击配置规则 最后如上图点击添加...或快速创建.   have fun!  将编程看作是一门艺术,而不单单是个技术。
4617 0
Python必知词汇:应用程序接口
应用程序接口是“电脑操作系统”或“程序库”提供给应用程序调用使用的代码。其主要目的是让应用程序开发人员得以调用一组例程功能,而无须考虑底层源代码的细节。
298 0
轻松搭建基于 Serverless 的 ThinkPHP 应用
首先介绍下在本文出现的几个比较重要的概念: 函数计算(Function Compute): 函数计算是一个事件驱动的服务,通过函数计算,用户无需管理服务器等运行情况,只需编写代码并上传。函数计算准备计算资源,并以弹性伸缩的方式运行用户代码,而用户只需根据实际代码运行所消耗的资源进行付费。
2459 0
轻松搭建基于 Serverless 的 ThinkPHP 应用
本文演示了如何从零开始搭建一个 Serverless 的 ThinkPHP 的博客应用。如果不想接触 Nginx、Linux 等复杂感念,而且想要以极低的成本托管自己的应用,本文会是一个很好的开始。
910 0
用HTML5/CSS3/JS开发Android/IOS应用
现在人人都想成为安卓/IOS应用开发工程师。其实,安卓/IOS应用可以用很多种语言来实现。由于我们前端开发工程师,对HTML5/CSS/JavaScript的网络编程已经相当熟悉了。所以,今天大家将会认识到一些利用前端语言来开发安卓/IOS应用的工具。
1527 0
SharePoint 2013 创建web应用程序报错"This page can’t be displayed"
错误描述 This page can’t be displayed •Make sure the web address http://centeradmin is correct. •Look for the page with your search engine. •Refresh the page in a few minutes. 发生过程   创建web应用程序,填写完基本信息以后点击确定,就是“这不会花费很长时间”的提示,然后就报错了,并且SharePoint和iis的日志中均没有记录错误。
1182 0
+关注
2
文章
0
问答
来源圈子
更多
致力于实现万物互联的美好世界,为生态合作伙伴提供基于云计算、大数据、人工智能、云端一体化、安全的物联网基础平台和内容服务平台。
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载