28、树莓派传感器应用全解析

树莓派传感器应用全解析

1. MMA8452Q模块测量加速度

若要将三轴加速度计连接到树莓派,可以使用I2C加速度计芯片来测量X、Y和Z轴的模拟输出。
- 所需材料
- 面包板
- 四根母对母跳线
- MMA8452Q三轴加速度计

在树莓派上启用I2C(若未启用,请按相关步骤操作)。示例代码如下(文件名为ch_14_i2c_acc.py):

import smbus
import time
bus = smbus.SMBus(1)
i2c_address = 0x1D
control_reg = 0x2A
bus.write_byte_data(i2c_address, control_reg, 0x01) # Start
bus.write_byte_data(i2c_address, 0x0E, 0x00) # 2g range
time.sleep(0.5)
def read_acc():
    data = bus.read_i2c_block_data(i2c_address, 0x00, 7)
    x = (data[1] * 256 + data[2]) / 16
    if x > 2047 :
        x -= 4096
    y = (data[3] * 256 + data[4]) / 16
    if y > 2047 :
        y -= 4096
    z = (data[5] * 256 + data[6]) / 16
    if z > 2047 :
   
代码转载自:https://pan.quark.cn/s/b6a8363717f8 最近看到京东,淘宝都有RecyclerView嵌套ViewPager嵌套RecyclerView商品展示的效果,效果挺好,废话不多说先看效果图: GIF.gif 技能点: Android事件分发机制等 需求点: Tab需要吸顶 ViewPager可以点击和滑动切换 最近在淘宝京东看到类似的效果,有时间就写了一下,效果实现了,但是感觉解决问题的思路和代码有很多瑕疵,写出来抛砖引玉,希望大佬们不吝赐教,写的不好不喜勿喷! 下面进入正题,先看下布局结构:screen.png 就是标题所说的布局结构 RecyclerView+ViewPager+RecyclerView` 很多同学看到这里肯定想到要处理滑动冲突,没错,我们简单分析一下好撸代码(虽然是撸好的代码) 横向滑动 横向滑动很简单,RecyclerView不需要处理,ViewPager处理 -- 纵向滑动 纵向滑动就稍微复杂点,本文的解决滑动冲突主要就就是解决外层RecyclerView以及内层RecyclerView的滑动冲突,仔细看下交互效果,不难发现我们需要用Tab是否吸顶作为判断的节点来将滑动事件交给外层或内层RecyclerView处理. 即: 1.Tab未吸顶时外层RecyclerView处理滑动事件,2.Tab吸顶时内层RecyclerView处理滑动事件. 大概就是这样,思路很清晰,这里先提几个接下来遇到的问题: RecyclerView嵌套ViewPager时ViewPager的高度为0 Tab吸顶之后切换ViewPager时候,吸顶的Tab会覆盖掉一部分内层RecyclerView的内容,让人感觉不是从第一条...
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值