3510|6

1297

帖子

2

TA的资源

纯净的硅(中级)

楼主
 

【一起玩MicroPython】04 利用加速度计实现手势控制LED灯 [复制链接]

 
本次eeworld版没有加速度传感器,不过F4DISCO有啊,那咱就偷懒用DISCO吧,哈哈。F4DISCO上自带的是ST的LIS302DL,用SPI连接(当然也可以选择使用I2C方式),原理图如下:其中PE3选择接口模式(同时也是SPI的片选,注,并未使用硬件PA5_NSS脚),PA5-PA7分别是SCK,MISO和MOSI,也就是板上的SPI1,最高支持10M的通信速度。另有两个中断脚接到了PE0和PE1。

芯片的xyz轴如下图所示,是一个右手螺旋,所以在板上,STlink就是x+,音频输出就是x-;user sw是y+,reset sw是y-;而我们的地球呢,是z-。可是测试结果并不支持以上结论,正好全部相反。横着放,右倾,x是负的,左倾,x是正的。U,y是负的,D,y是正的。

现在要做的事情呢,就是根据倾斜的方向,点亮对应的LED,后期就可以更换为其他应用需要的动作了。用的是F4DISCO的板子,上面的LED分布是:
1:red,down;2:green,up,3:orange,R,4:blue,L
然后用下面代码测试了一下,就是往哪边倾转,哪边的LED灯亮。还是能正常工作的。选了一个阈值0.3,工作还行,就是可能有抖动。代码是必须有缩进的,不知道为什么贴上来就没有了。。。
  1. from staccel import STAccel
  2. ac=STAccel()
  3. while (True):
  4.         if ac.x()<-0.3 :        #R
  5.                 pyb.LED(3).on()
  6.         elif ac.x()>0.3 :        #L
  7.                 pyb.LED(4).on()
  8.         else :
  9.                 pyb.LED(3).off()
  10.                 pyb.LED(4).off()
  11.         print(ac.x())
  12.         if ac.y()<-0.3 :        #U
  13.                 pyb.LED(2).on()
  14.         elif ac.y()>0.3 :        #D
  15.                 pyb.LED(1).on()
  16.         else :
  17.                 pyb.LED(1).off()
  18.                 pyb.LED(2).off()
  19.         print(ac.y())
  20.         pyb.delay(100)
复制代码



最新回复

汇总帖在此 【一起玩MicroPython】—by johnrey https://bbs.eeworld.com.cn/forum. ... 9205&fromuid=536508   详情 回复 发表于 2016-6-17 10:48
点赞 关注
 
 

回复
举报

1万

帖子

2854

TA的资源

管理员

来自 7楼
 
汇总帖在此
【一起玩MicroPython】—by johnrey
https://bbs.eeworld.com.cn/forum. ... 9205&fromuid=536508

加EE小助手好友,
入技术交流群
EE服务号
精彩活动e手掌握
EE订阅号
热门资讯e网打尽
聚焦汽车电子软硬件开发
认真关注技术本身
个人签名

玩板看这里:

https://bbs.eeworld.com.cn/elecplay.html

EEWorld测评频道众多好板等你来玩,还可以来频道许愿树许愿说说你想要玩的板子,我们都在努力为大家实现!

 
 
 

回复

419

帖子

0

TA的资源

一粒金砂(高级)

沙发
 
MicroPython 是在ST的板子上跑一个Python的解释器?

点评

是的,挺好玩的,就是我对python还不熟,玩的比较low  详情 回复 发表于 2016-6-3 15:42
 
 
 

回复

1297

帖子

2

TA的资源

纯净的硅(中级)

板凳
 
woody_chen 发表于 2016-6-3 15:35
MicroPython 是在ST的板子上跑一个Python的解释器?

是的,挺好玩的,就是我对python还不熟,玩的比较low
 
 
 

回复

1万

帖子

25

TA的资源

版主

4
 
把staccel 也分享出来吧。

点评

压缩包里面翻出来的,hoho。不过贴上来吧,因为那个路径好像挺深的,懒得去翻了  详情 回复 发表于 2016-6-3 16:12
 
 
 

回复

1297

帖子

2

TA的资源

纯净的硅(中级)

5
 
dcexpert 发表于 2016-6-3 15:56
把staccel 也分享出来吧。

压缩包里面翻出来的,hoho。不过贴上来吧,因为那个路径好像挺深的,懒得去翻了
staccel.py (3.23 KB, 下载次数: 9)
 
 
 

回复

2721

帖子

0

TA的资源

纯净的硅(中级)

6
 
谢谢分享学习一下
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表