色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

3天內不再提示

構建一個藍牙控制的無線記分牌

科技觀察員 ? 來源:circuitdigest ? 作者:Debasis Parida ? 2022-08-06 16:36 ? 次閱讀

電子記分牌是任何人在任何體育比賽中都可以擁有的最重要的小工具之一。使用傳統方法的舊手動記分牌非常耗時且容易出錯,因此在需要實時更改顯示單元的情況下,必須使用計算機記分牌。這就是為什么在這個項目中,我們將構建一個藍牙控制的無線記分牌,我們可以通過使用一個安卓應用程序來更改板上的分數。這個項目的大腦是一個 Arduino Nano,對于顯示部分,我們將使用 P10 LED 矩陣來實時遠程顯示分數。

P10 LED顯示矩陣

P10 LED 矩陣顯示器是制作戶外或室內LED 廣告板的最佳方式。該面板共有 512 個高亮度 LED,安裝在塑料外殼上,旨在實現最佳顯示效果。它還具有 IP65 防水等級,非常適合戶外使用。有了這個,您可以通過在任何行和列結構中組合任意數量的此類面板來制作大型LED 招牌。

pYYBAGLuJ5uAXldVAAqE9AInKko062.png

我們的模組尺寸為32*16,也就是說每行32個LED,每列16個LED。因此,每個 LED 招牌中共有 512 個 LED。除此之外,它的防水等級為IP65,可以由單個5V電源供電,具有非常寬的視角,亮度可以達到4500尼特。因此,您將能夠在日光下清楚地看到它。之前我們也使用這個P10 顯示器和 Arduino來構建一個簡單的 LED 板。

P10 LED 矩陣管腳說明:

該LED 顯示板使用 10 針郵件頭進行輸入和輸出連接,在本節中,我們已經描述了該模塊的所有必要針腳。此外,您可以看到模塊中間有一個外部 5V 連接器,用于將外部電源連接到電路板。

poYBAGLuJ5eAOFDRAAWvo_5j6Y0003.png

啟用:此引腳用于控制 LED 面板的亮度,通過給它一個 PWM 脈沖。

A、B:這些稱為多路復用選擇引腳。它們采用數字輸入來選擇任何多路復用行。

移位時鐘 (CLK)、存儲時鐘 (SCLK) 和數據:這些是正常的移位寄存器控制引腳。這里使用了移位寄存器 74HC595。

將 P10 LED 顯示模塊連接到 Arduino:

將P10矩陣顯示 模塊連接到 Arduino 是一個非常簡單的過程,在我們的電路中,我們將 Arduino 的引腳 9 配置為使能引腳,引腳 6 為引腳 A,引腳 7 為引腳 B,引腳 13 為 CLK,引腳 8 為SCLK,引腳11是DATA,最后引腳GND是模塊和Arduino的GND引腳,下面的完整表格清楚地解釋了引腳配置。

P10 LED模組Arduino UNO

poYBAGLuKDGAa1o9AAAxwKC-__o236.png

注意:將P10模塊的電源端接外接5V電源,因為512個LED會消耗很多功率。建議將 5V、3 Amp 直流電源連接到單個 P10 LED 模塊。如果您計劃連接更多號碼模塊,請相應增加您的 SMPS 容量。

Arduino 記分板所需的組件

由于這是一個非常簡單的項目,組件要求非常通用,所需組件列表如下所示,您應該可以在當地的愛好商店中找到所有列出的材料。

Arduino納米

P10 LED矩陣顯示

面包板

5V、3 安培開關電源

HC-05 藍牙模塊

連接電線

Arduino記分牌電路圖

Arduino LED Scoreboard的原理圖如下所示,因為這個項目非常簡單,我使用了流行的軟件 fritzing 來開發原理圖。

poYBAGLuJ5GAHS6IAAE80TeiHOQ597.png

電路的工作很簡單,我們有一個安卓應用程序和一個藍牙模塊,要成功與藍牙模塊通信,你必須將HC-05模塊與安卓應用程序配對。連接好后就可以發送我們想要顯示的字符串了,一旦發送了字符串,Arduino會處理這個字符串,并將其轉換為內部74HC595移位電阻可以理解的信號,數據發送到移位后電阻,它準備顯示。

Arduino記分牌代碼說明

