概述
做一个电子秒表,可以精确计时,一个触摸传感器控制计时开始,另一个触摸传感器控制计时器停止,同时把时间显示在OLED屏幕上。
适合套件:mCookie302
模块清单
模块
其他设备
- USB数据线*1
- 传感器连接线*2
- 传感器外壳
- 乐高或其它固定结构
模块搭建
搭建
- 将模块和传感器组装起来:
- 将红色的核心模块,电池底座、OLED与绿色的扩展模块吸在一起;
- 将触摸传感器连接在Hub的6/7、4/5管脚。
- 将USB连接线一端插入电池底座,另一端连接电脑;
编程
使用的程序块
编程思路
开始键按下计时开始,停止键按下前重复执行计算时间、显示程序,停止键按下后停止计时,屏幕上保留当前时间。
开始编程
声明变量,等待触摸按下,开始计时
s变量储存用来显示的秒数(小数格式)。
s_timer变量存储从定时器读到的毫秒数(整数格式)。
等待“开始”键按下。
计时器timer1开始计时。
判断4号触摸松开情况下重复执行
当“停止”键按下前一直重复执行。
将timer1的时间存入s_timer。
s_timer除以10(去掉最后一位数,也就是千分秒位)。
将s_timer存入s。
s除以100(将十分秒和百分秒位移到小数点右边)。
以“s:秒数”的格式显示到OLED。
测试结果
上传成功后,按下6管脚的触摸传感器计时开始,可以看到OLED屏幕上时间在变化;再按下4管脚的触摸传感器计时结束,时间不再变化;再次按下6管脚的触摸传感器重新开始计时。
Q:如何把电子秒表中的数据清零?
A:在计时结束后,将存储时间的变量赋值为0就可以啦。
在所有程序后面添加。
等待“清零”键按下(计时停止之后,开始键也作为清零键使用)。
等待“清零”键松开。
s的值设为0。
在OLED上显示清零后的秒数。
技术规范
相关案例
Q&A
|