吴忠躺衫网络科技有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何通過使用LED燈發送摩爾斯電碼來設置自己的Arduino來玩Hangman

454398 ? 來源:網絡整理 ? 作者:網絡整理 ? 2019-11-19 09:16 ? 次閱讀

第1步:設置LED

如何通過使用LED燈發送摩爾斯電碼來設置自己的Arduino來玩Hangman

莫爾斯游戲將使用4個燈來指出單詞中需要猜測的4個字母和5個指示燈以指示玩家還沒有去猜測的生命,因此首先,您必須按照通常的方式連接9個LED指示燈在圖片里。

第2步:添加一個臨時光傳感器

我們不能在電子商店里亂扔錢,所以我決定保留這個項目

您需要做的就是將LED燈的正極連接到模擬端口之一(在我的情況下為A0)

第3步:添加字典

首先,讓我們開始吧添加一種字典將字母翻譯為相應的摩爾斯電碼。為此,我們只需將數組乘以26 x 5即可,每個輔助數組的第一個插槽均具有字母,而接下來的4個插槽均具有相應的摩爾斯電碼或如果沒有代碼則留一個空格。因此,例如對于字母s,第一個插槽為“ s”,第二,第三和第四插槽為“。”。并且最后一個插槽為‘’。

步驟4:默認情況下點亮燈

在此步驟中,我們確保一旦程序啟動,指示燈便會亮起,并在用戶正確猜出它們后將其代表的字母改成Morse(此代碼將在步驟6中編寫)。我們還請確保打開的生命燈與播放機剩余的生命燈一樣多。

在此之前,請確保您有一個端口號和整數設置為0的數組,以表示該燈應打開,關閉的時間以及該LED燈當前顯示在莫爾斯電燈泡的哪一部分。

第5步:添加輸入

現在,我們將編寫代碼以檢查玩家是否在游戲機上照亮了燈光。 LED燈連接到我們的模擬端口A0,如果要將其轉換為正確的字母。

為確保讀數正確,我們使用LED燈平均每20個讀數并使用該數字以跟蹤指示燈是關閉還是打開。為此,在程序開始時,將NUM_AVG設置為我們希望它在平均之前檢查光的次數。此數字越高,讀數越準確,但也可能導致延遲。

msBtnPushed表示打開燈的時間。

lastPressed是一個保持跟蹤的布爾值

步驟6:處理輸入

對于此步驟,我們將看一下是否已經經過了足夠的時間以假定不再添加莫爾斯電文,并且需要檢查莫爾斯電報是否以信函形式以及是否是正確的信函,該怎么辦。

為此,我們需要將字符串wordToGuess設置為我們希望玩家猜測的單詞。我個人有一個隨機數發生器,可以在一開始將其設置為一個隨機單詞,但是您也可以將其設置為單個單詞。

我們還需要確保計數器每增加一個循環,否則整個程序將無法執行任何操作。此外,我添加了delay函數,以確保每毫秒都有一個循環。

PS:所有Serial.println函數僅用于測試目的。它們可能在完成后被刪除。

goodTimer和badTimer只是用于計劃使用Piezo元素添加聲音的值。

如果您愿意,還必須在第二張圖片中添加代碼,以播放聲音。

步驟7:將正確猜出的字母拼寫

按照之前的承諾,在這一步中,我們將使代表為此,我編寫了兩個函數:morseThis和nextLetter。

它使用我們先前在timers數組中設置的數字并根據需要進行更改莫爾斯電碼的哪一部分目前正在閃耀。

如果計時器到達了應該打開燈的時間,則只需打開燈,然后運行代碼以設置新的計時器來重新打開和關閉燈。

如果計時器到達應該熄滅的部分,它會關閉照明燈,然后設置代表字母下一部分的代碼。如果沒有下一部分,它將重置為第一部分。

步驟8:查看我們的設置并重置

