2位数码管秒表c语言程序,实例19---开机次数记录仪 实例20---秒表计时器(4位数码管)...

本文介绍了两个Arduino实验,一个是开机次数记录仪,利用I2C总线控制4位数码管显示每次开机的次数,并通过EEPROM存储数据;另一个是秒表计时器,数码管每秒自动加1显示时间。实验涉及图形化编程、硬件连接及程序上传,同时提出了在设备启动时添加提示音的思考题。
摘要由CSDN通过智能技术生成

实例19---开机次数记录仪

功能:通过I2C总线,控制4位数码管显示,开机次数,即每按一次RES复位键后,数码管显示自动加1。

硬件: Arduino开发板、1个四位数码管。

四位数码管工作原理:

482a8183598d104da9df764f1b92673a.png

I2C总线工作原理:I  two   c

总线(4根线=数据线+时钟线+正极+负极)

7a4ba387e59d9ec77168f812833d2b84.png

4647433752837a33390a1cfb9e78cb66.png

49a1359b9b232e684841c68c5dafde4e.png

ba4a97be5a9970c8f7ea8ab6c40adaca.png

软件:米思齐软件

实验步骤:

一、 通过米思齐软件,图形化编程如下:

85cfc7ffe0149b63eef8beed8a10b640.png

如果开机次数清零,则将记取EEPROM地址改为8,上传程序,之后再修改为0,重新上传程序。

2、程序代码如下:

#include     定义总线头文件

#include "Mixly.h"    定义米思齐头文件

#include    定义存储器头文件

volatile byte times;    定义times变量

TM1650 tm_4display;    定义4位数码管变量

void setup()

{

times = 0;   初始化变量times为0

Wire.begin();    总线准备

tm_4display.init();   初始化数码管

tm_4display.clear();   清空数码管

times =

EEPROM.read(0);        存储次数赋值给times变量

tm_4display.displayString(String("")+times);     输出显示数码管

times = times +

1;     存储次数加1

EEPROM.write(0,

times);       times写入存储单元中

}

void loop()

{}

3、硬件连接

将USB口连接到开发板上

将四位数码管连接到i2C总线处。

4、编译、上传程序设置

5、查看运行结果。

二、硬件连接设置

三、程序下载和运行测试

四、思考题

开机时,加入提示音?

实例20---秒表计时器(4位数码管)

功能:通过I2C总线,控制4位数码管显示,秒表功能,数码管每1秒钟,显示自动加1。

硬件: Arduino开发板、1个四位数码管。

软件:米思齐软件

实验步骤:

二、 通过米思齐软件,图形化编程如下:

cbff4707cab86489ed264f1061ed2ec0.png

显示,文本,控制,数学

2、程序代码如下:

#include #include "Mixly.h"TM1650 tm_4display;void

setup(){  Wire.begin();  tm_4display.init();  tm_4display.clear();}void

loop()

{  tm_4display.displayString(String("")+(millis() /

1000));

}

3、硬件连接

将USB口连接到开发板上

将四位数码管连接到i2C总线处。

4、编译、上传程序设置

5、查看运行结果。

二、硬件连接设置

三、程序下载和运行测试

四、思考题

计时,加入提示音?

--end--

声明:本文章由网友投稿作为教育分享用途,如有侵权原作者可通过邮件及时和我们联系删除:freemanzk@qq.com

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值