91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

3天內(nèi)不再提示

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

454398 ? 來源:網(wǎng)絡(luò)整理 ? 作者:網(wǎng)絡(luò)整理 ? 2019-11-28 10:11 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

曾經(jīng)希望您擁有自己的Knight Industries 2000(KITT)汽車-您知道嗎,來自Knight Rider?通過構(gòu)建LED掃描儀,使您的夢(mèng)想更接近現(xiàn)實(shí)!這是最終結(jié)果:

您需要什么

該項(xiàng)目不需要很多零件,您可能已經(jīng)有很多零件了:

1 x Arduino UNO或類似的

1 x面包板

8 x紅色LEDs

8 x 220歐姆電阻

1 x 10k歐姆電位器

公對(duì)公連接線

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

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

構(gòu)建計(jì)劃

使用Arduino制作Knight Rider LED掃描儀

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

電路

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

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

代碼

創(chuàng)建一個(gè)新草圖并將其另存為“ 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);

}

}

讓我們對(duì)其進(jìn)行分解。每個(gè)LED引腳都存儲(chǔ)在一個(gè)數(shù)組中:

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

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

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

一個(gè)for循環(huán)用于將每個(gè)引腳設(shè)置為輸出:

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

pinMode(leds[i], OUTPUT);

}

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

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

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

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

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

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

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

高級(jí)掃描器

現(xiàn)在,您已經(jīng)了解了基本知識(shí),讓我們來看一下在更復(fù)雜的地方。該掃描儀將從外部開始并在工作中成對(duì)點(diǎn)亮LED。然后將其反轉(zhuǎn),從內(nèi)部到外部成對(duì)發(fā)光。以下是代碼:

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);

}

}

此代碼稍微復(fù)雜一些。請(qǐng)注意,兩個(gè)循環(huán)如何從零變?yōu)椤?halfLeds – 1”(3)。這使掃描儀更好。如果兩個(gè)循環(huán)都從4 – 0和0 – 4變?yōu)檠h(huán),則相同的LED將以相同的順序閃爍兩次-看起來效果不佳。

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

