国产chinesehdxxxx老太婆,办公室玩弄爆乳女秘hd,扒开腿狂躁女人爽出白浆 ,丁香婷婷激情俺也去俺来也,ww国产内射精品后入国产

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

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

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

如何使用移位寄存器

454398 ? 來(lái)源:網(wǎng)絡(luò)整理 ? 作者:網(wǎng)絡(luò)整理 ? 2019-12-02 16:54 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

今天,我將嘗試教您一些有關(guān)移位寄存器的知識(shí)。這些是Arduino編程中相當(dāng)重要的部分,基本上是因?yàn)樗鼈償U(kuò)展了您可以使用的輸出數(shù)量,以換取3個(gè)控制引腳。您還可以將菊花鏈移位寄存器在一起以獲取更多的輸出。

這與以前的教程相比有很大的困難,我強(qiáng)烈建議您對(duì)以前的材料有個(gè)很好的了解。 (本文末尾的鏈接),以及了解我上次編寫(xiě)的二進(jìn)制的基本知識(shí)。

什么是移位寄存器?

技術(shù)上是輸出移位寄存器換句話(huà)說(shuō),串行接收數(shù)據(jù)并并行輸出。實(shí)際上,這意味著我們可以快速向芯片發(fā)送一堆輸出命令,告訴它激活,然后將輸出發(fā)送到相關(guān)的引腳。無(wú)需遍歷每個(gè)引腳,我們只需一次將所需的輸出作為單個(gè)字節(jié)或更多信息發(fā)送到所有引腳。

如果可以幫助您理解,您可以考慮一下移位寄存器作為數(shù)字輸出的“數(shù)組”,但是我們可以跳過(guò)常規(guī)的digitalWrite命令,而只需發(fā)送一系列位以將其打開(kāi)或關(guān)閉即可。

它如何工作?

我們將使用的移位寄存器-Oomlout入門(mén)套件中包含的74HC595N-僅需要3個(gè)控制引腳。第一個(gè)是時(shí)鐘-您無(wú)需擔(dān)心太多,因?yàn)锳rduino串行庫(kù)對(duì)其進(jìn)行了控制-但時(shí)鐘基本上只是一個(gè)開(kāi)/關(guān)電脈沖,用于設(shè)置數(shù)據(jù)信號(hào)的速度。

鎖存器引腳用于告知移位寄存器何時(shí)應(yīng)根據(jù)我們剛發(fā)送的位打開(kāi)或關(guān)閉輸出,即將它們鎖存到位。

最后,數(shù)據(jù)引腳位于此處我們用位發(fā)送了實(shí)際的串行數(shù)據(jù),以確定移位寄存器輸出的開(kāi)/關(guān)狀態(tài)。

整個(gè)過(guò)程可以用4個(gè)步驟來(lái)描述:

設(shè)置移位寄存器上第一個(gè)輸出引腳的數(shù)據(jù)引腳為高電平或低電平。

脈沖時(shí)鐘以將數(shù)據(jù)“移位”到寄存器。

繼續(xù)設(shè)置數(shù)據(jù)并向脈沖輸出脈沖。時(shí)鐘,直到為所有輸出引腳設(shè)置了所需的狀態(tài)為止。

對(duì)閂鎖引腳進(jìn)行脈沖以激活輸出序列。

實(shí)現(xiàn)

您需要此產(chǎn)品的以下組件oject:

7HC595N移位寄存器芯片

8個(gè)LED和適當(dāng)?shù)?a target="_blank">電阻,或者您想要輸出到任何東西的

通常的面包板,連接器和基本的Arduino

如果您有Oomlout入門(mén)套件,則可以從此處下載面包板布局。

以下是匯編視頻

電路板布局:

如何使用移位寄存器

和我的組裝版本:

I已修改了Ooolmout提供的原始代碼,但如果您想嘗試使用該代碼,則可以在此處完整下載。包括了代碼的說(shuō)明,因此,請(qǐng)從下面復(fù)制或粘貼整個(gè)內(nèi)容,或使用pastebin讀取代碼的說(shuō)明。

