micropython 进阶小实验 如何用单片机制作鞋码匹配仪
2019独角兽企业重金招聘Python工程师标准>>>
非常简单的小制作,适合新手以及初学者 入门学习,也请各位大神多多指点。自己测了下稍微有些偏差,显示鞋码比我实际鞋码大了一号,各位大大有没有意见我改正下。下面是具体的制作过程和代码。
1.原理
鞋码匹配仪,利用超声波测距的原理。通过使用超声波遇到障碍返回的特性,计算超声波放出与返回的时间计算来测定障碍与超声波模块的距离。
鞋码匹配仪的固有大小已知,在脚放入时,大小会发生改变 使用已知距离对改变后的距离做差获得脚的尺寸,再通过尺寸与距离的转换得到正确的鞋码(此处使用标准鞋码)。
2. 所需元器件(某宝能买到 挺便宜的)
· 超声波模块 1个
· TPYBoard v102板子 1块
· 四位数码管 1个
· micro USB数据线 1条
· 杜邦线 若干
3. 超声波模块工作原理
(1)采用IO口TRIG触发测距,给最少10us的高电平信号。
(2)模块自动发送 8 个 40khz 的方波,自动检测是否有信号返回。
(3)有信号返回,通过 IO 口 ECHO 输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间。测试距离=(高电平时间*声速(340M/S))/2。
如下图接线,VCC 供 5V电源, GND 为地线,TRIG 触发控制信号输入,ECHO 回响信号输出等四个接口端。
4. 控制四位数码管显示数字
(1)1、2、3、4是“位选”针脚,用于控制具体哪一位显示。
(2)a、b、c、d、e、f、g、dp(h)是“段选”针脚,用法和1位数码管一致,用来显示具体的数值。
数码管(位选) |
TPYBoard v10x开发板 |
1 |
X3 |
2 |
X4 |
3 |
X5 |
4 |
GND(鞋码匹配用不到四位所以该脚拉低) |
数码管(段选) |
TPYBoard v10x开发板 |
a |
X6 |
b |
X7 |
c |
X8 |
d |
Y9 |
e |
Y10 |
f |
Y11 |
g |
Y12 |
dp(h) |
留空(此脚为小数点的控制脚悬空即可) |
5. 接线图
6. 源代码
import pyb
from pyb import Pin
from pyb import Timer
from machine import SPI,Pin
Trig = Pin('X2',Pin.OUT_PP)
Echo = Pin('X1',Pin.IN)
num=0
flag=0
run=1
def start(t):
global flag
global num
if(flag==0):
num=0
else:
num=num+1
def stop(t):
global run
if(run==0):
run=1
start1=Timer(1,freq=10000,callback=start)
stop1=Timer(4,freq=2,callback=stop)
sizecc = [35,36,37,38,39,40,41,42,43,44,45,46,47]#280-47 -5
while True:
if(run==1):
Trig.value(1)
pyb.udelay(100)
Trig.value(0)
while(Echo.value()==0):
Trig.value(1)
pyb.udelay(100)
Trig.value(0)
flag=0
if(Echo.value()==1):
flag=1
while(Echo.value()==1):
flag=1
if(num!=0):
#print('num:',num)
distance=num/1000*34000/2
print('Distance')
print(distance,'mm')
cc = (int)((distance-215)/5)
if cc<0:
cc=0
elif cc>12:
cc=12
print(sizecc[cc],'cc')
flag=0
run=0
转载于:https://my.oschina.net/micropython/blog/1601511
micropython 进阶小实验 如何用单片机制作鞋码匹配仪相关推荐
- Micropython进阶小实验 如何用单片机制作鞋码匹配仪
非常简单的小制作,适合新手以及初学者 入门学习,也请各位大神多多指点.自己测了下稍微有些偏差,显示鞋码比我实际鞋码大了一号,各位大大有没有意见我改正下.下面是具体的制作过程和代码. 1.原理 鞋码匹配 ...
- micropython大小_Micropython进阶 | 如何用单片机制作鞋码匹配仪
原标题:Micropython进阶 | 如何用单片机制作鞋码匹配仪 非常简单的小制作,适合新手以及初学者 入门学习,也请各位大神多多指点.自己测了下稍微有些偏差,显示鞋码比我实际鞋码大了一号,各位大大 ...
- 创意小发明:单片机制作电容电阻测量仪 (含C语言原源码,仿真文件与实物图)
应一个读者的要求,用单片机单片机制作电容电阻测量仪 课题 电路元件参数RC测量电路的设计 设计要求: 测量仪的工作原理为:利用振荡电路,将电阻.电容的测量转变为与之成一定函数关系频率的测量,再利用单片 ...
- 【小实验】C51单片机 DS18B20温度显示实验
实验内容: 利用单总线技术和数码管动态显示的原理,要求实现DS18B20温度采集并显示,能够设定温度值上限值27.5度,当超出上限值LED灯闪烁. 实验前可先用protues绘制出原理图: 仿真图如 ...
- 如何用python制作动态二维码,提升表白成功率?
来源:凹凸数据 本文约1000字,建议阅读5分钟. 本文教你用python制作动态二维码,助你表白成功! 关注数据派THU(DatapiTHU)后台回复"20200520"获取完整 ...
- 如何制作python检查小软件_如何用Python制作整蛊小程序
原标题:如何用Python制作整蛊小程序 下面的整蛊程序,千万不要发代码,否则就实现不了你整蛊的目的了.完成后一定要打包成一个exe程序,再发给朋友使用 . 1. 使用 pip install pyi ...
- 单片机能做什么创意小发明?新手怎么制作单片机智能小车?
曾经,有一个老板跟我说,很羡慕我们这些做技术的. 我们都感觉有点讽刺,一个身价上千万的人,羡慕我们这些年收入不到20万的. 不过从他的说话方式来看,似乎是认真的,他说他也喜欢研究技术,只是年纪大了,学 ...
- 教你如何用python制作平面直角坐标系模拟器 python项目小发明 【安安教具】-【数学】-【平面直角坐标系】模拟器
平面直角坐标系和之前的数轴模拟器有异曲同工之妙,但是作为一个二维的软件,肯定是要难一些的... [安安教具]-[数学]-[数轴]模拟器 教你如何用python制作数轴模拟器 python 小项目创作_ ...
- 教你如何用python制作黑板模拟器 python 项目小发明 【安安教具】-【工具】-【黑板】模拟器
黑板模拟器是一个多线程控制尝试,需要做到通过tkinter实现对鼠标的控制和监督.鼠标在移动时会有一个线程来检测鼠标的位置,计算窗口的位置,计算出鼠标在窗口中的位置,结合canvas画布实现对黑板的涂 ...
最新文章
- SharePoint Foundation和SharePoint Server的区别
- 文巾解题 181. 超过经理收入的员工
- 解决方案:IndentationError: unindent does not match any outer indentation level
- MySQL 忘记Root密码
- 解决LINQ to Entities does not recognize the method 'System.String Encrypt(System.String)' method, and
- 线性回归之最小二乘法——收藏
- 190808每日一句
- python pop3_Python POP3 收取邮件
- 【爬虫】获取新郑机场出租车实时数据
- python如何修改图片透明度_如何改变图像的不透明度
- 死链接处理,seo站长必会
- Android媒体库你了解多少
- strtok函数详解
- 网站横幅切换jquery 插件
- 質量機能展開(QFD)的使用及注意事項簡析
- Windows10常用功能一键设置优化工具分享
- matlab匿名函数如何写,matlab的匿名函数
- 过完双11,我去闲鱼当二道贩子
- 微信小程序使用VANT filed 组件 input框内文字省略
- 标段(包)分类 字典sql