責(zé)任編輯:wv

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 掃描儀
    +關(guān)注

    關(guān)注

    2

    文章

    456

    瀏覽量

    68912
  • Arduino
    +關(guān)注

    關(guān)注

    190

    文章

    6526

    瀏覽量

    197078
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    禾賽科技與如視即將推出手持實(shí)景掃描儀龐加萊R1

    2025 年 11 月 4 日,全球領(lǐng)先的激光雷達(dá)企業(yè)禾賽科技與數(shù)字空間綜合解決方案引領(lǐng)者如視聯(lián)合宣布將推出手持實(shí)景掃描儀龐加萊 R1。該產(chǎn)品搭載禾賽迷你型超半球 3D 激光雷達(dá) JT128 ,配合
    的頭像 發(fā)表于 11-06 15:46 ?815次閱讀

    SICK激光掃描儀:為工業(yè)高精度檢測(cè)及測(cè)量保駕護(hù)航

    作為工業(yè)傳感器領(lǐng)域的全球領(lǐng)先企業(yè),SICK公司憑借其創(chuàng)新的激光掃描技術(shù),為各行各業(yè)提供了多種高效、可靠的解決方案。從簡(jiǎn)單的物體檢測(cè)到復(fù)雜的安全防護(hù),__SICK激光掃描儀__產(chǎn)品正不斷推動(dòng)著工業(yè)
    的頭像 發(fā)表于 11-06 14:25 ?375次閱讀
    SICK激光<b class='flag-5'>掃描儀</b>:為工業(yè)高精度檢測(cè)及測(cè)量保駕護(hù)航

    三維掃描儀 | 先臨三維RobotScan Q12自動(dòng)化掃描機(jī)器人零部件

    掃描儀
    jf_37811293
    發(fā)布于 :2025年10月28日 10:44:21

    200萬粉汽車達(dá)人的改裝秘訣:用這臺(tái)手持掃描儀,讓法拉利輪輞完美適配

    mbDesign 的合作案例,看看蔡司 ZEISS T-SCAN hawk 2 手持式 3D 掃描儀,如何為法拉利 F12 Berlinetta 的輪罩與輪輞優(yōu)化提供關(guān)鍵支持。 一 、 合作背景:以設(shè)計(jì)為
    的頭像 發(fā)表于 09-26 17:10 ?1139次閱讀
    200萬粉汽車達(dá)人的改裝秘訣:用這臺(tái)手持<b class='flag-5'>掃描儀</b>,讓法拉利輪輞完美適配

    Brother全新發(fā)布兩款網(wǎng)絡(luò)掃描儀,助力企業(yè)加速邁入數(shù)字化辦公新生態(tài)

    上海2025年8月25日?/美通社/ -- 紙質(zhì)文檔電子化是構(gòu)建數(shù)字化辦公的基礎(chǔ)環(huán)節(jié)。Brother全新推出高速辦公網(wǎng)絡(luò)掃描儀ADS-3350W和ADS-2750W。在速度、容量和功能方面做出優(yōu)化
    的頭像 發(fā)表于 08-25 13:46 ?497次閱讀
    Brother全新發(fā)布兩款網(wǎng)絡(luò)<b class='flag-5'>掃描儀</b>,助力企業(yè)加速邁入數(shù)字化辦公新生態(tài)

    三維掃描儀 | 先臨三維工程師使用AutoScan Inspec2掃描耳機(jī)外殼

    掃描儀
    jf_37811293
    發(fā)布于 :2025年08月18日 08:53:02

    M12連接器在激光掃描儀傳感器上的廣泛運(yùn)用

    在工業(yè)自動(dòng)化與精密制造領(lǐng)域,激光技術(shù)(如切割、焊接、測(cè)量等)對(duì)設(shè)備連接的可靠性、抗干擾性及緊湊性提出了極高要求。M12連接器憑借其標(biāo)準(zhǔn)化設(shè)計(jì)、高防護(hù)等級(jí)及靈活的芯數(shù)配置,成為激光掃描儀傳感器上的核心
    發(fā)表于 08-08 15:12 ?0次下載

    蔡司三維掃描儀第三方代抄數(shù)檢測(cè)機(jī)構(gòu)

    在智能制造與數(shù)字化轉(zhuǎn)型的浪潮中,蔡司三維激光掃描儀以其卓越的技術(shù)性能和廣泛的應(yīng)用場(chǎng)景,成為工業(yè)檢測(cè)領(lǐng)域的標(biāo)桿工具。蔡司官方授權(quán)代理-廣東三本測(cè)量獲悉:作為全球光學(xué)與光電技術(shù)領(lǐng)域的領(lǐng)導(dǎo)者,蔡司推出
    的頭像 發(fā)表于 08-02 11:57 ?1074次閱讀
    蔡司三維<b class='flag-5'>掃描儀</b>第三方代抄數(shù)檢測(cè)機(jī)構(gòu)

    三維掃描儀 | 先臨三維AutoScan Inspec2進(jìn)行葉輪全尺寸檢測(cè)

    掃描儀
    jf_37811293
    發(fā)布于 :2025年07月28日 08:37:19

    三維掃描儀 | 先臨三維工程師使用FreeScan UE Pro2掃描汽車缸體

    掃描儀
    jf_37811293
    發(fā)布于 :2025年06月05日 10:17:17

    超酷的樹莓派激光雷達(dá)掃描儀!

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

    三維掃描儀 | 先臨三維工程師使用FreeScan Combo掃描變速箱殼體

    掃描儀
    jf_37811293
    發(fā)布于 :2025年05月28日 08:51:39

    積木易搭上新3D空間掃描儀RayZoom G100,搭載3D高斯?jié)姙R+開發(fā)者方案

    近日,積木易搭旗下子公司——武漢睿數(shù)信息技術(shù)有限公司(簡(jiǎn)稱“睿數(shù)信息”)上新了一款手持式3D空間掃描儀——RayZoom G100。 ?RayZoom G100是一款通用型3D空間掃描儀,能夠滿足
    的頭像 發(fā)表于 04-24 09:14 ?1237次閱讀

    遠(yuǎn)程輸入輸出掃描儀說明

    電子發(fā)燒友網(wǎng)站提供《遠(yuǎn)程輸入輸出掃描儀說明.pdf》資料免費(fèi)下載
    發(fā)表于 03-26 15:06 ?0次下載