Cov txheej txheem:

Arduino thiab TM1638 LED Zaub Modules: 11 Kauj Ruam
Arduino thiab TM1638 LED Zaub Modules: 11 Kauj Ruam

Video: Arduino thiab TM1638 LED Zaub Modules: 11 Kauj Ruam

Video: Arduino thiab TM1638 LED Zaub Modules: 11 Kauj Ruam
Video: Уроки Ардуино. Управление нагрузкой в сети переменного тока 2024, Lub Xya hli ntuj
Anonim
Arduino thiab TM1638 LED Zaub Modules
Arduino thiab TM1638 LED Zaub Modules

Yog tias koj xav tau txoj hauv kev nrawm thiab yooj yim ntxiv qee cov neeg siv tswv yim thiab tso tawm rau ib qhov haujlwm, cov qauv duab no nthuav thiab lom zem.

Lawv suav nrog yim 7-ntu liab LED liab, yim liab/ntsuab LEDs thiab tseem yim khawm rau cov neeg siv tswv yim. Cov koog kuj tuaj yeem yog daisy-saw, tso cai txog tsib zaug hauv ib zaug, thiab cov xov hluav taws xob luv tau suav nrog txhua tus qauv, ntxiv rau qee qhov luv luv thiab ntsia liaj qhov rooj, raws li qhia hauv daim duab.

Kauj ruam 1:

Duab
Duab

Cov spacers tsuas yog ntev txaus los tsa PCB saum toj ib sab, txawm li cas los txhawm rau txhim kho cov laug cam nyob txhua qhov chaw uas muaj txiaj ntsig koj yuav xav tau ntev dua. Koj kuj tseem xav tshem IDC qhov nyob yog tias koj xav kom teeb tsa lub module ze rau ntawm lub vaj huam sib luag. Qhov no yuav yog txoj haujlwm yooj yim desoldering raws li lawv tau dhau los ntawm lub qhov (socket).

Kauj ruam 2:

Duab
Duab

Pawg tswj hwm los ntawm TM1638 IC.

Nov yog LED thiab interface tsav IC los ntawm "Titan Micro Electronics". Koj tseem tuaj yeem yuav cov ICs no los ntawm PMD Txoj Kev. Koj tseem tuaj yeem rub tawm daim ntawv qhia kom ntxaws.

Kauj Ruam 3: Pib Pib - Kho vajtse

Pib Pib - Kho vajtse
Pib Pib - Kho vajtse

Kho vajtse-Kev sib txuas rau Arduino-tau tshaj lub rooj tsavxwm (lossis lwm yam MCU) yog qhov yooj yim heev. Cov pinouts tau qhia nyob rau sab tom qab ntawm PCB, thiab phim qhov haum ntawm kab xov kab. Yog tias koj saib qhov kawg ntawm kab ntawv zoo li no.

Sab saum toj-txoj cai yog tus pin ib, nrog rau sab saum toj-sab laug yog tus pin ob, hauv qab-txoj cai tus pin cuaj thiab hauv qab-sab laug tus pin kaum. Yog li cov pinouts yog:

  1. Vcc (5V)
  2. GND
  3. CLK
  4. DIO
  5. STB1
  6. STB2
  7. SWB 3
  8. SWB 4
  9. SWB 5
  10. tsis txuas nrog

Rau Arduino siv, tus pin 1 ~ 4 yog yam tsawg kawg uas yuav tsum tau siv ib tus qauv. Txhua tus qauv ntxiv yuav xav tau lwm tus lej txuas nrog STB2, STB3, thiab lwm yam Ntxiv rau qhov no tom qab. Thov nco ntsoov tias txhua tus qauv teeb tsa kom muaj qhov ci ci nrog txhua LED ntawm kev siv 127mA, yog li nws yuav tsum ntse siv lub zog sab nraud nrog ntau dua ib qho qauv thiab lwm qhov txuas nrog Arduino cov laug cam.

Kauj Ruam 4: Pib Pib - Software

Software - rub tawm thiab teeb tsa lub tsev qiv ntawv T1638 los ntawm no. Ua tsaug thiab ua tsaug rau rjbatista ntawm gmail dot com rau lub tsev qiv ntawv. Kev pib ua qauv hauv daim duab yog yooj yim. Suav nrog lub tsev qiv ntawv nrog:

#suav nrog

tom qab ntawd siv ib qho ntawm cov hauv qab no rau txhua tus qauv:

