精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>適合編程新手的Music Lights Workbench

適合編程新手的Music Lights Workbench

2023-02-10 | zip | 0.03 MB | 次下載 | 免費(fèi)

資料介紹

描述

介紹

Music and Lights Workbench (MLWB) 旨在通過提供一系列允許構(gòu)建樂譜/曲調(diào)和/或燈光效果。通過使用這些命令及其應(yīng)用程序,用戶將開始深入了解什么是編程,并有望激發(fā)他們的進(jìn)一步興趣。

然而,它同樣適用于那些更有經(jīng)驗(yàn)的人,他們可能喜歡探索在 Arduino 上編寫音樂和組合燈光效果。

所采用的方法是提供一組簡單易用且邏輯應(yīng)用的命令(功能),通過演奏音符和/或點(diǎn)亮 LED(燈)將計(jì)算機(jī)與外界聯(lián)系起來。

MLWB 命令在很大程度上彼此獨(dú)立,可用于僅播放音樂、僅點(diǎn)亮燈光或兩者的組合。

MLWB 不需要使用任何其他編程功能、技術(shù)或邏輯,只需要簡單的命令語句。雖然 if/then、do/while、for 循環(huán)等條件結(jié)構(gòu)可以用于更高級(jí)的用途,但在適當(dāng)?shù)慕虒W(xué)下,它們并不是從 MLWB 中立即獲得結(jié)果所必需的。

任何試圖掌握一門新學(xué)科的人,這里是基本的計(jì)算機(jī)編程,都可以從精通該學(xué)科的人的指導(dǎo)中受益。MLWB 也不例外,它的使用和應(yīng)用最好是通過導(dǎo)師對(duì)學(xué)生的指導(dǎo)和指導(dǎo)來實(shí)現(xiàn)。

動(dòng)機(jī)

MLWB 是為作者的孫輩設(shè)計(jì)的,旨在為他們提供一些機(jī)會(huì)來了解如何輕松創(chuàng)建計(jì)算機(jī)程序以在現(xiàn)實(shí)世界中產(chǎn)生效果。希望通過思考播放簡單音樂和/或打開和關(guān)閉燈 (LED) 所需的邏輯步驟,這將達(dá)到頂峰并激發(fā)他們更深入探索編程潛力的愿望。

好的,在這一點(diǎn)上,一些引述:

告訴我,我會(huì)忘記;教我,我可能會(huì)記得;讓我參與,我就會(huì)學(xué)習(xí)。- 本杰明·富蘭克林
教育不是灌滿鍋,而是點(diǎn)燃火。— WB 葉芝
教育是通向未來的通行證,因?yàn)槊魈鞂儆诮裉鞛橹龊脺?zhǔn)備的人。– 馬爾科姆 X

高尚的智慧,當(dāng)然,但它們確實(shí)說明了我試圖很好地表達(dá)的觀點(diǎn)。

先決條件

“讓鴨子排好隊(duì)”,或者讓事情井然有序和移動(dòng)所需的東西:

目標(biāo)受眾——愿意探索計(jì)算機(jī)程序如何快速、輕松和有趣地做某事的學(xué)生,無論年齡大小,
主管 -導(dǎo)師,擔(dān)任 MLWB 的教育者 - 導(dǎo)師和老師。導(dǎo)師應(yīng)該有一定的Arduino和IDE及其編程經(jīng)驗(yàn),但這可以是初級(jí)水平,
如果要探索/使用 MLWB 的音樂元素,那么對(duì)導(dǎo)師和學(xué)生都有一些音樂知識(shí)是有幫助的,但是,同樣,這可能處于初級(jí)水平——了解音符名稱、音階、音符間隔將非常有益,
硬件配置如下,
安裝在 Windows PC 上的 ARDUINO IDE,
在學(xué)生使用之前,導(dǎo)師通過探索其命令和內(nèi)置示例來徹底熟悉 MLWB。下載嬰兒床單作為指南和回憶錄以備不時(shí)之需,
最后,針對(duì)導(dǎo)師將向?qū)W生介紹的內(nèi)容制定計(jì)劃,逐節(jié)進(jìn)行。包含的示例可以構(gòu)成許多練習(xí)的基礎(chǔ)。

