《Arduino零基礎(chǔ)C語言編程》課件-ch5-5. 10 數(shù)字骰子- Shiftout模塊+數(shù)碼管_第1頁
《Arduino零基礎(chǔ)C語言編程》課件-ch5-5. 10 數(shù)字骰子- Shiftout模塊+數(shù)碼管_第2頁
《Arduino零基礎(chǔ)C語言編程》課件-ch5-5. 10 數(shù)字骰子- Shiftout模塊+數(shù)碼管_第3頁
《Arduino零基礎(chǔ)C語言編程》課件-ch5-5. 10 數(shù)字骰子- Shiftout模塊+數(shù)碼管_第4頁
《Arduino零基礎(chǔ)C語言編程》課件-ch5-5. 10 數(shù)字骰子- Shiftout模塊+數(shù)碼管_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

5.

10數(shù)字骰子—Shiftout模塊+數(shù)碼管數(shù)碼管,常見的用來顯示數(shù)字的,比如像計算器。數(shù)碼管,其實(shí)也算是LED中的一種。數(shù)碼管的每一段,都是一個獨(dú)立的LED,通過和Shiftout模塊連用,控制相應(yīng)段的亮滅就能達(dá)到顯示數(shù)字的效果。本節(jié)內(nèi)容利用二者來實(shí)現(xiàn)數(shù)字骰子的效果。

所需元件

1× 數(shù)字大按鈕模塊

1×數(shù)碼管1×Shiftout模塊

2025/2/7Arduino零基礎(chǔ)C語言編程15.

10數(shù)字骰子—Shiftout模塊+數(shù)碼管硬件連接把數(shù)碼管插到Shiftout模塊上,插的時候注意引腳一一對應(yīng)。數(shù)碼管中“D”所在排連接到Shiftout的綠色引腳上,“+”對應(yīng)紅色VCC,“-”對應(yīng)黑色GND。Input相應(yīng)接到UNO的數(shù)字口。數(shù)字大按鈕模塊接到數(shù)字口2。

2025/2/7Arduino零基礎(chǔ)C語言編程25.

10數(shù)字骰子—Shiftout模塊+數(shù)碼管輸入代碼

2025/2/7Arduino零基礎(chǔ)C語言編程3樣例代碼10:

//數(shù)字骰子

intlatchPin=8;//數(shù)字口8連接到74HC595芯片的使能引腳intclockPin=3;//數(shù)字口3連接到74HC595芯片的時鐘引腳intdataPin=9;//數(shù)字口9連接到74HC595芯片的數(shù)據(jù)引腳intbuttonPin=2;//按鈕連接到數(shù)字口2

//代表數(shù)字0~9byteTab[]={

0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};intnumber;

longrandNumber;voidsetup(){pinMode(latchPin,OUTPUT);pinMode(dataPin,OUTPUT);pinMode(clockPin,OUTPUT);randomSeed(analogRead(0)); //設(shè)置一個隨機(jī)數(shù)產(chǎn)生源模擬口

0}voidloop(){

randNumber=random(10);//產(chǎn)生0~9之間的隨機(jī)數(shù)showNumber(randNumber);//顯示該隨機(jī)數(shù)

//一旦有按鍵按下,顯示該數(shù),并保持到松開為止while(digitalRead(buttonPin)==HIGH){delay(100);}}//該函數(shù)用于數(shù)碼管顯示

voidshowNumber(intnumber){digitalWrite(latchPin,LOW);shiftOut(dataPin,clockPin,MSBFIRST,Tab[number]);digitalWrite(latchPin,HIGH);delay(80);}

數(shù)碼管會隨機(jī)產(chǎn)生0~9之間的數(shù),每次按下按鈕都會是不同的數(shù)。5.

10數(shù)字骰子—Shiftout模塊+數(shù)碼管硬件分析Shiftout模塊

Shiftout模塊就是一塊74HC595芯片。如果要看懂代碼,那就需要對74HC595芯片的工作原理有個簡單認(rèn)識。74HC595實(shí)現(xiàn)了串行輸入轉(zhuǎn)并行輸出的功能。

先說下什么是串行與并行。下圖可以簡單看出串行與并行的區(qū)別。串行,是一個一個數(shù)往發(fā),而并行是8位數(shù)一道往外發(fā)的。

2025/2/7Arduino零基礎(chǔ)C語言編程45.

10數(shù)字骰子—Shiftout模塊+數(shù)碼管硬件分析數(shù)碼管數(shù)碼管其實(shí)就是8個LED,每一段都是一個獨(dú)立的LED,一共是8段。一個74HC

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論