康留元
教學(xué)背景
無人駕駛、智能車機(jī)甚至飛行汽車,那些曾經(jīng)只存在于科幻中的東西,如今正在逐步走進(jìn)我們的日常生活??萍嫉倪M(jìn)步,使得人們的生活質(zhì)量日益提高,汽車鑰匙也發(fā)生了變革,從機(jī)械鑰匙、云服務(wù)App遠(yuǎn)程操控到手機(jī)藍(lán)牙鑰匙,再到現(xiàn)在的手機(jī)NFC鑰匙,科技為我們的生活帶來了便利。本節(jié)課我們就利用NFC近場(chǎng)通信模塊,制作一把神奇的NFC車鑰匙,實(shí)現(xiàn)對(duì)麥昆小車的啟動(dòng)和停止。
教學(xué)目標(biāo)
學(xué)習(xí)如何使用NFC近場(chǎng)通信模塊;熟悉使用程序中變量創(chuàng)建、調(diào)用的方法;掌握數(shù)學(xué)運(yùn)算模塊的使用。
教學(xué)重點(diǎn)與難點(diǎn)
教學(xué)重點(diǎn) 測(cè)試NFC近場(chǎng)通信模塊讀取NFC的數(shù)值;對(duì)掌控板A、B鍵事件程序的使用。
教學(xué)難點(diǎn) 變量的使用;數(shù)學(xué)運(yùn)算取余指令的使用。
教學(xué)過程
一、觀看視頻,導(dǎo)入課程
師:在學(xué)習(xí)本節(jié)課之前,我們先得搞清楚什么是NFC技術(shù)。NFC這個(gè)術(shù)語(yǔ)聽起來很專業(yè),但其實(shí)NFC技術(shù)早就融入了人們的日常生活。大家觀看視頻,能發(fā)現(xiàn)例如乘坐公共交通時(shí)辦理的公交卡、地鐵卡,還有很多小區(qū)使用的門禁卡,上述這些都屬于NFC技術(shù)的范疇,而且其中不少場(chǎng)景從很早就開始應(yīng)用NFC技術(shù)了。
今天讓我們利用NFC近場(chǎng)通信模塊,制作一把神奇的NFC車鑰匙,實(shí)現(xiàn)對(duì)麥昆小車的啟動(dòng)和停止。
二、認(rèn)識(shí)電子模塊——NFC技術(shù)
NFC全稱為Near Field Communication,是一種短距離的高頻無線通信技術(shù),使用NFC技術(shù)的設(shè)備可以在彼此靠近的情況下進(jìn)行數(shù)據(jù)交換,利用移動(dòng)終端實(shí)現(xiàn)移動(dòng)支付、電子票務(wù)、門禁、移動(dòng)身份識(shí)別、防偽等。NFC車鑰匙,顧名思義,就是把NFC技術(shù)運(yùn)用到了車鑰匙上?!败囪€匙”已經(jīng)從一個(gè)實(shí)物,演變成了一個(gè)概念,如圖1。
三、動(dòng)手實(shí)踐
準(zhǔn)備好掌控板、NFC近場(chǎng)通信模塊、麥昆小車、CR123A鋰電池等材料各1個(gè),將NFC近場(chǎng)通信模塊連接麥昆小車超聲波IIC口,綠色D/T接麥昆小車超聲波接口D,藍(lán)色C/R接麥昆小車超聲波接口C,黑色GND接麥昆小車超聲波接口-,紅色VCC接麥昆小車超聲波接口+,如圖2。
打開Mind+ v1.6.4軟件,連接設(shè)備COM39,然后點(diǎn)擊軟件左下角擴(kuò)展,添加主控板:掌控板,再添加擴(kuò)展板:麥昆擴(kuò)展板,最后添加通信模塊:NFC模塊。
測(cè)試NFC相關(guān)數(shù)據(jù),模擬NFC卡運(yùn)作。當(dāng)檢測(cè)到NFC卡時(shí),掌控板的屏幕實(shí)時(shí)顯示字符“24585fd4”;否則,掌控板的屏幕顯示英文字符“no card!”,同時(shí),在右下角會(huì)顯示串口輸出相關(guān)字符。
四、程序編寫
1.明確程序算法思路
(1)當(dāng)小車NFC近場(chǎng)通信模塊檢測(cè)到手機(jī)NFC卡時(shí),掌控板屏幕顯示“24585fd4”。
(2)當(dāng)刷下NFC后,氛圍燈和RGB燈點(diǎn)亮,閃爍3秒后,燈全部熄滅。掌控板顯示:刷卡完成,小車準(zhǔn)備啟動(dòng)。
(3)按下A鍵,麥昆小車電門開啟,小車解鎖,小車前進(jìn)運(yùn)動(dòng);當(dāng)刷下NFC后,麥昆小車停止。
(4)掌控板顯示:刷卡完成,小車停止運(yùn)行。
(5)按下B鍵,解鎖汽車,燈閃爍3秒后,氛圍燈和RGB熄滅,小車完全停止。
(6)設(shè)置變量biaoji表示NFC模塊檢測(cè)車卡的次數(shù),變量forward表示小車前進(jìn),變量stop表示關(guān)閉車燈。
說明:當(dāng)刷下NFC卡時(shí),變量biaoji數(shù)值會(huì)發(fā)生變化。我們可設(shè)置當(dāng)變量biaoji是偶數(shù)時(shí),麥昆小車前進(jìn);當(dāng)變量biaoji是奇數(shù)時(shí),麥昆小車停止。為了程序的安全性、簡(jiǎn)潔性,我們要將初始化程序、解鎖小車程序、小車停止程序封裝到不同函數(shù)中。
2.編寫程序
基于上述編程思路,我們需要將初始化NFC模塊接口I2C,變量forward、 stop、 biaoji和掌控板文字顯示模塊等放入初始化函數(shù)程序中,如圖3。打開小車電源,掌控板屏幕依次顯示“Mind+”“NFC麥昆小車鑰匙”“等待接受NFC指令中……”等。
然后需要編寫程序讓小車判斷是否檢測(cè)到NFC卡片,如圖4。如果檢測(cè)到NFC卡片,在OLED屏的第四行,顯示NFC檢測(cè)到的字符模擬值“24585fd4”;如果沒有檢測(cè)到NFC卡片,在OLED屏的第四行,顯示“no card!”。
編寫解鎖小車模塊程序,在Mind+軟件指令區(qū)用鼠標(biāo)點(diǎn)擊“函數(shù)”;在“添加一個(gè)自定義模塊”中,將函數(shù)名“積木名稱”改成“車鑰匙點(diǎn)火”;在“函數(shù)”指令區(qū)點(diǎn)擊“自定義模塊”;點(diǎn)擊“完成”后,編寫程序完成刷NFC卡實(shí)現(xiàn)麥昆小車啟動(dòng)、藍(lán)燈閃爍3次以及按動(dòng)掌控板A鍵使小車前進(jìn)的功能,如圖5。
用同樣的方法編寫停止小車模塊程序,創(chuàng)建“拔除車鑰匙”這個(gè)功能函數(shù),實(shí)現(xiàn)刷NFC卡麥昆小車停止、紅燈閃爍3次以及按動(dòng)掌控板B鍵使小車完全停止的功能,如圖6。
保存項(xiàng)目,在項(xiàng)目命名區(qū)將項(xiàng)目名稱改為“NFC麥昆小車鑰匙”,然后上傳程序,測(cè)試NFC麥昆小車鑰匙使用效果,如圖7。
五、小組展示
學(xué)生以小組為單位,由小組長(zhǎng)分享NFC麥昆小車鑰匙項(xiàng)目,并進(jìn)行組內(nèi)自評(píng),小組之間互評(píng),學(xué)生通過電子教室上交作業(yè)、教師給予指導(dǎo)與評(píng)價(jià)。
六、課外拓展
教師可讓學(xué)生開展課外拓展,設(shè)計(jì)一個(gè)NFC智能門禁,并結(jié)合哈士奇智能攝像頭制作人臉識(shí)別安保系統(tǒng)。
教學(xué)反思
通過NFC麥昆小車鑰匙項(xiàng)目的設(shè)計(jì)制作,學(xué)生知道了NFC技術(shù),認(rèn)識(shí)了近場(chǎng)通信技術(shù)的工作原理。本課例不僅綜合運(yùn)用了開源硬件和編程知識(shí),還涉及了 數(shù)學(xué)知識(shí),既鍛煉了學(xué)生的邏輯思維,同時(shí)又培養(yǎng)了學(xué)生運(yùn)用新技術(shù)改造發(fā)明的能力,提升了學(xué)生的綜合素質(zhì)。
(本課件由DF創(chuàng)客社區(qū)推薦)