成功完成硬件設置后,現在是 Arduino Nano 編程的時候了。下面給出代碼的逐步描述。此外,您可以在本教程的底部獲取完整的Arduino 記分板代碼。

首先,我們需要包含所有的庫。我們使用DMD.h庫來控制 P10 LED 顯示屏。您可以從給定的 GitHub 鏈接下載并包含它。之后,您需要包含TimerOne.h庫,它將用于在我們的代碼中進行中斷編程。

這個庫中有很多可用的前端,我們在這個項目中使用了“Arial_black_16”。

#include  
#include  
#include  
#include "SystemFont5x7.h" 
#include "Arial_black_16.h"

在下一步中,為我們的 LED 矩陣板定義行數和列數。我們在這個項目中只使用了一個模塊,所以 ROW 值和 COLUMN 值都可以定義為 1。

#define ROW 1 
#define COLUMN 1 
#define FONT Arial_Black_16 
DMD led_module (ROW, COLUMN);

之后,定義了代碼中使用的所有變量。一個字符變量用于接收來自 Android App 的串行數據,兩個整數值用于存儲分數,并定義了一個數組來存儲最終要顯示在 Matrix 上的數據。

字符輸入;
整數a = 0,b = 0;
整數標志 = 0;
字符 cstr1[50];

定義了一個函數scan_module(),它通過SPI持續檢查來自 Arduino Nano 的任何傳入數據。如果是,那么它將觸發中斷以執行用戶在程序中定義的某些事件。

無效 scan_module() 
{ 
  led_module.scanDisplayBySPI(); 
}

在setup()內部,定時器被初始化,中斷被附加到函數scan_module,這在前面已經討論過了。最初,使用函數clear screen(true) 清除屏幕,這意味著所有像素都定義為 OFF。

在設置中,還使用函數Serial.begin(9600)啟用了串行通信,其中 9600 是藍牙通信的波特率。

無效設置()
{
  序列.開始(9600);
  Timer1.initialize(2000); 
  Timer1.attachInterrupt(scan_module); 
  led_module.clearScreen(真);
}

在這里,檢查串行數據的可用性,是否有來自 Arduino 的有效數據。從 App 接收到的數據存儲在一個變量中。

