结构

上面的旋钮结构里装有磁铁,间隔为60°,总共有6个磁铁。A、B、C为三个磁感应传感器的位置。

电路

采用ADC去采样三个磁感应传感器的值


旋钮旋转时的采样波形


原理

磁铁经过磁感应传感器,磁场强度发生改变,通过ADC去采样对应的数值,通过三个采样曲线的变化规律,换算出旋钮的旋转方向。

程序思路

  1. 设定三条曲线分别为:A (黄) B(红) C(绿)

    三相正弦波的曲线切分,分为6个状态:
    H1 AB: B >= A > C
    H2 AC: B >= C > A
    H3 BC: C >= B > A
    H4 BA: C >= A > B
    H5 CA: A >= C > B
    H6 CB: A >= B > C

  2. 由此可根据状态判断出旋钮的旋转方向:
    H1->H2->H3 顺时针
    H1->H6->H5 逆时针

磁感应无极旋钮功能开发相关推荐

  1. 终端软件升级功能开发_5个很棒的终端技巧可帮助您升级为开发人员

    终端软件升级功能开发 There are plenty of beginner tutorials around that help you learn command line basics, su ...

  2. Windows Phone 开发——相机功能开发

    原文:Windows Phone 开发--相机功能开发 相机功能是手机区别于PC的一大功能,在做手机应用时,如果合理的利用了拍照功能,可能会给自己的应用增色很多.使用Windows Phone的相机功 ...

  3. SNMP功能开发简介 六 snmp功能开发阶段性总结

    先说客户需求:能够通过SNMP协议获取设备信息便于管理.客户提出的需求信息转化成MIB结点都是Get类请求. 背景&方案:我们的产品业务层是使用Go语言开发的,系统层基于OpenWrt(一个嵌 ...

  4. 微信公众平台开发(24) 自定义菜单功能开发

    原文: http://www.cnblogs.com/imaker/p/5491433.html 一.简介 微信公众平台服务号以及之前成功申请内测资格的订阅号都具有自定义菜单的功能.开发者可利用该功能 ...

  5. 云炬Android开发笔记 6启动图功能开发与封装

    阅读目录 1.启动图功能开发与封装(倒计时效果) 2. 持久化 3.倒计时工具库封装 4.第一个启动页面的倒计时 5.启动图功能开发与封装(轮播效果) 5.1 轮播图片的添加 5.2 指示器的添加 6 ...

  6. 方维O2O系统 后台业务员功能开发

    方维O2O系统 后台业务员功能开发 需求如下: 开发一个管理员,叫做业务员有特别的权限,就是后台可以给业务员一个账号,然后业务员每次出去拉到团购回来,上传商户,之后,运营后能在业务员自己的账号权限内看 ...

  7. Android学习之高德地图的通用功能开发步骤(二)

    周一又来了,我就接着上次的开发步骤(一)来吧,继续把高德地图的相关简单功能分享一下 上次写到了第六步,接着写第七步吧. 第七步:定位 + 地图选点 + 路径规划 + 实时导航 以下是我的这个功能Nav ...

  8. ssm中怎么用location.href跳到controller层_聊聊自动驾驶中的功能开发

    在知乎上看过不少大牛写的自动驾驶技术介绍文章,大多谈到的是AI, Deep Learning, Computer Vision等等感知(Perception)层面的.但在各个传感器(雷达.摄像头.激光 ...

  9. Django后台项目之用户管理功能开发流程

    项目功能开发流程 1 先写列表页(加载出来数据就行) ob = User_vip.objects.filter(is_del='004001').order_by('-cts') 2 写添加功能 2. ...

最新文章

  1. 配置动态路由协议OSPF
  2. 如何使用OpenCV和Socket进行视频聊天?
  3. php 单选按钮选中的值,在javascript中根据单选按钮选择更改变量值
  4. Windows保护模式学习笔记(十二)—— 控制寄存器
  5. ARMA模型的性质 1
  6. 如果写文档发博客,你还在用Word文档你就out了,写文档神器Markdown的前世今生来了。(持续更新,欢迎关注点赞)
  7. 基于迁移学习的农作物病虫害检测方法研究与应用
  8. mybatis将字段改为null_【MyBatis入门到入土精讲】MyBatis介绍
  9. java毕业设计投标文件在线制作系统mybatis+源码+调试部署+系统+数据库+lw
  10. 博途运行软件仿真步骤
  11. 快速掌握SOLIDWORKS齿轮转动的应用
  12. 大数据分析应用领域有哪些
  13. 毕业了,开始新的生活!
  14. 猿学~被误解的MVC和被神化的MVVM
  15. 三人行:把演说作为艺术,影响身边每一个人
  16. 零阶保持器和延时模块的区别
  17. 从微信端跳到外部浏览器进行apk文件下载最新解决方案
  18. 分享:avhttp简介
  19. neovim as JavaScript IDE
  20. GIS介绍(详细)一、什么是GIS?

热门文章

  1. 图解clientWidth,offsetWidth,scrollWidth
  2. 福娃“总动员”吹响奥运“集结号”
  3. MinGW安装和使用
  4. Springboot毕设项目驾校学员管理系统w42sj(java+VUE+Mybatis+Maven+Mysql)
  5. Java实现 LeetCode 203 移除链表元素
  6. Spring AOP简单入门学习
  7. apollo 配置中心 支持php,Apollo 配置中心详解
  8. 「Go工具箱」web中的session管理,推荐使用gorilla/sessions包
  9. windows线程 互斥锁CreateMutex、ReleaseMutex、CloseHandle
  10. 超简洁的十进制转十六进制