相關(guān)知識
**紅外計數(shù)測速傳感器:**一般由三部分組成:光的發(fā)射、光的接收及信號放大。輸入的電信號驅(qū)動發(fā)光二極管(LED),使之發(fā)出一定波長的光,被光探測器接收而產(chǎn)生光電流,再經(jīng)過進一步放大后輸出。
其工作原理為通過對紅外發(fā)射光的阻斷和導通,在紅外接收管感應出的電流變化來實現(xiàn)開和關(guān)的判斷。有遮擋,輸出高電平;無遮擋,輸出低電平。
TM1637四位數(shù)碼管模塊: 是一個12腳的帶時鐘點的4位共陽數(shù)碼管(0.36英寸)的顯示模塊,驅(qū)動芯片為TM1637,只需2根信號線即可使單片機控制4位8段數(shù)碼管。可以免去我們前面繁瑣的接線。

電路搭建
所需材料
ArduinoUno * 1
紅外計數(shù)測速傳感器 * 1
TM1637四位數(shù)碼管模塊 * 1
電路連接
紅外計數(shù)測速傳感器接線:
VCC------>Arduino的+5V
GND------>Arduino的GND
DO------>Arduino的信號端
TM1637四位數(shù)碼管模塊接線:
CLK------>Arduino的信號端
DIO----->Arduino的信號端
VCC------>Arduino的+5V
GND------>Arduino的GND
程序編寫
練習一:計數(shù)儲錢罐
使用紅外計數(shù)測速傳感器制作一個能夠計數(shù)的儲蓄罐。
圖形化****方式:

代碼方式:
在使用代碼編程之前,我們需要先添加TM1637四位數(shù)碼管模塊的庫文件。
點擊arduinoIDLE中的工具-->庫文件管理,在列表中選擇SevenSegmentTM1637進行安裝。

/* 項目名稱:計數(shù)儲蓄罐
* 項目時間:2022.03.02
* 項目作者:MRX
*/
#include < SevenSegmentTM1637.h >
int count = 0;
int sensor_Pin = 6;
SevenSegmentTM1637 display(2,3);
void setup(){
count = 0;
display.begin();
display.setBacklight(20);
display.clear();
pinMode(sensor_Pin, INPUT);
}
void loop(){
display.print(count);
if (digitalRead(sensor_Pin)) {
delay(1000);
count = count + 1;
}
}
練習二:斷電保留計數(shù)的儲蓄罐
在練習一的基礎(chǔ)上,實現(xiàn)斷電后,能夠記住之前統(tǒng)計的數(shù)量。并在這個數(shù)量基礎(chǔ)上繼續(xù)計數(shù)。
圖形化方式:

代碼方式:
/* 項目名稱:斷電保留計數(shù)儲蓄罐
* 項目時間:2022.03.02
* 項目作者:MRX
*/
#include < SevenSegmentTM1637.h >
#include < EEPROM.h >
int count = 0;
int sensor_Pin = 6;
SevenSegmentTM1637 display(2,3);
void setup(){
count = 0;
display.begin();
display.setBacklight(20);
display.clear();
EEPROM.get(0, count);
pinMode(sensor_Pin, INPUT);
}
void loop(){
display.print(count);
if (digitalRead(sensor_Pin)) {
delay(1000);
count = count + 1;
EEPROM.put(0, count);
}
}
相關(guān)知識:
**EEPROM Get: **從EEPROM獲得一個值,表達式為EEPROM.get(address, a)
**EEPROM Put: **用變量來把一些數(shù)值放到EEPROM里,表達式為EEPROM.put(address, a)
**EEPROM Write: **保存對應的值到EEPROM,表達式為EEPROM.write(address, a);
EEPROM Clear: 清除EEPROM的內(nèi)容,其實就是把EEPROM中每一個字節(jié)寫入0,表達式為EEPROM.write(address, 0);
EEPROM Read: 讀取EEPROM,表達式為EEPROM.read(address);
-
發(fā)光二極管
+關(guān)注
關(guān)注
14文章
1247瀏覽量
69164 -
EEPROM
+關(guān)注
關(guān)注
9文章
1138瀏覽量
86070 -
Arduino
+關(guān)注
關(guān)注
190文章
6526瀏覽量
196997 -
光探測器
+關(guān)注
關(guān)注
1文章
39瀏覽量
11149 -
TM1637
+關(guān)注
關(guān)注
0文章
21瀏覽量
9829
發(fā)布評論請先 登錄
arduino學習筆記30 - EEPROM讀寫實驗
圖書《arduino程序設(shè)計基礎(chǔ)》
轉(zhuǎn):基礎(chǔ)篇32--STM32 .FLASH模擬EEPROM實驗
Arduino開發(fā)實戰(zhàn)指南 AVR篇
Arduino控制器選型指南(一):Arduino官方篇
Arduino智能小車測試篇
基于Arduino設(shè)計EEPROM外部存儲器
怎樣使用Arduino EEPROM在重啟后保存數(shù)據(jù)
Arduino通訊篇
具有內(nèi)置512K EEPROM和時鐘(AC5EC)的Arduino克隆
用Arduino設(shè)計EEPROM外部存儲器PROGRAMMER/RECORDER
Arduino篇—EEPROM的應用
評論