if(Serial.available() > 0) 
  { 
    flag = 0; 
    輸入 = Serial.read();

然后,將接收到的值與預定義的變量進行比較。在這里,在 Android 應用程序中,使用兩個按鈕來選擇兩支球隊的分數。當按下按鈕 1 時,字符“a”被傳輸到 Arduino,當按下按鈕 2 時,字符“b”被傳輸到 Arduino。因此,在本節中,此數據是匹配的,如果匹配,則相應的分數值會增加,如代碼所示。

if (input == 'a' && flag == 0) 
  { 
    flag = 1; 
    一個++;
  } 
  else if (input == 'b' && flag == 0) 
  { 
    flag = 1; 
    b++; 
  }
  其他;

然后,將接收到的數據轉換為字符數組,因為 P10 矩陣函數只能顯示字符數據類型。這就是為什么所有變量都被轉換并連接成一個字符數組的原因。

(String("HOME:")+String(a) + String(" - ") + String("AWAY:")+String(b)).toCharArray(cstr1, 50);

然后,為了在模塊中顯示信息,使用selection()函數選擇字體。然后drawMarquee()函數用于在 P10 板上顯示所需的信息。

led_module.selectFont(字體); 
led_module.drawMarquee(cstr1,50, (32 * ROW), 0);

最后,由于我們需要滾動消息顯示,我編寫了一個代碼,使用特定周期將整個消息從右向左移動。

長開始 = 毫秒();
    長時間的計時=開始;
    布爾標志 = 假;
    while (!flag) 
    { 
      if ((timming + 30) < millis()) 
      { 
        flag = led_module.stepMarquee(-1, 0); 
        計時 = 毫秒();
      } 
    }

這標志著我們編碼過程的結束。現在可以上傳了。

智能手機控制的記分牌 - 測試

將代碼上傳到 Arduino 后,就該測試項目了。在此之前,需要在我們的智能手機上安裝 android 應用程序。您可以從給定的鏈接下載 P10 Score Board 應用程序。安裝后,打開應用程序,主屏幕應如下圖所示。

poYBAGLuJ4qAZ7h7AADvhanjNGU489.png

點擊SCAN按鈕,添加帶有 App 的藍牙模塊。這將顯示手機的配對藍牙設備列表。如果您之前沒有配對過HC-05 藍牙模塊,請使用手機的藍牙設置配對模塊,然后執行此步驟。屏幕將如下所示:

poYBAGLuJ4aAPdQ3AABmWC8c5zw573.png

然后,從列表中單擊“HC-05”,因為這是我們此處使用的藍牙模塊的名稱。單擊它后,它將在屏幕上顯示已連接。然后我們可以繼續使用記分牌。

單擊“主頁”和“離開”之間的任何按鈕,如應用程序所示。如果選擇 Home 按鈕,則 Home 的分數將在 P10 顯示中遞增。同樣,如果選擇了離開按鈕,離開的分數將增加。下圖顯示了最終屏幕的外觀。

pYYBAGLuJ4OAQsSKAAhgwuy2FLY749.png

#include
#include
#include
#include "SystemFont5x7.h"
#include "Arial_black_16.h"
#定義第 1 行
#define 第 1 列
#define 字體 Arial_Black_16
字符輸入;
整數a = 0,b = 0;
整數標志 = 0;
字符 cstr1[50];
DMD led_module(行,列);
無效掃描模塊()
{
led_module.scanDisplayBySPI();
}
無效設置()
{
序列號.開始(9600);
Timer1.initialize(2000);
Timer1.attachInterrupt(scan_module);
led_module.clearScreen(真);
}
無效循環()
{
如果(串行。可用()> 0)
{
標志 = 0;
輸入 = Serial.read();
如果(輸入 == 'a' && 標志 == 0)
{
標志 = 1;
一個++;
}
else if (input == 'b' && flag == 0)
{
標志 = 1;
b++;
}
別的;
}
(String("HOME:")+String(a) + String(" - ") + String("AWAY:")+String(b)).toCharArray(cstr1, 50);
led_module.selectFont(字體);
led_module.drawMarquee(cstr1,50, (32 * ROW), 0);
長開始 = 毫秒();
長時間的計時=開始;
布爾標志 = 假;
而(!標志)
{
if ((timming + 30) < 毫秒())
{
flag = led_module.stepMarquee(-1, 0);
計時 = 毫秒();
}
}
}

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

    關注

    0

    文章

    361

    瀏覽量

    38045
  • Arduino
    +關注

    關注

    188

    文章

    6470

    瀏覽量

    187166
  • 藍牙控制
    +關注

    關注

    0

    文章

    12

    瀏覽量

    2687
收藏 人收藏

    評論

    相關推薦

    基于89c51的籃球記分牌怎么設計?

    基于89c51的籃球記分牌怎么設計?
    發表于 12-22 15:32

    用撥碼盤做一個記分牌,程序在仿真上不行,求大神指點

    課程設計讓用撥碼盤做一個記分牌但是我的程序在仿真上不行誰給解決
    發表于 01-04 13:50

    按鍵控制滾動的點陣

    想用按鍵控制64X16的滾動點陣,是籃球記分牌,既能控制比分又能更換隊名,要怎么寫(滾動原理已經知道)
    發表于 04-29 20:36

    記分牌程序設計

    記分牌程序設計要求:①編寫籃球記分牌程序,能夠顯示兩支球隊的當前比賽分數;②能夠實現加1分、加2分、加3分的功能;③通過按鍵可切換到60s倒計時功能,顯示當前剩余時間;④其它創新功能。求各位大神給出程序來,是用數碼管顯示來做的
    發表于 11-25 17:52

    求基于8086的籃球記分

    基于8086 8255138譯碼器的簡易籃球記分牌,只需要能顯示兩對得分,實現+1分,+2分,+3分就可以,能用proteus仿真,跪求大神……,,
    發表于 11-24 23:31

    有源濾波器和籃球競賽記分牌源文件嘛?

    期末了要交作業,給位大佬拜托了,有沒有做完的有源濾波器源文件和籃球競賽數字記分牌源文件,我借鑒
    發表于 06-25 22:47

    如何去實現基于51單片機的電子記分牌的設計

    基于51單片機的電子記分牌的設計電子記分牌基于51單片機的電子記分牌的設計摘要1 引言2 總體設計方案2.1 設計思路(1)設計要求(2)設計思路(3)設計方案2.3綜合設計方框圖(1)硬件設計框圖
    發表于 11-19 09:05

    單片機課程設計—籃球賽電子計時記分牌方案設計資料下載.pdf

    籃球賽電子計時記分牌課程設計論文,有程序和原理圖
    發表于 04-20 11:18 ?22次下載

    使用51單片機設計的籃球記分牌電路圖和程序免費下載

    本文檔的主要內容詳細介紹的是使用51單片機設計的籃球記分牌電路圖和程序免費下載。8位LED數碼顯示,對A、B兩隊進行計分,具有加1分、加2分、加3分,復位和切換及中場換場的功能。
    發表于 07-31 17:35 ?17次下載
    使用51單片機設計的籃球<b class='flag-5'>記分牌</b>電路圖和程序免費下載

    基于51單片機的電子記分牌的設計

    基于51單片機的電子記分牌的設計電子記分牌基于51單片機的電子記分牌的設計摘要1 引言2 總體設計方案2.1 設計思路(1)設計要求(2)設計思路(3)設計方案2.3綜合設計方框圖(1)硬件設計框圖
    發表于 11-12 21:06 ?25次下載
    基于51單片機的電子<b class='flag-5'>記分牌</b>的設計

    使用ESP8266的可充電數字桌上足球記分牌

    電子發燒友網站提供《使用ESP8266的可充電數字桌上足球記分牌.zip》資料免費下載
    發表于 12-01 15:12 ?1次下載
    使用ESP8266的可充電數字桌上足球<b class='flag-5'>記分牌</b>

    使用Arduino創建電子記分牌

    電子發燒友網站提供《使用Arduino創建電子記分牌.zip》資料免費下載
    發表于 12-16 10:24 ?0次下載
    使用Arduino創建電子<b class='flag-5'>記分牌</b>

    智能籃球記分牌開源硬件

    電子發燒友網站提供《智能籃球記分牌開源硬件.zip》資料免費下載
    發表于 02-06 10:31 ?2次下載
    智能籃球<b class='flag-5'>記分牌</b>開源硬件

    基于單片機的籃球記分牌設計

    1? 系統設計1.1?設計要求1.1.1?設計任務?設計基于單片機的籃球計分牌,實現兩隊的計分功能與24秒計時功能。1.1.2?性能指標要求???? (1)按照題目要求獨立設計系統所需電路,并
    發表于 04-03 09:40 ?10次下載

    帶ESP32和TM1638的記分牌,帶BLE Android應用程序

    電子發燒友網站提供《帶ESP32和TM1638的記分牌,帶BLE Android應用程序.zip》資料免費下載
    發表于 07-12 10:57 ?0次下載
    帶ESP32和TM1638的<b class='flag-5'>記分牌</b>,帶BLE Android應用程序
    主站蜘蛛池模板: 亚洲日产2020乱码草莓毕| 亚洲在线无码免费观看| 成年人视频在线观看免费| 视频一区视频二区ae86| 久久人人爽人人片AV人成| 亚洲专区区免费| 久久是热频国产在线| 国产AV99激情久久无码天堂| 色姊姊真舒服| 国产人A片在线乱码视频| 18黄女脱内衣| 日本无修肉动漫在线观看| 第一次处破女18分钟免费| 伊人久久大香线蕉综合高清| 色99久久久久高潮综合影院| 国产永久视频| 中文无码有码亚洲 欧美| 欧美黑人巨大xxxxx| 国产黄A片在线观看永久免费麻豆 国产互换后人妻的疯狂VIDEO | 国产色婷婷亚洲99精品| zxfuli午夜福利在线| 视频一区国产在线二区| 女人色极品影院| 口工漫画r18全彩啪啪| 精品国产乱码久久久久久下载| 99re28久久热在线观看| 亚洲综合中文| 亚洲精品嫩草研究院久久| 无限资源日本2019版| 日韩综合网| 久久受www免费人成_看片中文| 国产亚洲精品字幕在线观看| 俄罗斯搜索引擎Yandex推广入口| adc我们的永久网址| 99热在线观看精品| 97一期涩涩97片久久久久久久| 在线免费福利| 最近中文字幕免费高清MV视频| 伊人久久影视| 私人玩物黑丝| 三级黄色在线视频中文|