在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

怎樣使用Arduino制作Knight Rider LED掃描儀

454398 ? 來源:網絡整理 ? 作者:網絡整理 ? 2019-11-28 10:11 ? 次閱讀

曾經希望您擁有自己的Knight Industries 2000(KITT)汽車-您知道嗎,來自Knight Rider?通過構建LED掃描儀,使您的夢想更接近現實!這是最終結果:

您需要什么

該項目不需要很多零件,您可能已經有很多零件了:

1 x Arduino UNO或類似的

1 x面包板

8 x紅色LEDs

8 x 220歐姆電阻

1 x 10k歐姆電位器

公對公連接線

如果您有Arduino入門套件,則很可能所有這些部件都可以(用入門工具可以做什么)套件。)

只要有八個可用的引腳(幾乎從未使用過Arduino?請從這里開始),幾乎任何Arduino都可以使用。您可以使用移位寄存器來控制LED,盡管該項目不需要此操作,因為Arduino具有足夠的引腳。

構建計劃

使用Arduino制作Knight Rider LED掃描儀

這是一個非常簡單的項目。盡管從大量的電線來看可能看起來很復雜,但是每個單獨的部分都非常簡單。每個發光二極管(LED)連接到其自己的Arduino引腳。這意味著每個LED均可單獨打開和關閉。電位計連接到Arduino模擬輸入引腳,用于調整掃描儀的速度。

電路

電位器的外部左引腳(從正面看,引腳在底部)接地。將相反的外部引腳連接到+ 5v。如果不能正常工作,則將這些引腳接反。在2中將中間引腳連接到Arduino模擬量。

將每個LED的陽極(長腳)連接到數字引腳1至8。將陰極(短腳)連接到Arduino地面。

代碼

創建一個新草圖并將其另存為“ knightRider”。代碼如下:

const int leds[] = {1,2,3,4,5,6,7,8}; // Led pins

const int totalLeds = 8;

int time = 50; // Default speed

void setup() {

// Initialize all outputs

for(int i = 0; i 《= totalLeds; ++i) {

pinMode(leds[i], OUTPUT);

}

}

void loop() {

for(int i = 0; i 《 totalLeds - 1; ++i) {

// Scan left to right

time = analogRead(2);

digitalWrite(leds[i], HIGH);

delay(time);

digitalWrite(leds[i + 1], HIGH);

delay(time);

digitalWrite(leds[i], LOW);

}

for(int i = totalLeds; i 》 0; --i) {

// Scan right to left

time = analogRead(2);

digitalWrite(leds[i], HIGH);

delay(time);

digitalWrite(leds[i - 1], HIGH);

delay(time);

digitalWrite(leds[i], LOW);

}

}

讓我們對其進行分解。每個LED引腳都存儲在一個數組中:

const int leds[] = {1,2,3,4,5,6,7,8};

數組本質上是相關項目的集合。這些元素被定義為常量(“ const”),這意味著它們以后無法更改。盡管建議使用常量,但不必使用常量(如果刪除“ const”,代碼將正常工作)。

使用方括號(“ []”)訪問數組的元素和一個稱為索引的整數。索引從零開始,因此“ leds [2]”將返回數組中的第三個元素—針腳3。數組使代碼更快地編寫且更易于閱讀,它們使計算機難以完成工作!

一個for循環用于將每個引腳設置為輸出:

for(int i = 0; i 《= totalLeds; ++i) {

pinMode(leds[i], OUTPUT);

}

此代碼位于“ setup()”函數內部,因為它僅需要在以下位置運行一次程序的開始。 For循環非常有用。它們允許您一次又一次地運行相同的代碼,每次都使用不同的值。它們非常適合使用數組。聲明了整數“ i”,并且只有循環內部的代碼才能訪問此變量(稱為“作用域”)。 i的值從零開始,對于循環的每次迭代,i都增加1。一旦i的值小于或等于“ totalLeds”變量,則循環“中斷”(停止)。

i的值用于訪問“ leds”數組。該循環訪問數組中的每個元素,并將其配置為輸出。您可以手動鍵入“ pinMode(pin,OUTPUT)”八次,但是為什么您可以寫八行卻可以寫三行呢?

盡管有些編程語言可以告訴您數組中有多少個元素(通常使用像array.length這樣的語法),Arduino并沒有使其變得如此簡單(它涉及到更多的數學運算)。由于數組中元素的數目是已知的,所以這不是問題。

在主循環內部( void loop())是另外兩個for循環。第一個循環將LED從1 – 8設置為ON,然后關閉。第二個循環將LED從8 – 1設置為ON,然后關閉。請注意,如何將電流引腳設置為ON,同時將電流引腳加一個也設置為ON。這樣可以確保始終同時有兩個LED,從而使掃描儀看起來更逼真。

在每個循環開始時,電位計的值都將被讀取到“時間”變量中:/p》 time = analogRead(2);