/* ---------------------------------------------------------

* | Shift Register Tutorial, based on |

* | Arduino Experimentation Kit CIRC-05 |

* | 。: 8 More LEDs :。 (74HC595 Shift Register) |

* ---------------------------------------------------------

* | Modified by James @ MakeUseOf.com |

* ---------------------------------------------------------

*/

//Pin Definitions

// 7HC595N has three pins

int data = 2; // where we send the bits to control outputs

int clock = 3; // keeps the data in sync

int latch = 4; // tells the shift register when to activate the output sequence

void setup()

{

// set the three control pins to output

pinMode(data, OUTPUT);

pinMode(clock, OUTPUT);

pinMode(latch, OUTPUT);

Serial.begin(9600); // so we can send debug messages to serial monitor

}

void loop(){

outputBytes(); // our basic output which writes 8-bits to show how a shift register works.

//outputIntegers(); // sends an integer value as data instead of bytes, effectively counting in binary.

}

void outputIntegers(){

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

digitalWrite(latch, LOW);

Serial.println(i); // Debug, sending output to the serial monitor

shiftOut(data, clock, MSBFIRST, i);

digitalWrite(latch, HIGH);

delay(100);

}

}

void outputBytes(){

/* Bytes, or 8-bits, are represented by a B followed by 8 0 or 1s.

In this instance, consider this to be like an array that we‘ll use to control

the 8 LEDs. Here I’ve started the byte value as 00000001

*/

byte dataValues = B00000001; // change this to adjust the starting pattern

/* In the for loop, we begin by pulling the latch low,

using the shiftOut Arduino function to talk to the shift register,

sending it our byte of dataValues representing the state of the LEDs

then pull the latch high to lock those into place.

Finally, we shift the bits one place to the left, meaning the next iteration

will turn on the next LED in the series.

To see the exact binary value being sent, check the serial monitor.

*/

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

digitalWrite(latch, LOW);

Serial.println(dataValues, BIN); // Debug, sending output to the serial monitor

shiftOut(data, clock, MSBFIRST, dataValues);

digitalWrite(latch, HIGH);

dataValues = dataValues 《《 1; // Shift the bits one place to the left - change to 》》 to adjust direction

delay(100);

}

}

位移位(OutputBytes函數(shù))

在第一個(gè)循環(huán)示例– outputBytes()–代碼使用8位序列(一個(gè)字節(jié)),然后在for循環(huán)的每次迭代中向左移。重要的是要注意,如果您進(jìn)行的移位超出了可能,則只會(huì)丟失該位。

使用《《或》》加上要移位的位數(shù)來(lái)完成移位。/p》

查看以下示例,并確保您了解發(fā)生了什么:

byte val = B00011010

val = val 《《 3 // B11010000

val = val 《《 2 // B01000000, we lost those other bits!

val = val 》》 5 // B00000010

發(fā)送整數(shù)而不是(OutputIntegers函數(shù))

數(shù)字到移位寄存器而不是字節(jié),它將簡(jiǎn)單地將數(shù)字轉(zhuǎn)換為二進(jìn)制字節(jié)序列。在此函數(shù)中(取消注釋并上載以查看效果),我們有一個(gè)for循環(huán),其計(jì)數(shù)范圍是0-255(可以用一個(gè)字節(jié)表示的最大整數(shù)),然后發(fā)送該循環(huán)。它基本上是二進(jìn)制的,因此除非您的LED排成一排,否則該序列似乎有點(diǎn)隨機(jī)。

例如,如果您閱讀二進(jìn)制的說(shuō)明文章,就會(huì)知道數(shù)字44將表示為00101100,因此LED 3、5、6將在序列中的該點(diǎn)點(diǎn)亮。

菊花鏈超過(guò)一個(gè)移位寄存器

移位寄存器的顯著之處在于,如果它們獲得的信息多于8位(或者其注冊(cè)表很大),它們將再次移出其他位。這意味著您可以將它們中的一系列連接在一起,推入一個(gè)較長(zhǎng)的位鏈,然后將其分別分配到每個(gè)寄存器,而無(wú)需您進(jìn)行額外的編碼。

