HaaS Python硬件积木4路触摸电容模块-TTP224

Posted HaaS技术社区

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HaaS Python硬件积木4路触摸电容模块-TTP224相关的知识,希望对你有一定的参考价值。

来这里发现更多拿来即用的传感器

HaaS开发框架HaaS积木方案,赋能生态开发者,让您快速找到自己需要的解决方案,硬件主板与外设,以及各种应用组件。https://haas.iot.aliyun.com/solution/hardware

一、产品简介

板载TTP224电容式4键触摸感应IC,开发者通过触摸该电容模块获取对应的高低电平状态,可以广泛应用于灯光控制、玩具、家用电器等产品中。

引脚定义:

  • VCC:接 3.3V
  • GND:接 GND
  • OUT1:接 GPIO
  • OUT2:接 GPIO
  • OUT3:接 GPIO
  • OUT4:接 GPIO

二、技术参数

  • 工作电压:2.3V-5.5V DC
  • TTP224电流(3V):2.5uA-9.0uA
  • 板载4路电平状态指示灯
  • 模式:设置输出模式、键输出模式、上限输出时间和快速/低功耗选择
  • 规格尺寸:35mm * 29mm

三、软件接口

4路触摸电容模块HaaS Python驱动:下载地址

TTP224(ttp01Obj,ttp02Obj,ttp03Obj,ttp04Obj) - 创建TTP224驱动对象

  • 函数原型:

ttp224Obj = TTP224(ttp01Obj,ttp02Obj,ttp03Obj,ttp04Obj)

  • 参数说明:
参数类型必选参数?说明
ttp01ObjGPIO
ttp02ObjGPIO
ttp03ObjGPIO
ttp04ObjGPIO
  • 返回值: TTP224对象创建成功,返回TTP224对象;TTP224对象创建失败,抛出Exception
  • 示例代码:
import ttp224
from driver import GPIO
ttp01Dev = GPIO()
ttp01Dev.open("ttp01")
ttp02Dev = GPIO()
ttp02Dev.open("ttp02")
ttp03Dev = GPIO()
ttp03Dev.open("ttp03")
ttp04Dev = GPIO()
ttp04Dev.open("ttp04")
ttp = ttp224.TTP224(ttp01Dev,None,ttp03Dev)
print("ttp224 inited!")
  • 输出:
ttp224 inited!

getStatus() - 获取TTP224的电容触摸状态值

  • 函数功能: 获取TTP224的电容触摸状态值
  • 函数原型:

TTP224.getStatus()

  • 参数说明: 无
  • 返回值:
返回值类型说明
cntobj整型返回创建了几路TTP对象,0-没有创建对象
ttp01整型None-该路未创建,0-未触摸,1-触摸
ttp02整型None-该路未创建,0-未触摸,1-触摸
ttp03整型None-该路未创建,0-未触摸,1-触摸
ttp04整型None-该路未创建,0-未触摸,1-触摸
  • 示例:
import ttp224
from driver import GPIO
import utime
ttp01Dev = GPIO()
ttp01Dev.open("ttp01")
ttp02Dev = GPIO()
ttp02Dev.open("ttp02")
ttp03Dev = GPIO()
ttp03Dev.open("ttp03")
ttp04Dev = GPIO()
ttp04Dev.open("ttp04")
ttp = ttp224.TTP224(ttp01Dev,None,ttp03Dev)
print("ttp224 Init!")
while True:             # 无限循环
    cnt,ttp01,ttp02,ttp03,ttp04 = ttp.getStatus()
    print(cnt,ttp01,ttp02,ttp03,ttp04)
    utime.sleep(1)
  • 输出:
ttp224 Init!
2 0 None 0 None
2 0 None 0 None
2 0 None 0 None
2 0 None 0 None
2 0 None 0 None
2 1 None 0 None
2 1 None 0 None
2 0 None 0 None
2 0 None 1 None
2 1 None 1 None
2 0 None 0 None
2 0 None 0 None
2 0 None 0 None

四、接口案例

此使用实例在board.json中定义了名为tTTP224的I2C类型的对象。在Python脚本中周期性的获取TTP224各路触摸电容的状态并打印在日志中。

  • 代码:
# board.json配置:

    "name": "board-name",
    "version": "1.0.0",
    "io": 
      "ttp01": 
        "type": "GPIO",
        "port": 2,
        "dir": "input",
        "pull": "pullup"
      ,
      "ttp02": 
        "type": "GPIO",
        "port": 12,
        "dir": "input",
        "pull": "pullup"
      ,
      "ttp03": 
        "type": "GPIO",
        "port": 13,
        "dir": "input",
        "pull": "pullup"
      ,
      "ttp04": 
        "type": "GPIO",
        "port": 14,
        "dir": "input",
        "pull": "pullup"
      
    ,
    "debugLevel": "ERROR",
    "repl": "disable"
# Python代码
import ttp224
from driver import GPIO
import utime
ttp01Dev = GPIO()
ttp01Dev.open("ttp01")
ttp02Dev = GPIO()
ttp02Dev.open("ttp02")
ttp03Dev = GPIO()
ttp03Dev.open("ttp03")
ttp04Dev = GPIO()
ttp04Dev.open("ttp04")
ttp = ttp224.TTP224(ttp01Dev,ttp02Dev,ttp03Dev,ttp04Dev)
print("ttp224 Init!")
while True:             # 无限循环
    cnt,ttp01,ttp02,ttp03,ttp04 = ttp.getStatus()
    print(cnt,ttp01,ttp02,ttp03,ttp04)
    utime.sleep(1)
  • 输出:
ttp224 Init!
4 0 0 0 0
4 0 0 0 0
4 0 0 0 0
4 0 0 0 0
4 1 0 0 0
4 1 1 0 0
4 0 0 1 0

 

以上是关于HaaS Python硬件积木4路触摸电容模块-TTP224的主要内容,如果未能解决你的问题,请参考以下文章

HaaS Python硬件积木空气质量检测模块 - CCS811

HaaS Python硬件积木AS608指纹识别模块 打造指纹门禁 开门有手就行

HaaS Python硬件积木土壤湿度传感器

HaaS Python硬件积木土壤湿度传感器

HaaS Python 硬件积木 BMP280气压传感器

HaaS Python硬件积木ULN2003A步进电机驱动