此操作執行兩次,每個循環一次。這需要不斷檢查和更新。如果此操作不在循環中,它仍然可以工作,但是會有一個小的延遲-它僅在循環完成執行后才運行。電位計是模擬的,因此為什么要使用“ analogRead(pin)”。這將返回零(最小值)到1023(最大值)之間的值。 Arduino能夠將這些值轉換為更有用的值,但是對于這種使用情況,它們是完美的選擇。

更改LED的間隔(或掃描儀的速度)之間的延遲以毫秒為單位(1/1000秒) ),因此最長時間僅為1秒。

高級掃描器

現在,您已經了解了基本知識,讓我們來看一下在更復雜的地方。該掃描儀將從外部開始并在工作中成對點亮LED。然后將其反轉,從內部到外部成對發光。以下是代碼:

const int leds[] = {1,2,3,4,5,6,7,8}; // Led pins

const int totalLeds = 8;

const int halfLeds = 4;

int time = 50; // Default speed

void setup() {

// Initialize all outputs

for(int i = 0; i 《= totalLeds; ++i) {

pinMode(leds[i], OUTPUT);

}

}

void loop() {

for(int i = 0; i 《 (halfLeds - 1); ++i) {

// Scan outside pairs in

time = analogRead(2);

digitalWrite(leds[i], HIGH);

digitalWrite(leds[(totalLeds - i) - 1], HIGH);

delay(time);

digitalWrite(leds[i], LOW);

digitalWrite(leds[(totalLeds - i) - 1], LOW);

delay(time);

}

for(int i = (halfLeds - 1); i 》 0; --i) {

// Scan inside pairs out

time = analogRead(2);

digitalWrite(leds[i], HIGH);

digitalWrite(leds[(totalLeds - i) - 1], HIGH);

delay(time);

digitalWrite(leds[i], LOW);

digitalWrite(leds[(totalLeds - i) - 1], LOW);

delay(time);

}

}

此代碼稍微復雜一些。請注意,兩個循環如何從零變為“ halfLeds – 1”(3)。這使掃描儀更好。如果兩個循環都從4 – 0和0 – 4變為循環,則相同的LED將以相同的順序閃爍兩次-看起來效果不佳。

您現在應該擁有一臺工作正常的Knight Rider LED掃描儀!修改它以使用更多或更大的LED或實現您自己的圖案將很容易。該電路很容易移植到Raspberry Pi(是Pi的新功能?從此處開始)或ESP8266