關(guān)于索引引用、術(shù)語和數(shù)據(jù)輸入的說明

索引參考和術(shù)語

年輕人和那些剛接觸任何與計(jì)算相關(guān)的人通常會(huì)發(fā)現(xiàn)很難理解與計(jì)算相關(guān)的術(shù)語,并且引用可以從 0(零)開始。因此,為了讓學(xué)生輕松進(jìn)入計(jì)算世界,MLWB 的設(shè)計(jì)如下:

1. 避免使用技術(shù)計(jì)算術(shù)語,例如不使用術(shù)語 LED,而是使用“光”,
2. 引用從 1 開始,而不是 0。例如,在 MLWB 中,將 LED 0 稱為“l(fā)ight1”,將 LED 1 稱為“l(fā)ight2”,依此類推。

數(shù)據(jù)輸入

為了讓學(xué)生盡可能容易地輸入鍵盤數(shù)據(jù),MLWB 使用小寫字母。下載草圖后,可以看到所有命令和音樂音高常數(shù)都大部分以小寫字母定義。通常可用的“pitches.h”文件包含 MLWB 中包含的所有相同音高定義,但這些都是大寫的。因此,每個(gè)間距定義都已重新定義,以減少任何大寫要求。例如,'note_C4',而不是'NOTE_C4',等等。這里的例外情況,如將立即發(fā)現(xiàn)的那樣,是保留為大寫以提高閱讀能力的注釋名稱。

MLWB 命令

MLWB 命令集主要分為兩組——執(zhí)行音樂指令的組和執(zhí)行燈光動(dòng)作的組。然而,有一個(gè)命令可以連接兩個(gè)“陣營”。這是重載函數(shù)的播放命令。它可以用于:

1. 在給定的持續(xù)時(shí)間內(nèi)播放給定的音符,或
2. 與 1. 一樣,但有一個(gè)額外的參數(shù)指定在播放音符時(shí)要點(diǎn)亮的燈號(hào) (LED)。它是一個(gè)重載函數(shù),可以以任何一種方式使用。

音樂指令

play - 將在給定的持續(xù)時(shí)間內(nèi)播放給定的音符,例如 play(note_C4, minim), play(note_FS2, crot + quav) 等。
play - 命令的重載版本,該命令允許在給定音符播放時(shí)指定燈 (LED) 用于照明,例如 play(note_C4, minim, light5), play(note_FS2, crot + quav, light1),等等
休息- 在給定的持續(xù)時(shí)間內(nèi)休息,在此期間保持沉默,例如休息(quav),休息(0.5)等
set_tempo - 以每分鐘節(jié)拍為單位設(shè)置音樂作品的速度(速度),例如 set_tempo(allegro)、set_tempo(144) 等。四分音符的值計(jì)算為 60/tempo。然后根據(jù)該計(jì)算值確定所有其他音符持續(xù)時(shí)間。

燈光指令

light_on - 打開給定的燈 (LED)。例如 light_on(light1)、light_on(7) 等。
light_off - 關(guān)閉給定的燈 (LED),例如 light_off(light1)、light_off(7) 等。
all_lights_on - 打開所有八個(gè)燈。例如 all_lights_on()。
all_lights_off - 關(guān)閉所有八盞燈。例如 all_lights_off()。
flash_light - 在給定的閃光間隔內(nèi)閃爍給定的燈,直到燈被另一個(gè)命令重新定義,例如 flash_light(light3, 0.5),閃光頻率為 1 秒 - 0.5 秒亮,0.5 秒關(guān)。該命令由微控制器定時(shí)器 1 通過中斷服務(wù)程序 (ISR) 控制。這樣,即使在 flash_light 命令之后可能會(huì)執(zhí)行其他命令,閃光序列也會(huì)繼續(xù)運(yùn)行。閃爍一直持續(xù)到對(duì)同一燈 (LED) 執(zhí)行另一個(gè)命令為止。
strobe_all_lights - 此命令將在給定的周期內(nèi)按給定的方向(向前或向后/向后)頻閃所有八個(gè)燈,每個(gè)燈在給定的時(shí)間內(nèi)點(diǎn)亮。例如 strobe_all_lights(forwards, 10, 0.1)。控制權(quán)由命令保留,直到它完成給定的循環(huán)次數(shù)。
wait - 等待給定的持續(xù)時(shí)間(秒)停止除繼續(xù)運(yùn)行的現(xiàn)有 flash_light 命令之外的任何處理。例如 wait(5.5),等待 5.5 秒。

