Yuav Txuas Kab Ntawv Sau Npe Mus Rau Arduino Li Cas

Cov txheej txheem:

Yuav Txuas Kab Ntawv Sau Npe Mus Rau Arduino Li Cas
Yuav Txuas Kab Ntawv Sau Npe Mus Rau Arduino Li Cas

Video: Yuav Txuas Kab Ntawv Sau Npe Mus Rau Arduino Li Cas

Video: Yuav Txuas Kab Ntawv Sau Npe Mus Rau Arduino Li Cas
Video: Hnub no mus xa khoom xeev qhuam os cov phooj ywg aw 10/11/2021 2024, Tej zaum
Anonim

Hauv ib ntawm cov ntawv dhau los, peb twb hais luv luv txog kev siv kev hloov npe, tshwj xeeb, 74HC595. Cia peb saib ze rau ntawm lub peev xwm thiab cov txheej txheem rau ua haujlwm nrog microcircuit no.

Hloov Sau npe 74HC595
Hloov Sau npe 74HC595

Tsim nyog

  • - Arduino;
  • - hloov npe rau npe 74HC595;
  • - txuas xov hlau.

Cov Lus Qhia

Kauj ruam 1

Hloov npe rau npe 74HC595 thiab cov zoo li siv los ua cov cuab yeej siv rau kev hloov cov ntaub ntawv txog kev sib txig mus rau thaum uas tig mus, thiab tseem tuaj yeem siv ua "sib dhos" rau cov ntaub ntawv, tuav lub xeev pauv.

Lub pinout (pinout) yog muaj nyob hauv daim duab ntawm sab laug. Lawv lub hom phiaj yog li nram qab no.

Q0… Q7 - cov ntaub ntawv sib txig sib luag;

GND - hauv av (0 V);

Q7 '- cov ntaub ntawv tso zis ntau lawm;

^ MR - rov pib tswv (nquag qes);

SHcp - hloov tso npe teev moos;

STcp - "npaws" moos tso tawm cov mem tes;

^ OE - tso zis ua haujlwm (nquag qes);

Ds - cov ntaub ntawv tso tawm cov ncauj lus;

Vcc - fais fab mov +5 V.

Kev teeb tsa, microcircuit yog tsim nyob rau hauv ntau yam mob ntawm; Kuv yuav siv ib qho hauv daim duab ntawm sab xis - tsim tawm - vim yooj yim dua rau kev siv nrog lub khob cij.

Hloov npe rau npe thiab pinout
Hloov npe rau npe thiab pinout

Kauj ruam 2

Cia kuv qhia luv luv txog SPI cov ntu ntu, uas peb yuav siv los hloov cov ntaub ntawv mus rau qhov hloov npe.

SPI yog plaub-hlau bi-kev qhia txog lub neej nyob rau hauv uas tus tswv thiab tus qhev koom nrog. Tus tswv hauv peb qhov teeb meem yuav yog Arduino, tus qhev yuav tau tso npe 74HC595.

Txoj kev loj hlob ib puag ncig rau Arduino muaj cov tsev qiv ntawv tsim ua haujlwm rau kev ua haujlwm ntawm SPI interface. Thaum thov nws, cov lus xaus raug siv uas tau cim hauv daim duab:

SCLK - SPI moos tsim tawm;

MOSI - cov ntaub ntawv los ntawm tus tswv rau qhev;

MISO - cov ntaub ntawv los ntawm cov qhev mus rau tus tswv;

SS - xaiv qhe.

Arduino board txheem SPI pins
Arduino board txheem SPI pins

Kauj ruam 3

Cia peb muab sib sau ua ke hauv Circuit Court xws li nyob hauv daim duab.

Kuv tseem yuav txuas ib lub cav ntsuas phoo mus rau txhua qhov kev ntsuas ntawm kev hloov npe rau npe microcircuit. Nrog kev pab ntawm nws, peb yuav pom tias muaj dab tsi tshwm sim ntawm lub cev, qhov cim taw qhia mus rau qhov twg, thiab peb yuav xyuas seb lawv txhais li cas. Nws yuav tsum saib tej yam xws li duab.

Daim duab thaiv hluav taws xob rau kev ua haujlwm sau npe 74HC595 rau Arduino
Daim duab thaiv hluav taws xob rau kev ua haujlwm sau npe 74HC595 rau Arduino

Kauj ruam 4

Cia peb sau cov duab kos zoo li qhov no thiab thauj nws mus rau hauv Arduino nco.

PIN_SPI_SS kuj tsis paub meej yog sab hauv tus qauv tsis tu ncua uas sib raug rau tus pin "10" ntawm Arduino thaum siv los ua tus tswv ntawm SPI interface uas peb siv ntawm no. Hauv txoj ntsiab cai, peb yuav cia li zoo li siv lwm yam lwm tus pin ntawm Arduino; ces peb yuav tau tshaj tawm nws thiab teeb tsa nws ua haujlwm.

