rzyzzxw 发表于 2018-10-6 16:32:42

【掌控】mpython-14…带上handpy走四方

走四方 路迢迢水长长 迷迷茫茫一村又一庄看斜阳 落下去又回来 地不老天不荒 岁月长又长走四方 路迢迢水长长 迷迷茫茫一村又一庄看斜阳 落下去又回来 地不老天不荒 岁月长又长做个简易计步器,带上handpy走四方。

其实ESP32可以实现很强大的功能的,可是我还在低水平上徘徊。
入门课程,入门哈。
希望我能够把掌控的神力打开。

【程序】
功能,走路计步。
按A键清0。

from machine import Pin #导入引脚库
from mpython import *   #此库为掌控板内置传感器驱动
import time   #导入时间库

#定义按钮引脚
BTNA = Pin(0, mode=Pin.OPEN_DRAIN, pull=Pin.PULL_UP, value=1)
BTNB = Pin(2, mode=Pin.OPEN_DRAIN, pull=Pin.PULL_UP, value=1)

#初始化读数变量
step = 0
#定义计步函数
def jibu():
    display.fill(0)#清屏,以清掉以前显示数据
    display.DispChar('diy 计步器', 32, 0)
    display.text("%d" % (step), 40, 32)
    display.show()#刷新显示屏
   
#x1 = accelerometer.get_x() #获取初始加速度数据   
y1 = accelerometer.get_y()
#z1 = accelerometer.get_z()

jibu()
while True:
    if BTNA.value() == 0 andBTNB.value() == 1 :#按下按钮A数据回0
      step = 0
      jibu()   
    #x2 = accelerometer.get_x() #获取第2个加速度值
    y2 = accelerometer.get_y()
    #z2 = accelerometer.get_z()
    if abs(y1 - y2) > 0.5:
      #abs(x1 - x2) > 0.5 or abs(y1 - y2) > 0.5 or abs(z1 - z2) > 0.5:
      #y轴的分时差值超过0.5,则认为检测到走动
      step = step + 1#步数加1
      jibu()
      y1 = y2          #将y2数据存入y1
    time.sleep_ms(400)   #延时和个人行走步速有关,请根据个人情况调整

后面将尝试掌控的蓝牙及物联网功能。{:5_132:}
虽是入门,也要有进阶不是吗。

germanpan 发表于 2018-10-6 23:19:31

学习了,支持支持:O

digi_cow 发表于 2018-10-8 08:56:14

这是一拨可谓掌控“开天辟地”系列教程!

rzyzzxw 发表于 2018-10-8 10:05:45

digi_cow 发表于 2018-10-8 08:56
这是一拨可谓掌控“开天辟地”系列教程!

哈哈,早拿到试用板而已。
这是一块属于大家的板子,期待后面的图形化软件出来,小朋友也能玩起来。{:5_149:}

rzyzzxw 发表于 2018-12-28 21:26:46

from mpython import *   #此库为掌控板内置传感器驱动
import time   #导入时间库

#初始化读数变量
step = 0
#定义计步函数
def jibu():
    oled .fill(0)#清屏,以清掉以前显示数据
    oled.DispChar('diy 计步器', 32, 0)
    oled.text("%d" % (step), 40, 32)
    oled.show()#刷新显示屏
   
x1 = accelerometer.get_x() #获取初始加速度数据   
y1 = accelerometer.get_y()
z1 = accelerometer.get_z()

jibu()
while True:
    x2 = accelerometer.get_x() #获取第2个加速度值
    y2 = accelerometer.get_y()
    z2 = accelerometer.get_z()
    if abs(x1 - x2) > 0.5 or abs(y1 - y2) > 0.5 or abs(z1 - z2) > 0.5:
      #x or y or z轴的分时差值超过0.5,则认为检测到走动
      step = step + 1#步数加1
      jibu()
      x1 = x2          #将x2数据存入x1
      y1 = y2
      z1 = z2
    time.sleep_ms(500)   #延时和个人行走步速有关,请根据个人情况调整
页: [1]
查看完整版本: 【掌控】mpython-14…带上handpy走四方