當然,如果沒有將燈光設置為輸出和輸入,則程序將不會運行。我還添加了一個隨機數生成器,以從我放入名為wordsToGuess的數組中的單詞列表中添加單詞。

此外,我們應該添加reset函數并確保將所有值都重置為default 。

步驟9:一張圖片中的所有變量

最后,您可以使用它來檢查是否具有所有必需的變量設置正確。

責任編輯:wv

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • led燈
    +關注

    關注

    22

    文章

    1592

    瀏覽量

    108421
  • 摩爾斯電碼
    +關注

    關注

    0

    文章

    17

    瀏覽量

    10278
  • Arduino
    +關注

    關注

    188

    文章

    6477

    瀏覽量

    187844
收藏 人收藏

    評論

    相關推薦

    ADS1259 START conversion delay的設置只是根據自己的外部電路選擇的嗎?

    請問這個延遲時間的設置只是根據自己的外部電路選擇的嗎?有什么選擇上的經驗可以借鑒學習一下嗎? 謝謝。
    發表于 01-16 07:33

    摩爾微電子任命安迪·麥克法蘭為營銷副總裁

    業界領袖加入摩爾微電子悉尼總部領導團隊,推動營銷創新與全球增長 ? 2024 年12月16日,澳大利亞悉尼和中國北京 ——全球領先的Wi-Fi HaLow解決方案提供商摩爾微電子,
    發表于 12-17 10:34 ?102次閱讀
     <b class='flag-5'>摩爾</b><b class='flag-5'>斯</b>微電子任命安迪·麥克法蘭為營銷副總裁

    ADS127L11是否可以通過外部時鐘頻率設置輸出速率?

    我在ADS127L11手冊上看到使用外部時鐘的范圍是0.5MHz到26.2MHz。如下圖所示 請問我是否可以通過這個外部時鐘頻率設置輸出速率,例如我想要得到51.2KHz的數據輸出速率,是不是
    發表于 11-25 07:07

    摩爾微電子榮獲2024年WBA行業大獎最佳Wi-Fi創新獎等多項殊榮

    SoC在這一領域扮演了關鍵性角色。摩爾微電子的聯合創始人兼首席執行官邁克爾·德尼爾(Michael De Nil)表示:“我們非常榮幸能夠獲得無線寬帶聯盟的這一殊榮。這一獎項突顯了我們致力于通過創新
    發表于 11-01 14:41

    智慧照明:實現“車亮,車走滅”的高效路燈解決方案

    智慧照明:實現“車亮,車走滅”的高效路燈解決方案
    的頭像 發表于 10-28 11:48 ?511次閱讀
    智慧照明:實現“車<b class='flag-5'>來</b><b class='flag-5'>燈</b>亮,車走<b class='flag-5'>燈</b>滅”的高效路燈解決方案

    摩爾微電子推出社區論壇與開源GitHub資源庫,新資源的上線將加速全球工程師與開發者的Wi-Fi開發進程

    、解決疑難,并為Wi-Fi HaLow相關項目做出貢獻。該論壇為討論更廣泛的連接性話題提供了空間,促進全球Wi-Fi HaLow社區間的合作。 通過推出這些資源,摩爾微電子彰顯了其在推動Wi-Fi
    發表于 10-18 17:40

    【xG24 Matter開發套件試用體驗】通過按鍵控制LED

    點完了,點花樣,通過按鍵來點燈。 硬件 還是看這個圖 按鍵有 BUTTON0(PB02)和BUTTON1(PB03) 軟件 這里基于blink_baremetal 工程進行修改適
    發表于 09-01 17:21

    Renesa RA如何使用SPI實現高速比特流的發送

    有些特殊的外設會使用基于SPI模式,發送連續比特流來傳輸數據。本文主要介紹對于Renesa RA,如何使用SPI實現高速比特流的發送
    的頭像 發表于 07-22 14:38 ?1611次閱讀
    Renesa RA如何使用SPI<b class='flag-5'>來</b>實現高速比特流的<b class='flag-5'>發送</b>

    開源項目!可編程的磁懸浮桌面氛圍Arduino+WS2812)

    測試。 焊接 Arduino 1、把兩根電線分別連接到 VIN 和電源插口的 GND。 2、把 LED 帶的線焊接到 GND、V5 和一個數字端口(D1-D12)。 3、把磁性
    發表于 06-03 11:53

    【Vision Board創客營連載體驗】利用 OpenMV 實現 AprilTag 跟蹤以及通過串口通訊控制 Arduino 驅動 LED

    作為下位機接收坐標信息并將信息轉化為 LED 矩陣坐標,再通過 FastLED 庫實現對 WS2812b 帶的 LED 操控。 開發現況 由于手頭上的 WS2812b
    發表于 05-31 00:01

    如何使用萬用表檢測LED的好壞

    降低、閃爍、不亮等。因此,學會使用萬用表檢測LED的好壞,對于解決這些問題具有重要意義。本文將詳細介紹如何使用萬用表檢測LED
    的頭像 發表于 05-13 16:53 ?1.6w次閱讀

    請問如何用串口發送的消息調節LED的亮度呢?

    ;); for(t=0;tDR=USART_RX_BUF[t]; while((USART1->SR 0X40)==0);//等待發送結束 } led
    發表于 04-08 06:30

    如何使用Arduino設置熱敏電阻創建溫度計

    在本教程中,我們將指導您如何使用Arduino設置熱敏電阻以創建基本溫度計。提供的原理圖、試驗板圖和示例代碼將使熱敏電阻工作變得簡單明了。
    的頭像 發表于 02-11 10:37 ?2725次閱讀
    如何使用<b class='flag-5'>Arduino</b><b class='flag-5'>設置</b>熱敏電阻<b class='flag-5'>來</b>創建溫度計

    如何使用Arduino控制RGB LED

    在本指南中,您將學習如何使用Arduino控制RGB LED。RGB(紅-綠-藍)LED可以通過混合不同強度的紅、綠、藍光來產生多種顏色。您將學習創建一個基本
    的頭像 發表于 02-11 10:28 ?5245次閱讀
    如何使用<b class='flag-5'>Arduino</b>控制RGB <b class='flag-5'>LED</b>

    如何設置Arduino IR發射器電路

    在本指南中,您將學習如何設置 Arduino IR發射器電路。它使您可以控制IR(紅外線)LED,并從Arduino發送任何遠程控制代碼。這
    的頭像 發表于 02-11 09:44 ?918次閱讀
    如何<b class='flag-5'>設置</b><b class='flag-5'>Arduino</b> IR發射器電路
    网上百家乐破战| 百家乐java| 威尼斯人娱乐城怎么样| 网上真钱游戏| 百家乐官网平台注册送彩金| 百家乐官网线路图分析| 中国百家乐澳门真人娱乐平台网址 | 百家乐官网机械图片| 百家乐最低投注| 大发888游戏登陆| 百家乐官网太阳城球讯网| 百家乐有没有攻略| 德州扑克中文版| 新百家乐官网.百万筹码| 百家乐国际娱乐场| 永利娱乐场| 免费百家乐官网计划| 北京太阳城国际老年公寓| 太阳城百家乐官网注册平台| 新葡京百家乐娱乐城| 大发888官方888| 百家乐官网路单走势图| 百家乐群必胜打朽法| 澳门百家乐官网怎样下注| 百家乐游戏玩法技巧| 金宝博188| 黄金百家乐官网的玩法技巧和规则| 大连百家乐食品| 百家乐官网博彩安全吗| 网络百家乐怎样出千| 百家乐官网榄梯打法| 风水24山组成| 大发888官方pt老虎机大咖炸金花网页扎金花 | 大发888扑克合营商| 蓝盾百家乐官网代理打| 大发888官方体育| 百家乐官网常用公式| 大发888问题缺少组件| 现场百家乐官网牌路分析| 天津水果机定位器| 百家乐官网怎么发牌|