Los ntawm kev pub mis tus lej TAM SIM NO, peb qhib peb cov ntawv ua haujlwm hloov rau xa / txais. Tom qab kis tau tus mob, peb tsa qhov voltage rau HIGH dua, thiab kev sib pauv ua tiav.

Daim duab piav qhia tso tawm kom pom kev ua haujlwm ntawm kev hloov npe
Daim duab piav qhia tso tawm kom pom kev ua haujlwm ntawm kev hloov npe

Kauj ruam 5

Cia peb tig peb lub rooj sib tham hauv kev ua haujlwm thiab saib dab tsi cov cuab yeej ntsuas tsom xam pom peb. Qhov kev pom dav dav ntawm daim duab teev sijhawm yog qhia hauv daim duab.

Cov kab xiav xiab qhia 4 SPI kab, kab liab kab qhia pom 8 txoj kab txuas ntawm cov ntaub ntawv sib luag ntawm qhov hloov npe.

Point A rau ntawm lub sijhawm teev yog lub caij thaum tus lej "210" pauv mus rau qhov hloov npe, B yog lub sijhawm thaum tus lej "0" tau sau, C yog lub voj voog rov hais dua txij thaum pib.

Raws li koj tuaj yeem pom, los ntawm A txog B - 10.03 milliseconds, thiab los ntawm B txog C - 90.12 milliseconds, yuav luag raws li peb tau nug hauv cov duab kos. Qhov sib ntxiv me me nyob rau hauv 0, 03 thiab 0, 12 ms yog lub sijhawm rau kev hloov cov ntaub ntawv serial los ntawm Arduino, yog li peb tsis muaj raws nraim 10 thiab 90 ms ntawm no.

Sij hawm teev daim duab ntawm Arduino pauv thiab hloov pauv npe 74HC595
Sij hawm teev daim duab ntawm Arduino pauv thiab hloov pauv npe 74HC595

Kauj Ruam 6

Cia wb mus saib kom ze rau Tshooj A.

Ntawm qhov saum toj kawg nkaus yog cov mem tes ntev nrog uas Arduino pib xa ntawm kis ntawm kab SPI-ENABLE - tus qhev xaiv. Lub sijhawm no, SPI-CLOCK moos pulses pib tsim (kab thib ob los ntawm sab saud), 8 daim (rau hloov 1 byte).

Cov kab txuas ntxiv los ntawm sab saum toj yog SPI-MOSI - cov ntaub ntawv uas peb hloov los ntawm Arduino mus rau kev hloov npe. Nov yog peb tus lej "210" hauv binary - "11010010".

Tom qab ua tiav kev hloov chaw, tom kawg ntawm SPI-ENABLE mem tes, peb pom tias kev hloov npe tau teeb tsa tus nqi rau ntawm nws 8 ceg. Kuv tau hais txog qhov no nrog rau kab xiav xim kab thiab sau npe rau qhov tseem ceeb rau kev pom meej.

Teeb tus naj npawb 210 rau hauv lub tsheb npav uas sib txuas ntawm SPI
Teeb tus naj npawb 210 rau hauv lub tsheb npav uas sib txuas ntawm SPI

Kauj Ruam 7

Tam sim no cia peb tig los saib rau ntu B.

Ib zaug ntxiv, nws txhua tus pib nrog xaiv tus qhev thiab tsim hluav taws xob ua haujlwm 8 teev.

Cov ntaub ntawv ntawm SPI-MOSI kab tam sim no "0". Ntawd yog, thaum lub sijhawm no peb sau tus naj npawb "0" rau hauv kev tso npe.

Tab sis kom txog rau thaum hloov mus rau ua tiav, cov ntawv sau npe khaws cov nqi "11010010". Nws yog cov tso zis rau thaum uas tig mus rau txoj hlua txuas Q0.. Q7, thiab yog cov khoom tawm thaum muaj lub moos pulses hauv txoj kab los ntawm cov khoom seem khiav Q7 'mus rau SPI-MISO kab, uas peb pom ntawm no.

Teeb tus lej 0 rau hauv lub tsheb npav khiav sib txuas ntawm SPI
Teeb tus lej 0 rau hauv lub tsheb npav khiav sib txuas ntawm SPI

Kauj ruam 8

Yog li, peb tau kawm ua ntu lus txog qhov teeb meem ntawm cov ntaub ntawv pauv hloov ntawm tus ntaus cuab yeej, uas yog Arduino, thiab 74HC595 hloov npe. Peb tau kawm yuav ua li cas txuas rau kev hloov npe, sau cov ntaub ntawv rau hauv nws thiab nyeem cov ntaub ntawv los ntawm nws.

Pom zoo: