版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
創(chuàng)意時鐘(二)(導(dǎo)學(xué)案)一、引入(5分鐘)同學(xué)們好,今天我們要繼續(xù)學(xué)習(xí)有關(guān)“創(chuàng)意時鐘”的內(nèi)容。在上一節(jié)課中,我們已經(jīng)學(xué)會了如何制作一款簡單的時鐘。今天,我們要更進一步,學(xué)習(xí)如何讓時鐘變得更加具有創(chuàng)意。二、知識點講解(30分鐘)在上一節(jié)課中,我們使用了光敏電阻作為感應(yīng)器,但是這種感應(yīng)器不能夠像人類一樣,具有某些特定的功能。因此,在今天這節(jié)課中,我們將會學(xué)習(xí)到如何使用其他的感應(yīng)器和元件來為我們的時鐘增加更多的功能。1.溫度傳感器溫度傳感器是測量周圍溫度的元件,它可以在我們的時鐘上,增加一個溫度顯示功能。當周圍溫度發(fā)生變化時,時鐘上的數(shù)字也會相應(yīng)發(fā)生變化。我們可以利用這個功能,制作一款可以告訴我們當前溫度的智能時鐘。2.紅外遙控器紅外遙控器可以在遠離時鐘的位置,控制時鐘的運行狀態(tài)。我們可以利用這個功能,制作一款通過遙控器控制開關(guān)和調(diào)整時間的智能時鐘。3.蜂鳴器蜂鳴器是一種可以發(fā)出聲音的元件,可以用來做為報警器或者提示器使用。我們可以利用這個功能,在時鐘上增加一個報警系統(tǒng),當時鐘顯示特定的時間時,會發(fā)出聲音來提醒我們。三、實踐操作(50分鐘)現(xiàn)在,讓我們來實際操作一下,將上面所學(xué)的知識應(yīng)用到時鐘的制作中。1.準備材料我們需要準備以下材料:Arduino電路板LED數(shù)碼管鍵盤溫度傳感器紅外遙控器蜂鳴器面包板連接線2.將材料連接起來我們需要將上面所準備的材料,利用連接線和面包板連接起來。具體連接方法如下:LED數(shù)碼管連接到Arduino電路板上。溫度傳感器連接到Arduino電路板上。紅外遙控器連接到Arduino電路板上。蜂鳴器連接到Arduino電路板上。3.編寫代碼接下來,我們需要在計算機中編寫代碼,實現(xiàn)我們的時鐘的各種功能。具體代碼如下:#include<IRremote.h>
intRECV_PIN=11;
IRrecvirrecv(RECV_PIN);
decode_resultsresults;
intkeypadPin=A0;
intpressCount=0;
intalarmHour=7;
intalarmMinute=15;
intalarmActive=0;
inttemperature=0;
intcounter=0;
intdigits[4]={0,0,0,0};
intsegMap[10]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};
voidsetup(){
irrecv.enableIRIn();
pinMode(keypadPin,INPUT);
pinMode(12,OUTPUT);
pinMode(13,OUTPUT);
pinMode(2,INPUT);
pinMode(3,INPUT);
pinMode(4,INPUT);
pinMode(5,INPUT);
pinMode(6,INPUT);
pinMode(7,INPUT);
pinMode(8,INPUT);
pinMode(9,INPUT);
pinMode(10,INPUT);
Serial.begin(9600);
}
voidloop(){
if(irrecv.decode(&results)){
switch(results.value){
case0xE0E09669:{
if(alarmActive==0){
alarmActive=1;
digitalWrite(13,HIGH);
}else{
alarmActive=0;
digitalWrite(13,LOW);
}
break;
}
case0xE0E006F9:{
alarmHour++;
if(alarmHour>23){alarmHour=0;}
break;
}
case0xE0E08679:{
alarmMinute++;
if(alarmMinute>59){alarmMinute=0;}
break;
}
}
irrecv.resume();
}
intkeyVal=analogRead(keypadPin);
if(keyVal!=1023){
delay(10);
if(analogRead(keypadPin)==keyVal){
if(pressCount==0){
pressCount=1;
digits[0]=map(keyVal,0,1023,0,9);
digitalWrite(12,HIGH);
}
elseif(pressCount==1){
pressCount=2;
digits[1]=map(keyVal,0,1023,0,9);
digitalWrite(12,HIGH);
}
elseif(pressCount==2){
pressCount=3;
digits[2]=map(keyVal,0,1023,0,9);
digitalWrite(12,HIGH);
}
elseif(pressCount==3){
pressCount=0;
digits[3]=map(keyVal,0,1023,0,9);
digitalWrite(12,LOW);
}
}
}
if(!digitalRead(2)){digits[0]++;}
if(!digitalRead(3)){digits[0]--;}
if(!digitalRead(4)){digits[1]++;}
if(!digitalRead(5)){digits[1]--;}
if(!digitalRead(6)){digits[2]++;}
if(!digitalRead(7)){digits[2]--;}
if(!digitalRead(8)){digits[3]++;}
if(!digitalRead(9)){digits[3]--;}
if(digits[3]>9){digits[2]++;digits[3]=0;}
if(digits[2]>9){digits[1]++;digits[2]=0;}
if(digits[1]>9){digits[0]++;digits[1]=0;}
if(digits[0]>9){digits[0]=0;}
if(digits[3]<0){digits[2]--;digits[3]=9;}
if(digits[2]<0){digits[1]--;digits[2]=9;}
if(digits[1]<0){digits[0]--;digits[1]=9;}
if(digits[0]<0){digits[0]=9;}
digitalWrite(10,HIGH);
digitalWrite(11,LOW);
for(inti=3;i>=0;i--){
digitalWrite(10-i,segMap[digits[i]]);
delay(5);
}
digitalWrite(11,HIGH);
digitalWrite(10,LOW);
delay(50);
if(counter==10){
temperature=(analogRead(A1)*0.48875700878477367)-50;
Serial.println(temperature);
counter=0;
}
counter++;
delay(850);
if(temperature>30&&alarmActive==1){
tone(2,800,500);
delay(500);
}
if(digitalRead(A2)==HIGH){
alarmActive=0;
digitalWrite(13,LOW);
}
}這段代碼是一個比較完整的時鐘程序,其中包含了溫度傳感器、紅外遙控器和蜂鳴器的功能。其中,數(shù)字時鐘的部分,我們已經(jīng)在上一節(jié)課中學(xué)習(xí)過,這里不再贅述。4.調(diào)試在程序編寫完
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度個人二手房買賣合同履約保證金合同4篇
- 2025年度影視后期制作個人勞務(wù)合同范本4篇
- 2025年度個人公司股權(quán)代持變更合同3篇
- 2025年度農(nóng)業(yè)科技推廣個人勞務(wù)合同規(guī)范文本4篇
- 二零二五版智能門禁系統(tǒng)售后服務(wù)與技術(shù)培訓(xùn)合同4篇
- 建筑物資采購分包合同(2篇)
- 工廠二手設(shè)備拆除合同(2篇)
- 二零二五版米面糧油企業(yè)內(nèi)部培訓(xùn)與咨詢服務(wù)采購合同4篇
- 電梯鋼絲繩施工方案
- 畢業(yè)設(shè)計成果呈現(xiàn)模板
- TD/T 1060-2021 自然資源分等定級通則(正式版)
- 人教版二年級下冊口算題大全1000道可打印帶答案
- 《創(chuàng)傷失血性休克中國急診專家共識(2023)》解讀
- 倉庫智能化建設(shè)方案
- 海外市場開拓計劃
- 2024年度國家社會科學(xué)基金項目課題指南
- 供應(yīng)鏈組織架構(gòu)與職能設(shè)置
- 幼兒數(shù)學(xué)益智圖形連線題100題(含完整答案)
- 2024年九省聯(lián)考新高考 數(shù)學(xué)試卷(含答案解析)
- 紅色歷史研學(xué)旅行課程設(shè)計
- 如何避免護理患者投訴
評論
0/150
提交評論