盡管我們不會(huì)在這里詳細(xì)說(shuō)明過(guò)程或原理圖,如果您有多個(gè)移位寄存器,則可以從此處的Arduino官方網(wǎng)站嘗試該項(xiàng)目。

該系列中的其他文章:

什么是Arduino?您可以使用它做什么?

什么是Arduino入門(mén)工具包?它包含什么?

您可以通過(guò)入門(mén)工具包購(gòu)買(mǎi)更多更酷的組件

開(kāi)始使用Arduino入門(mén)套件?安裝驅(qū)動(dòng)程序并設(shè)置電路板和端口

Fritzing,這是一個(gè)免費(fèi)的電路圖繪制工具

仔細(xì)查看Arduino應(yīng)用程序和示例閃爍程序的結(jié)構(gòu)

Arduino Xmas樹(shù)燈項(xiàng)目(又是關(guān)于數(shù)組的學(xué)習(xí))

什么是Binary?

到目前為止,我們將使用移位寄存器,我認(rèn)為我們涵蓋了很多。一如既往,我鼓勵(lì)您使用和調(diào)整代碼,并隨時(shí)詢(xún)問(wèn)您在注釋中可能遇到的任何問(wèn)題,甚至共享指向基于出色移位寄存器的項(xiàng)目的鏈接。
責(zé)任編輯:wv

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

    關(guān)注

    3

    文章

    293

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    STP08CP05 低壓低電流8位移位寄存器數(shù)據(jù)手冊(cè)

    STP08CP05 是一款單片、低電壓、低電流、高功率 8 位移位寄存器,專(zhuān)為 LED 面板顯示而設(shè)計(jì)。STP08CP05包含一個(gè) 8 位 serial-in, parallel-out
    的頭像 發(fā)表于 04-16 18:10 ?410次閱讀
    STP08CP05 低壓低電流8位<b class='flag-5'>移位寄存器</b>數(shù)據(jù)手冊(cè)

    74VHC595;74VHCT595移位寄存器規(guī)格書(shū)

    電子發(fā)燒友網(wǎng)站提供《74VHC595;74VHCT595移位寄存器規(guī)格書(shū).pdf》資料免費(fèi)下載
    發(fā)表于 02-14 16:11 ?0次下載
    74VHC595;74VHCT595<b class='flag-5'>移位寄存器</b>規(guī)格書(shū)

    74HC165;74HCT165移位寄存器規(guī)格書(shū)

    電子發(fā)燒友網(wǎng)站提供《74HC165;74HCT165移位寄存器規(guī)格書(shū).pdf》資料免費(fèi)下載
    發(fā)表于 02-14 16:06 ?0次下載
    74HC165;74HCT165<b class='flag-5'>移位寄存器</b>規(guī)格書(shū)

    74LV165A 8位并行輸入/串行輸出移位寄存器規(guī)格書(shū)

    電子發(fā)燒友網(wǎng)站提供《74LV165A 8位并行輸入/串行輸出移位寄存器規(guī)格書(shū).pdf》資料免費(fèi)下載
    發(fā)表于 02-11 15:36 ?0次下載
    74LV165A 8位并行輸入/串行輸出<b class='flag-5'>移位寄存器</b>規(guī)格書(shū)

    74HC594;74HCT594移位寄存器規(guī)格書(shū)

    電子發(fā)燒友網(wǎng)站提供《74HC594;74HCT594移位寄存器規(guī)格書(shū).pdf》資料免費(fèi)下載
    發(fā)表于 02-09 14:53 ?1次下載
    74HC594;74HCT594<b class='flag-5'>移位寄存器</b>規(guī)格書(shū)

    74LV595移位寄存器規(guī)格書(shū)

    電子發(fā)燒友網(wǎng)站提供《74LV595移位寄存器規(guī)格書(shū).pdf》資料免費(fèi)下載
    發(fā)表于 02-08 18:07 ?0次下載
    74LV595<b class='flag-5'>移位寄存器</b>規(guī)格書(shū)

    74HC595-Q100;74HCT595-Q100移位寄存器規(guī)格書(shū)

    電子發(fā)燒友網(wǎng)站提供《74HC595-Q100;74HCT595-Q100移位寄存器規(guī)格書(shū).pdf》資料免費(fèi)下載
    發(fā)表于 02-08 17:26 ?0次下載
    74HC595-Q100;74HCT595-Q100<b class='flag-5'>移位寄存器</b>規(guī)格書(shū)

    74HC595;74HCT595移位寄存器規(guī)格書(shū)

    電子發(fā)燒友網(wǎng)站提供《74HC595;74HCT595移位寄存器規(guī)格書(shū).pdf》資料免費(fèi)下載
    發(fā)表于 02-08 16:49 ?0次下載
    74HC595;74HCT595<b class='flag-5'>移位寄存器</b>規(guī)格書(shū)

    74HC597-Q100;74HCT597-Q100移位寄存器規(guī)格書(shū)

    電子發(fā)燒友網(wǎng)站提供《74HC597-Q100;74HCT597-Q100移位寄存器規(guī)格書(shū).pdf》資料免費(fèi)下載
    發(fā)表于 02-08 16:04 ?0次下載
    74HC597-Q100;74HCT597-Q100<b class='flag-5'>移位寄存器</b>規(guī)格書(shū)

    74HC597;74HCT597移位寄存器規(guī)格書(shū)

    電子發(fā)燒友網(wǎng)站提供《74HC597;74HCT597移位寄存器規(guī)格書(shū).pdf》資料免費(fèi)下載
    發(fā)表于 02-08 16:03 ?0次下載
    74HC597;74HCT597<b class='flag-5'>移位寄存器</b>規(guī)格書(shū)

    XILINX FPGA CLB單元之移位寄存器

    一、移位寄存器 SLICEM函數(shù)發(fā)生也可以配置為32位移位寄存器,而無(wú)需使用slice中可用的觸發(fā)。以這種方式使用,每個(gè)LUT可以將串行數(shù)據(jù)延遲1到32個(gè)時(shí)鐘周期。 移入D(DI1
    的頭像 發(fā)表于 01-16 17:45 ?808次閱讀
    XILINX FPGA CLB單元之<b class='flag-5'>移位寄存器</b>

    帶低端電源DMOS開(kāi)關(guān)的TPIC6595電源+邏輯8位移位寄存器

    電子發(fā)燒友網(wǎng)站提供《帶低端電源DMOS開(kāi)關(guān)的TPIC6595電源+邏輯8位移位寄存器.pdf》資料免費(fèi)下載
    發(fā)表于 10-25 10:16 ?0次下載
    帶低端電源DMOS開(kāi)關(guān)的TPIC6595電源+邏輯8位<b class='flag-5'>移位寄存器</b>

    TPIC6C596電源+邏輯移位寄存器應(yīng)用

    電子發(fā)燒友網(wǎng)站提供《TPIC6C596電源+邏輯移位寄存器應(yīng)用.pdf》資料免費(fèi)下載
    發(fā)表于 09-30 11:00 ?0次下載
    TPIC6C596電源+邏輯<b class='flag-5'>移位寄存器</b>應(yīng)用

    用現(xiàn)代移位寄存器克服最后一分鐘的特征蠕變

    電子發(fā)燒友網(wǎng)站提供《用現(xiàn)代移位寄存器克服最后一分鐘的特征蠕變.pdf》資料免費(fèi)下載
    發(fā)表于 09-21 11:20 ?0次下載
    用現(xiàn)代<b class='flag-5'>移位寄存器</b>克服最后一分鐘的特征蠕變

    移位寄存器的工作原理和類(lèi)型

    移位寄存器是計(jì)算機(jī)中常用的一種寄存器類(lèi)型,它能夠按位進(jìn)行數(shù)據(jù)的左移或右移操作。作為數(shù)字電路中的基本元件,移位寄存器由多個(gè)觸發(fā)構(gòu)成,每個(gè)觸發(fā)
    的頭像 發(fā)表于 08-02 18:11 ?7015次閱讀
    <b class='flag-5'>移位寄存器</b>的工作原理和類(lèi)型