相關(guān)知識(shí)
**紅外計(jì)數(shù)測(cè)速傳感器:**一般由三部分組成:光的發(fā)射、光的接收及信號(hào)放大。輸入的電信號(hào)驅(qū)動(dòng)發(fā)光二極管(LED),使之發(fā)出一定波長(zhǎng)的光,被光探測(cè)器接收而產(chǎn)生光電流,再經(jīng)過進(jìn)一步放大后輸出。
其工作原理為通過對(duì)紅外發(fā)射光的阻斷和導(dǎo)通,在紅外接收管感應(yīng)出的電流變化來實(shí)現(xiàn)開和關(guān)的判斷。有遮擋,輸出高電平;無遮擋,輸出低電平。
TM1637四位數(shù)碼管模塊: 是一個(gè)12腳的帶時(shí)鐘點(diǎn)的4位共陽數(shù)碼管(0.36英寸)的顯示模塊,驅(qū)動(dòng)芯片為TM1637,只需2根信號(hào)線即可使單片機(jī)控制4位8段數(shù)碼管??梢悦馊ノ覀兦懊娣爆嵉慕泳€。
電路搭建
所需材料
ArduinoUno * 1
紅外計(jì)數(shù)測(cè)速傳感器 * 1
TM1637四位數(shù)碼管模塊 * 1
電路連接
紅外計(jì)數(shù)測(cè)速傳感器接線:
VCC------>Arduino的+5V
GND------>Arduino的GND
DO------>Arduino的信號(hào)端
TM1637四位數(shù)碼管模塊接線:
CLK------>Arduino的信號(hào)端
DIO----->Arduino的信號(hào)端
VCC------>Arduino的+5V
GND------>Arduino的GND
程序編寫
練習(xí)一:計(jì)數(shù)儲(chǔ)錢罐
使用紅外計(jì)數(shù)測(cè)速傳感器制作一個(gè)能夠計(jì)數(shù)的儲(chǔ)蓄罐。
圖形化****方式:
代碼方式:
在使用代碼編程之前,我們需要先添加TM1637四位數(shù)碼管模塊的庫文件。
點(diǎn)擊arduinoIDLE中的工具-->庫文件管理,在列表中選擇SevenSegmentTM1637進(jìn)行安裝。
/* 項(xiàng)目名稱:計(jì)數(shù)儲(chǔ)蓄罐
* 項(xiàng)目時(shí)間:2022.03.02
* 項(xiàng)目作者: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;
}
}
練習(xí)二:斷電保留計(jì)數(shù)的儲(chǔ)蓄罐
在練習(xí)一的基礎(chǔ)上,實(shí)現(xiàn)斷電后,能夠記住之前統(tǒng)計(jì)的數(shù)量。并在這個(gè)數(shù)量基礎(chǔ)上繼續(xù)計(jì)數(shù)。
圖形化方式:
代碼方式:
/* 項(xiàng)目名稱:斷電保留計(jì)數(shù)儲(chǔ)蓄罐
* 項(xiàng)目時(shí)間:2022.03.02
* 項(xiàng)目作者: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)知識(shí):
**EEPROM Get: **從EEPROM獲得一個(gè)值,表達(dá)式為EEPROM.get(address, a)
**EEPROM Put: **用變量來把一些數(shù)值放到EEPROM里,表達(dá)式為EEPROM.put(address, a)
**EEPROM Write: **保存對(duì)應(yīng)的值到EEPROM,表達(dá)式為EEPROM.write(address, a);
EEPROM Clear: 清除EEPROM的內(nèi)容,其實(shí)就是把EEPROM中每一個(gè)字節(jié)寫入0,表達(dá)式為EEPROM.write(address, 0);
EEPROM Read: 讀取EEPROM,表達(dá)式為EEPROM.read(address);
-
發(fā)光二極管
+關(guān)注
關(guān)注
13文章
1218瀏覽量
67675 -
EEPROM
+關(guān)注
關(guān)注
9文章
1086瀏覽量
83777 -
Arduino
+關(guān)注
關(guān)注
190文章
6498瀏覽量
192210 -
光探測(cè)器
+關(guān)注
關(guān)注
1文章
39瀏覽量
11045 -
TM1637
+關(guān)注
關(guān)注
0文章
21瀏覽量
9649
發(fā)布評(píng)論請(qǐng)先 登錄

53 51_實(shí)戰(zhàn)篇_EEPROM讀寫測(cè)試(第一講:EEPROM簡(jiǎn)介) - 第3節(jié)
arduino學(xué)習(xí)筆記30 - EEPROM讀寫實(shí)驗(yàn)
圖書《arduino程序設(shè)計(jì)基礎(chǔ)》
轉(zhuǎn):基礎(chǔ)篇32--STM32 .FLASH模擬EEPROM實(shí)驗(yàn)
Arduino開發(fā)實(shí)戰(zhàn)指南 AVR篇
Arduino控制器選型指南(一):Arduino官方篇
Arduino智能小車測(cè)試篇
基于Arduino設(shè)計(jì)EEPROM外部存儲(chǔ)器
怎樣使用Arduino EEPROM在重啟后保存數(shù)據(jù)
Arduino通訊篇

具有內(nèi)置512K EEPROM和時(shí)鐘(AC5EC)的Arduino克隆

用Arduino設(shè)計(jì)EEPROM外部存儲(chǔ)器PROGRAMMER/RECORDER

用Arduino和距離傳感器制作小雞賽車?。ǖ?篇)

評(píng)論