責任編輯:wv

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

    關注

    2

    文章

    435

    瀏覽量

    68329
  • Arduino
    +關注

    關注

    189

    文章

    6493

    瀏覽量

    190215
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    超酷的樹莓派激光雷達掃描儀

    摘要這款DIY的PiLiDAR掃描儀項目利用樹莓派進行激光雷達測繪。激光雷達通過發射激光來掃描周圍環境,從而創建三維模型。該項目需要樹莓派4、攝像頭、電機以及激光雷達套件。你是否了解過激光雷達掃描儀
    的頭像 發表于 06-01 08:33 ?135次閱讀
    超酷的樹莓派激光雷達<b class='flag-5'>掃描儀</b>!

    遠程輸入輸出掃描儀說明

    電子發燒友網站提供《遠程輸入輸出掃描儀說明.pdf》資料免費下載
    發表于 03-26 15:06 ?0次下載

    蔡司工業CT三坐標掃描儀測量軟件

    蔡司工業CT三坐標掃描儀INSPECTOptical3D是蔡司旗下一款專為三維測量數據檢測和評估而設計的強大軟件。該軟件在汽車行業中具有廣泛的應用,為汽車制造商提供了高效、精確和可靠的測量解決方案
    的頭像 發表于 02-21 11:02 ?568次閱讀
    蔡司工業CT三坐標<b class='flag-5'>掃描儀</b>測量軟件

    微軟已修復掃描儀USB連接問題

    微軟對其支持文檔予以更新,并宣告已將 Windows 11 版本 24H2 中的掃描儀 USB 連接問題處理好。 在此之前,Windows 11 24H2 的 eSCL 協議出現了故障,設備在需要
    的頭像 發表于 12-12 16:55 ?776次閱讀

    國產純硅振蕩器替換SITime用于三維掃描儀

    國產純硅振蕩器替換SITime用于三維掃描儀
    的頭像 發表于 12-04 10:18 ?460次閱讀
    國產純硅振蕩器替換SITime用于三維<b class='flag-5'>掃描儀</b>中

    如何將三維激光掃描儀與BIM結合使用

    將三維激光掃描儀與BIM(建筑信息模型)結合使用,可以充分發揮兩者的優勢,提高工程測量的精度和效率。以下是將三維激光掃描儀與BIM結合使用的具體步驟和注意事項: 一、前期準備 確定掃描目標 : 明確
    的頭像 發表于 11-28 10:18 ?1064次閱讀

    三維激光掃描儀在工程測量中的優勢

    三維激光掃描儀在工程測量中展現出了顯著的優勢,這些優勢使得它在該領域得到了廣泛的應用。以下是對三維激光掃描儀在工程測量中優勢的分析: 高精度測量 : 三維激光掃描儀采用非接觸式測量方式,避免了傳統
    的頭像 發表于 11-28 10:12 ?760次閱讀

    三維激光掃描儀與無人機結合的應用

    三維激光掃描儀與無人機結合的應用為多個領域帶來了革命性的變化。以下是對這種結合應用的具體分析: 一、應用概述 三維激光掃描儀與無人機技術的結合,通過無人機搭載三維激光掃描儀進行空中作業,能夠
    的頭像 發表于 11-28 10:10 ?2079次閱讀

    三維激光掃描儀使用技巧 三維激光掃描儀測量精度分析

    三維激光掃描儀使用技巧 三維激光掃描儀的使用技巧涵蓋了多個方面,旨在確保掃描過程的準確性和高效性。以下是一些關鍵的使用技巧: 穩定操作環境 :確保掃描過程中有一個穩定的操作環境,避免震
    的頭像 發表于 11-28 10:07 ?1387次閱讀

    三維激光掃描儀應用領域 三維激光掃描儀與傳統測量工具比較

    三維激光掃描儀應用領域 三維激光掃描儀因其高精度、高效率和非接觸式的測量方式,在多個領域得到了廣泛應用: 測繪領域 :用于地形、公路鐵路、河道及建筑基地的測繪,提供精確的空間數據。 工業測量 :在
    的頭像 發表于 11-28 10:04 ?1213次閱讀

    大幅掃描儀掃描地圖怎么操作

    1. 準備掃描儀和地圖 在開始掃描之前,確保您的大幅掃描儀已經安裝并正確配置。您可能需要安裝特定的驅動程序或軟件,以便掃描儀能夠與您的計算機通信。 檢查
    的頭像 發表于 10-14 15:47 ?1703次閱讀

    蔡司激光三維掃描儀有效掃描金屬材料

    蔡司激光三維掃描儀因其高精度和多功能性,在工業檢測、逆向工程、質量控制等領域得到了廣泛應用。對于金屬材料的掃描,用戶常常關心的是ZEISS激光三維掃描儀是否能夠有效地完成這項任務。本文蔡司代理-三本
    的頭像 發表于 09-26 15:08 ?826次閱讀
    蔡司激光三維<b class='flag-5'>掃描儀</b>有效<b class='flag-5'>掃描</b>金屬材料

    何為電磁干擾(EMI)掃描儀,哪里需要它?

    什么是電磁干擾掃描儀?電磁干擾掃描儀(Electromagneticinterferencescanner)又稱EMI掃描儀,是屬于電磁兼容(EMC)測所試設備,具備干擾頻譜分析、定頻干擾成像功能
    的頭像 發表于 08-30 13:02 ?820次閱讀
    何為電磁干擾(EMI)<b class='flag-5'>掃描儀</b>,哪里需要它?

    如何選擇電磁干擾(EMI)掃描儀,看看這幾點

    在上期講完了電磁干擾(EMI)掃描儀的定義和應用以后,我們應該如何去選擇一款合適的電磁干擾(EMI)掃描儀?在當今復雜的電子設備環境中,選擇合適的電磁干擾(EMI)掃描儀對于確保產品質量、符合標準
    的頭像 發表于 08-30 13:02 ?994次閱讀
    如何選擇電磁干擾(EMI)<b class='flag-5'>掃描儀</b>,看看這幾點

    lidar激光雷達掃描儀有什么用

    LiDAR(Light Detection and Ranging,激光探測與測距)是一種利用激光技術進行距離測量和成像的技術。LiDAR激光雷達掃描儀具有高精度、高分辨率、快速掃描等特點,廣泛應用
    的頭像 發表于 08-29 16:58 ?1797次閱讀
    主站蜘蛛池模板: 淫欲网| 天天干天天上 | 狠狠狠色丁香婷婷综合激情 | 国产亚洲欧美日本一二三本道 | 69久久夜色精品国产69小说 | 亚洲国产成人最新精品资源 | 免费观看国产网址你懂的 | 久久久久久久久久免免费精品 | 天天操天天操天天操天天操 | h视频免费网站 | 精品国产成人系列 | 日韩午夜在线视频不卡片 | 一级做a爰片久久毛片免费看 | 国产成人精品亚洲日本在线 | 亚洲欧美视频一区二区三区 | 成人自拍视频 | 欧美h视频 | 日韩有色 | 性欧美xxxx| 四虎国产精品免费观看 | 亚洲youjizz | 成人久久网 | h视频免费| 免费一级特黄 | 中文字幕在线播放第一页 | a一级日本特黄aaa大片 | 精品国内一区二区三区免费视频 | 毛片免费网站 | 欧美午夜电影 | 欧美 亚洲 一区 | 免费观看交性大片 | 男女交性拍拍拍高清视频 | 午夜老司机永久免费看片 | 韩国理论三级在线观看视频 | 琪琪午夜伦埋大全影院 | 日本特黄特色特爽大片老鸭 | 狠狠色噜噜狠狠狠狠五月婷 | 五月婷婷一区 | 成人在线综合网 | 四虎院影永久在线观看 | ⅹxxxx68日本老师hd |