大家好余指,我是蘇小糖蘇老師。想必同學(xué)們對于Scratch還有Arduino都不陌生了跷坝。使用scratch可以在電腦上制作游戲動(dòng)畫等等酵镜,使用Arduino可以在現(xiàn)實(shí)的環(huán)境中制作一個(gè)實(shí)物作品。本來它們兩個(gè)不相干的柴钻,得益于國內(nèi)廠商的努力淮韭,我們可以很容易的把Scratch & Arduino進(jìn)行混合編程。一方面結(jié)合scratch在圖像聲音上的優(yōu)勢贴届,一方面結(jié)合Arduino連接現(xiàn)實(shí)世界的優(yōu)勢靠粪。
今天的課程是以makeblock童心制物推出的編程軟件慧編程基礎(chǔ)上制作的。先上視頻毫蚓,然后下面是圖文講解占键。
01當(dāng)scratch無法滿足你的時(shí)候
慧編程是個(gè)不錯(cuò)的選擇
慧編程的強(qiáng)大功能和便利性,對于老師或者學(xué)生都是非常棒的元潘。原版scratch自然有它的優(yōu)勢畔乙,不過當(dāng)scratch無法滿足你的需求的時(shí)候,慧編程是個(gè)不錯(cuò)的選擇翩概。比如我最近就在使用慧編程準(zhǔn)備軟硬件結(jié)合學(xué)編程的課程啸澡。
我們今天用到的就是和舞臺實(shí)時(shí)交互的功能袖订,讓軟件和硬件各自發(fā)揮它們的優(yōu)勢。做Arduino編程嗅虏,經(jīng)常用到的就是串口助手去觀測數(shù)據(jù),有經(jīng)驗(yàn)的老師還會(huì)去寫一個(gè)上位機(jī)上沐。但是這些對于小朋友極度的不友好皮服。慧編程很好的解決了讓小朋友制作上位機(jī)實(shí)現(xiàn)數(shù)據(jù)可視化的問題参咙。
02今天制作一個(gè)搶答器
scratch去制作一個(gè)搶答器非常的簡單龄广,但是會(huì)有一個(gè)問題,在實(shí)際的搶答過程中蕴侧,讓選手們都圍繞著一個(gè)電腦是不現(xiàn)實(shí)的择同。或者使用arduino去制作一個(gè)搶答器净宵,功能很好實(shí)現(xiàn)敲才。但是在比賽現(xiàn)場,我們更希望觀眾都能看到搶答情況择葡。僅僅使用按鍵和LED指示甚至用上數(shù)碼管顯示紧武,乃至語音模塊。也很容易被搶答現(xiàn)場的激動(dòng)氛圍所淹沒敏储。
所以呢阻星,使用scratch制作一個(gè)界面,投放到大屏幕上已添,再用Arduino制作電路部分把按鍵引到選手座位妥箕,這個(gè)方式就好多了。當(dāng)然更舞,今天制作的也就是一個(gè)基礎(chǔ)版的搶答器畦幢,bug還是有的。有精力的同學(xué)可以想一想如何優(yōu)化疏哗。
03硬件電路和程序
Arduino uno的主板呛讲、盾板還有四個(gè)按鍵就是所用到的電路了,非常的簡單返奉。老師使用白色按鍵贝搁,三個(gè)同學(xué)分別使用黃綠紅按鍵。白黃綠紅按鍵分別接到了數(shù)字口10芽偏、11雷逆、12和13上面。在Arduino使用過程中污尉,端口編號的準(zhǔn)確性是編程的基礎(chǔ)膀哲。我這里使用到的模塊都是svg插口往产,有利于快速去搭建作品秕豫≠梭铮總是丟給小學(xué)生一堆散件是夠折磨人的。
硬件一切就緒以后或舞,連接軟件兴喂,設(shè)定為在線模式蔼囊。只有在線模式才可以做軟硬件的交互。當(dāng)然衣迷,第一次連接Arduino主板的時(shí)候會(huì)提示更新固件畏鼓。這個(gè)按提示操作就好了。
接下來看一下Arduino部分的編程壶谒。Arduino一直檢測老師按鍵是否按下云矫。當(dāng)按下以后等待釋放。接下來就要一直等待三個(gè)選手有一人按下按鍵汗菜。直接上程序吧让禀。總之兩句話呵俏,老師沒按堆缘,等老師。老師按下普碎,等學(xué)生吼肥。當(dāng)然狀態(tài)的更新也是伴隨著變量的更新的。
04角色的編程
在舞臺區(qū)使用的是教室背景麻车。然后三個(gè)選手缀皱,一個(gè)老師。使用字幕在黑板上進(jìn)行狀態(tài)的顯示动猬。同時(shí)使用一個(gè)作答標(biāo)志作為選手搶答有效的指示啤斗。
這里重點(diǎn)說一下老師的編程。老師有一個(gè)朗讀的功能赁咙,去宣讀某位同學(xué)搶答成功開始作答钮莲。所以朗讀功能需要做初始化。然后就是等著老師按鍵按下彼水。老師按鍵按下崔拥,準(zhǔn)備狀態(tài)等于1以后,就等待選手編號的更新凤覆。對的链瓦,和Arduino編程的結(jié)構(gòu)非常的相似。
在原版scratch里,硬件的擴(kuò)展都是作為一項(xiàng)功能擴(kuò)展來使用的慈俯。無論樂高EV3渤刃、wedo還是microbit,它們都和畫筆功能語音功能同等級別贴膘,都是作為一個(gè)功能擴(kuò)展存在卖子。雖然加入了硬件,但是編程還會(huì)依托于角色刑峡,把硬件的編程融合到了角色里面揪胃。
而在慧編程里面,任何的一種硬件都是和角色同等級別的氛琢。或者說使用在線模式的時(shí)候随闪,一個(gè)硬件就是一個(gè)角色阳似。角色的編程和硬件的編程是相互獨(dú)立存在的。并不能把硬件的編程數(shù)據(jù)采集直接融合到角色里面铐伴。不過還是可以使用變量功能作為中間傳導(dǎo)的撮奏。
我認(rèn)為第一種情況,有助于快速的實(shí)現(xiàn)效果当宴。但是后面這一種情況更有利于我們理解數(shù)據(jù)的傳導(dǎo)過程畜吊。兩種方式,仁者見仁吧户矢。
編程讓生活更有趣玲献,我是蘇小糖,多謝各位看官捧場梯浪。