MLWB布局

MLWB 軟件是用 Arduino C++ 編寫的,包含六個(gè)選項(xiàng)卡。這些選項(xiàng)卡是:

music_and_lights_workbench - 此選項(xiàng)卡提供了 MLWB 的概述,與本文的大部分內(nèi)容相呼應(yīng)。
functions_lights - 此選項(xiàng)卡定義支持 MLWB 命令的功能,這些命令處理燈光 (LED) 控制,請(qǐng)參見上文。
functions_tones - 此選項(xiàng)卡定義支持處理音樂/音調(diào)控制的 MLWB 命令的功能。此外,此選項(xiàng)卡還定義了 setup() 函數(shù),請(qǐng)參見上文。
main_work_area - 這是應(yīng)該插入學(xué)生編碼的地方,是教學(xué)、探索和鞏固思想的中心焦點(diǎn)。
xample_lights - MLWB 開箱即用 (OOTB),帶有幾個(gè)現(xiàn)成的示例,演示了如何使用控制燈 (LED) 的命令。這些可以用作導(dǎo)師和學(xué)生之間的教學(xué)示例,見下文。
xample_tunes - MLWB 還提供了 OOTB 以及其他幾個(gè)現(xiàn)成的示例,演示了在連接的揚(yáng)聲器/蜂鳴器上播放音調(diào)(音樂)的命令的使用。同樣,這些可以用作導(dǎo)師和學(xué)生之間的教學(xué)示例,見下文。

收縮包裝示例

首先,包含兩個(gè)選項(xiàng)卡,提供音樂旋律/曲調(diào)和照明序列的示例。使用這些來查看每個(gè)本機(jī)命令(函數(shù))如何單獨(dú)和一起使用。事實(shí)上,這些也可以用作導(dǎo)師和學(xué)生之間的教學(xué)指南。

音樂示例選項(xiàng)卡稱為“xample_tunes”,包含以下教學(xué)示例:

middle_C - 演奏 C 大調(diào)音階,先是向上,然后再向下。作為建議,為什么不讓學(xué)生將其他音階和琶音提交到 MLWB 中?
twinkle_twinkle - 播放非常著名的兒歌 Twinkle, Twinkle, Little Star。
jingle_bells - 線索就在名字里!
happy_birthday - 生日慶祝活動(dòng)!
ditty_1 - 播放它,您一定能認(rèn)出它。除了播放旋律外,該示例還會(huì)在播放時(shí)點(diǎn)亮前七個(gè)燈。
door_bell_1 & door_bell_2 - 叮,當(dāng)!兩個(gè)門鈴示例在播放時(shí)也會(huì)點(diǎn)亮燈光。
ode_to_joy - 貝多芬第 9 交響曲(合唱),最后的樂章。

(還有一個(gè)額外的音樂示例。我想提供一些標(biāo)志性的、流行的和我真正喜歡的曲調(diào) - Penny Lane、Lennon 和 McCartney。我確實(shí)完成了將這首音樂的 G Major 樂譜提交到MLWB(在我女兒的幫助下)運(yùn)行得很漂亮。然而,我決定不發(fā)表它,因?yàn)槲也幌肭址赴鏅?quán)。這對(duì)我來說不是白費(fèi)力氣,雖然,因?yàn)槲覐拈喿x中學(xué)到了很多東西一個(gè)分?jǐn)?shù))。

燈光示例選項(xiàng)卡稱為“xample_lights”,包含以下說明示例:

sweep_lights - 八盞燈從每一端掃到中心,然后再掃回來。
chasing_lights - 燈光從一端到另一端遵循追逐效果。
marching_lights - 燈光在所有八盞燈中形成行進(jìn)模式。
flash_all_lights - 以不同的頻率閃爍八盞燈中的每盞燈。請(qǐng)注意,閃爍會(huì)一直持續(xù)到執(zhí)行另一個(gè)發(fā)光命令為止。
sos_morse_code - 在一個(gè) sos 周期內(nèi)閃爍所有八個(gè)燈,即破折號(hào)、破折號(hào)、破折號(hào)、點(diǎn)、點(diǎn)、點(diǎn)。為什么不在燈光和音樂音調(diào)方面進(jìn)一步探索摩爾斯電碼呢?
traffic_lights - 執(zhí)行兩條道路從紅/綠到綠/紅的照明轉(zhuǎn)換(一個(gè)周期)。這是一個(gè)有用的練習(xí),可以讓學(xué)生擴(kuò)展到相反的(原始)狀態(tài)設(shè)置(綠色/紅色到紅色/綠色)。請(qǐng)注意,邏輯可能會(huì)有點(diǎn)混亂,使用過渡狀態(tài)表來規(guī)劃燈的順序及其時(shí)間會(huì)很有幫助。

電路設(shè)計(jì)與布局

該項(xiàng)目的組件不復(fù)雜,隨時(shí)可用并以簡單直接的方式配置 - 請(qǐng)參見下面的原理圖。(警告:不要將揚(yáng)聲器/蜂鳴器輸出引腳直接連接到音頻輸入,因?yàn)檫@可能會(huì)損壞您的微控制器。)

雖然可以使用任何顏色的燈 (LED),但如果配置多個(gè)不同顏色的燈,對(duì)于學(xué)生來說可能會(huì)帶來更豐富多彩的體驗(yàn)。如果要使用交通燈示例,則將您的燈安排為

燈 1 - 紅色,燈 2 - 琥珀色,燈 3 - 綠色,燈 4 - 任何(道路 1)
燈 5 - 紅色,燈 6 - 琥珀色,燈 7 - 綠色,燈 8 - 任何(道路 2)。

床單

嬰兒床表記錄了可供 MLWB 使用的所有預(yù)設(shè)值和命令。 下載此作為助手回憶錄,并隨身攜帶以備參考。

最后

我覺得我需要聲明我的音樂知識(shí)、技能和實(shí)力幾乎為零——我認(rèn)為郵箱更有音樂天賦!

我在所有音樂方面的方法都是機(jī)械化的,大量使用互聯(lián)網(wǎng)來構(gòu)建這個(gè)工作臺(tái)的音樂元素,所以我向任何可能因不恰當(dāng)?shù)臈l款或?qū)嵤┒艿矫胺傅娜说狼浮?/font>我的辯護(hù)是它似乎按我的預(yù)期工作,我的孫子們似乎很開心,其中一個(gè)比我更了解音樂。

我希望你喜歡你的經(jīng)歷。

進(jìn)一步閱讀

您可能還會(huì)發(fā)現(xiàn)同一作者的這些貢獻(xiàn)有趣且有用:

  • 外部中斷,支持并發(fā)異步多中斷的通用框架。配置多個(gè)具有不同特性的外部中斷并添加代碼以提供中斷后異步處理。
  • Programmatic Timed Reminder Alerting,用于過去和實(shí)時(shí)異步警報(bào)的程序框架。定義任意數(shù)量的提醒警報(bào)(亞秒級(jí)到數(shù)小時(shí))并異步處理。

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評(píng)論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
  2. 1.06 MB  |  532次下載  |  免費(fèi)
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費(fèi)
  5. 3TC358743XBG評(píng)估板參考手冊(cè)
  6. 1.36 MB  |  330次下載  |  免費(fèi)
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費(fèi)
  9. 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費(fèi)
  11. 6迪文DGUS開發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費(fèi)
  13. 7元宇宙底層硬件系列報(bào)告
  14. 13.42 MB  |  182次下載  |  免費(fèi)
  15. 8FP5207XR-G1中文應(yīng)用手冊(cè)
  16. 1.09 MB  |  178次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開關(guān)電源設(shè)計(jì)實(shí)例指南
  8. 未知  |  21549次下載  |  免費(fèi)
  9. 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實(shí)例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537798次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191187次下載  |  免費(fèi)
  13. 7十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)