TM1638 module (x, y, z);

x yog Arduino tus lej digital txuas nrog rau tus lej cable tus lej 4, y yog Arduino tus lej digital txuas nrog rau tus qauv cable tus pin 3, thiab z yog tus lej strobe. Yog li yog tias koj muaj ib tus qauv nrog cov ntaub ntawv, moos thiab strobe txuas nrog tus pin 8, 7, thiab 6 koj yuav siv:

TM1638 module (8, 7, 6);

Yog tias koj muaj ob tus qauv, nrog ib tus qauv strobe txuas nrog Arduino digital 6, thiab qauv ob lub strobe txuas nrog digital 5, koj yuav siv:

TM1638 module (8, 7, 6); TM1638 module (8, 7, 5);

thiab ntxiv rau ntau cov qauv. Tam sim no los tswj cov zaub…

Kauj Ruam 5: Ob-xim LEDs

Ob-xim LEDs
Ob-xim LEDs

Tswj cov liab/ntsuab LEDs yog qhov yooj yim. Rau kev siv lawv suav tus lej xoom rau xya los ntawm sab laug mus rau sab xis. Txhawm rau qhib lossis tua ib qho LED, siv cov hauv qab no:

module.setLED (TM1638_COLOR_RED, x); // teeb tsa tus lej x rau redmodule.setLED (TM1638_COLOR_GREEN, x); // teeb tsa tus lej LED x rau ntsuab module.setLED (TM1638_COLOR_RED+TM1638_COLOR_GREEN, 0); // teeb tsa tus lej LED x rau liab thiab ntsuab

Siv cov txheej txheem saum toj no tuaj yeem yooj yim nws tsis muaj txiaj ntsig zoo. Ib txoj hauv kev zoo dua yog hais txog txhua qhov LEDs hauv ib nqe lus. Txhawm rau ua qhov no peb xa ob bytes ntawm cov ntaub ntawv hauv hexadecimal rau cov zaub. MSB (qhov tseem ceeb tshaj byte) suav nrog yim khoom, txhua tus sawv cev rau ib qho ntsuab LED nyob ntawm (1) lossis tawm (0). LSB (tsawg kawg qhov tseem ceeb byte) sawv cev rau cov liab LEDs.

Ib txoj hauv kev yooj yim los txiav txim siab tus lej hexadecimal los tswj cov LEDs yog yooj yim, duab koj muaj ib kab ntawm LEDs - thawj yim yog ntsuab thiab thib ob yim yog liab. Teem txhua tus lej rau 1 rau rau thiab 0 rau tawm. Hloov ob tus lej binary rau hexadecimal thiab siv cov haujlwm no:

module.setLEDs (0xgreenred);

Qhov twg ntsuab yog tus lej hexadecimal rau cov LEDs ntsuab thiab liab yog tus lej hexadecimal rau cov liab LEDs. Piv txwv li, txhawm rau qhib thawj peb lub LEDs li liab, thiab peb zaug kawg li ntsuab, qhov kev sawv cev binary yuav yog:

00000111 11100000 uas nyob rau hauv hexadecimal yog E007.

Yog li peb yuav siv:

module.setLEDs (0xE007);

uas tsim cov duab raws li qhia saum toj no.

Kauj Ruam 6: Qhov 7-ntu Zaub

Txhawm rau tshem tawm cov lej lej (tab sis tsis yog LEDs hauv qab no), siv yooj yim:

module.clearDisplay ();

lossis tig rau txhua ntu THIAB tag nrho cov LEDs, siv cov hauv qab no

module.setupDisplay (muaj tseeb, 7); // qhov twg 7 yog siv (ntawm 0 ~ 7)

Txhawm rau tso cov lej zauv, siv cov haujlwm:

module.setDisplayToDecNumber (a, b, cuav);

qhov twg a yog tus lej, b yog txoj haujlwm rau tus lej zauv (0 rau tsis muaj, 1 rau tus lej 8, 2, rau tus lej 7, 4 rau tus lej 6, 8 rau tus lej 4, thiab lwm yam), thiab qhov ntsuas kawg (qhov tseeb/ cuav) tig rau lossis tawm ua tus zeros. Cov duab kos hauv qab no qhia txog kev siv txoj haujlwm no:

#suav nrog // txhais tus qauv ntawm cov ntaub ntawv tus pin 8, tus pin pin 9 thiab tus lej strobe 7 TM1638 module (8, 9, 7); unsigned ntev a = 1; void teeb () {} void loop () {rau (a = 10000; a <11000; a ++) {module.setDisplayToDecNumber (a, 4, cuav); ncua (1); } rau (a = 10000; a <11000; a ++) {module.setDisplayToDecNumber (a, 0, tseeb); ncua (1); }}

… Nrog cov txiaj ntsig pom hauv video.

Kauj ruam 7:

Image
Image

Ib qho ntawm cov yam ntxim nyiam tshaj plaws yog lub peev xwm los rub cov ntawv hla ib lossis ntau dua cov lus. Txhawm rau ua qhov ntawd tsis tas yuav xav tau kev piav qhia raws li cov qauv qhia ua piv txwv:

tm_1638_scrolling_modules_example.pde

suav nrog TM1638 lub tsev qiv ntawv tau yooj yim ua raws. Tsuas yog ntxig koj cov ntawv hauv kab ntawv ua kab , xyuas kom meej tias cov qauv (cov) tau xaim raws li tus qauv txhais thaum pib ntawm daim duab thiab koj tau teeb tsa. Txhawm rau pom cov cim muaj, mus ntsib nplooj ntawv ua haujlwm. Nco ntsoov tias cov zaub tsuas yog xya ntu, yog li qee tus cim yuav tsis zoo tag nrho, tab sis hauv cov ntsiab lus yuav muab tswv yim zoo rau koj-saib cov vis dis aus hauv cov kauj ruam no.

Kauj ruam 8:

Thaum kawg, koj tseem tuaj yeem hais qhia tus kheej rau txhua ntu ntawm txhua tus lej. Xav txog cov ntsiab lus ntawm kab ntawv no:

byte qhov tseem ceeb = {1, 2, 4, 8, 16, 32, 64, 128};

txhua lub ntsiab lus sawv cev rau tus lej 1 ~ 8. Tus nqi ntawm txhua lub caij txiav txim seb ntu twg ntawm tus lej qhib. Rau ntu a ~ f, dp qhov txiaj ntsig yog 1, 2, 4, 6, 16, 32, 64, 128. Yog li cov txiaj ntsig ntawm kev siv cov kab lus saum toj no hauv cov haujlwm hauv qab no:

module.setDisplay (qhov tseem ceeb);

yuav nyob ntawm daim duab.

Kauj ruam 9:

Duab
Duab

Ib txwm koj tuaj yeem ua ke qhov tseem ceeb rau txhua tus lej los tsim koj tus kheej cov cim, cim, thiab lwm yam. Piv txwv, siv cov txiaj ntsig hauv qab no:

byte qhov tseem ceeb = {99, 99, 99, 99, 99, 99, 99, 99, 99};

peb tsim raws li cov duab hauv cov kauj ruam no.

Kauj Ruam 10: Cov Khawm

Qhov tseem ceeb ntawm cov nyees khawm tau xa rov qab raws li tus nqi byte los ntawm txoj haujlwm:

module.getButtons ();

Raws li muaj yim khawm, txhua tus sawv cev rau me ntsis ntawm tus lej binary uas tau rov qab los ua ib byte. Lub pob nyob rau sab laug rov qab los ua zauv ib, thiab sab xis rov qab 128. Nws tseem tuaj yeem rov ua tib lub sijhawm nias, yog li nyem khawm ib thiab yim rov qab 129. Xav txog qhov kos duab hauv qab no, uas rov qab qhov txiaj ntsig ntawm lub pob nyem hauv daim ntawv zauv, tom qab ntawd qhia tus nqi:

#suav nrog // txhais tus qauv ntawm cov ntaub ntawv tus pin 8, tus pin pin 9 thiab tus lej strobe 7 TM1638 module (8, 9, 7); byte nyees khawm; teeb tsa tsis muaj dabtsis () {} void loop () {nyees khawm = module.getButtons (); module.setDisplayToDecNumber (cov nyees khawm, 0, tsis tseeb); }

thiab cov txiaj ntsig hauv video.

Cov laug cam no muaj txiaj ntsig thiab cia siab tias yuav pom lub tsev nyob hauv koj cov phiaj xwm. Cov ntawv tshaj tawm no tau coj tuaj rau koj los ntawm pmdway.com - muab txhua yam rau cov kws tsim khoom thiab cov khoom siv hluav taws xob, nrog kev xa khoom dawb thoob ntiaj teb.

Pom zoo: