Cov txheej txheem:
- Kauj ruam 1: Tau txais cov khoom
- Kauj Ruam 2: Txuas Qhov Chaw
- Kauj Ruam 3: Sau Txoj Cai
- Kauj ruam 4: Code thiab Farewell
Video: AVR/Arduino RFID Reader Nrog UART Code hauv C: 4 Cov Kauj Ruam
2024 Tus sau: John Day | [email protected]. Kawg hloov kho: 2024-01-30 09:31
RFID yog qhov xav tsis thoob, pom nyob txhua qhov chaw - los ntawm cov khoom lag luam mus rau cov cim cim cim. Yog tias koj tau mus rau tom khw muag khoom thiab taug kev hla cov hlau-ntes-saib yam khoom ntawm qhov nkag/tawm cov ntsiab lus, tom qab ntawd koj tau pom RFID. Muaj ntau qhov chaw los nrhiav cov ntaub ntawv zoo ntawm kev teeb tsa RFID, thiab cov lus qhia no tsom mus rau kev teeb tsa Parallax RFID nyeem ntawv (Serial TTL) ntawm AVR, nrog rau qhov tshwj xeeb ntawm C code xav tau los nyeem cov lus nkag. Cov cai nyob hauv C thiab tsis siv lwm lub tsev qiv ntawv sab nraud. Qhov tseeb, nws hais lus 2400 baud ncaj qha yam tsis siv UART los ntawm kev sib txuas rau RFID tus nyeem ntawv tus lej baud thiab nyeem tus lej digital uas nws txuas nrog. Zoo siab? Kuv thiab.
Kauj ruam 1: Tau txais cov khoom
Koj yuav xav tau cov npe hauv qab no:
- Nyeem Ntawv RFID (Parallax #28140 $ 39.99)
- RFID lossis (Parallax #32397 $ 0.99)
- AVR lossis Arduino clone (yog tias koj siv AVR Tshuag, koj tseem yuav xav tau max232, 5 x 1uF capacitors, thiab DE9 txuas)
- Solderless breadboard
Yeem yeem
- 4 txoj hauj lwm header
- Hlau
(thiab max232 thiab lwm yam rau kev sib txuas lus ntawm cov ntaub ntawv tag) Koj kuj tseem tuaj yeem txuas koj lub vijtsam LCD uas nyiam tshaj plaws ntawm kev xa cov ntaub ntawv tag ntawm RS232.
Kauj Ruam 2: Txuas Qhov Chaw
Sab kho vajtse ntawm yam yog yooj yim zoo nkauj. Hloov chaw ntawm plonking kuv tus nyeem ntawv RFID ncaj qha rau hauv kuv daim ntawv qhia zaub mov Kuv tau xaiv los ua tus xov tooj nrawm yog li kuv tuaj yeem txav tus nyeem ntawv RFID ncig me ntsis zoo dua. Txog qhov ntawd, Kuv tsuas yog txiav tawm 4 txoj haujlwm los ntawm tus poj niam lub qhov (socket) header strip kuv tau dag txog thiab muab muag rau ntawm peb lub xov hlau. Daim kab xev hluav taws xob ua tiav qhov txuas ghetto. Qhov nyeem ntawv RFID muaj 4 qhov sib txuas:
- Vcc
- Qhib
- Tawm
- Gnd
Raws li koj tej zaum tau kwv yees nws, txuas Vcc rau +5V thiab Gnd rau hauv av. Vim tias tus nyeem ntawv RFID siv lub zog ntau heev, koj tuaj yeem tsoo tus lej ENABLE kom tua nws thiab qhib ntawm ntau lub sijhawm. Kuv tsuas yog xaiv kom nws nyob. Vim tias nws tau hloov pauv, koj rub nws LOW kom qhib nws. Xwb, koj tuaj yeem txuas nws rau hauv av. Kuv txuas nws rau PIND3 kom muab kev xaiv rau kuv kom qhib/xiam oob qhab yog tias kuv txiav txim siab ua. OUT tus pin yog qhov uas tus nyeem ntawv xa nws cov ntaub ntawv xov xwm tom qab nws nyeem tag. Kuv txuas nws mus rau PIND2. Nco, hauv Parallax Universe, liab txhais tau tias mus. Ntawd yog, lub ntsuab ntsuab txhais tau tias chav tsev tsis ua haujlwm thiab tsis ua haujlwm, thaum lub teeb liab liab txhais tau tias chav tsev ua haujlwm. * shrug* Mus daim duab.
Kauj Ruam 3: Sau Txoj Cai
Txhawm rau nyeem cov ntaub ntawv los ntawm tus nyeem ntawv RFID, koj yuav tsum paub thaum twg tau xa daim ntawv, rub cov ntaub ntawv tawm ntawm qhov chaw nres nkoj, tom qab ntawd xa nws mus rau qhov twg.
RFID Nyeem Ntawv Cov Ntaub Ntawv
Parallax RFID nyeem ntawv xa cov ntaub ntawv ntawm qhov ruaj khov, glacial nrawm ntawm 2400 baud. Ib daim npav RFID yog 10 bytes. Txhawm rau tso cai rau kev txheeb xyuas qhov yuam kev/kho, txij li tus nyeem ntawv tuaj yeem teeb tsa los ntawm lub suab nrov nrov, 10-byte RFID tau raug khi los ntawm kev pib thiab nres nres. Qhov pib tus neeg xa xov liaison yog kab pub (0x0A) thiab nres nres yog xa rov qab (0x0D). Nws zoo li no:
[Pib Sentinel | Byte 1 | Byte 2 | Byte 3 | Byte 4 | Byte 5 | Byte 6 | Byte 7 | Byte 8 | Byte 9 | Byte 10 | Nres Sentinel]Cov no yog peb theem pib.
Paub thaum twg tag tau xa
Kuv siv Tus Pin Hloov cuam tshuam ntawm AVR uas ceeb toom rau lub khoos phis tawj uas tau hloov pauv tshwm sim ntawm tus saib xyuas tus pin. Kev teeb tsa AVR rau qhov no yooj yim thiab xav kom teeb tsa tus chij, qhia rau MCU tus pin twg koj xav saib xyuas, thiab teeb tsa lub ntiaj teb cuam tshuam me ntsis. Kho lub PCINT
BSET (PCICR, PCIE2); // tus pin hloov cuam tshuam tswj kev sau npe pcie2 BSET (PCMSK2, PCINT18); // pab tus pin hloov cuam tshuam rau PCINT18 (PD2) BSET (SREG, 7); // Teeb SREG I-ntsisSau koj cov kev pabcuam cuam tshuam niaj hnub Koj xav khaws koj li ISR luv yog li hauv kuv qhov cuam tshuam vector Kuv nyeem tag nrho byte, ntsis me ntsis, thiab khaws cov byte hauv lub ntiaj teb tus yam ntxwv hloov pauv. Kuv ua cov hauv qab no ntawm txhua qhov cuam tshuam:
- Txheeb xyuas kom ntseeg tau tias kuv tab tom pib me ntsis
- Nruab nrab lub sijhawm mus rau qhov nruab nrab ntawm lub plawv dhia ntawm 2400 baud (qhov nrawm ntawm RFID nyeem ntawv)
- Hla qhov pib me ntsis thiab ncua mus rau nruab nrab ntawm qhov ntxiv me ntsis
- Nyeem txhua qhov me ntsis rau hauv cov lej uas tsis tau kos npe
- Thaum kuv tau txais 8 cov khoom, muab cov byte tso rau hauv kab cim
- Thaum kuv tau sau 12 bytes, qhia rau MCU paub tias daim pib tau nyeem rau qhov ua yuam kev lawm.
Kuv hloov kho SoftSerial code los ntawm Mikal Hart uas hloov kho cov cai los ntawm David Mellis rau qhov kev sim txiav txim siab qeeb hauv cov txheej txheem ib txwm muaj.
Parse RS232 Cov Zis
PCINT niaj hnub muaj cov cai rau nyeem RS232 cov zis los ntawm tus nyeem ntawv RFID. Thaum twg kuv tau txais 12 bytes (10-byte RFID ntxiv rau tus xa ntawv) Kuv teeb bDataReady rau 1 thiab cia lub ntsiab voj txheej txheem cov ntaub ntawv thiab tso tawm nws.
// qhov no yog tus cuam tshuam cuam tshuam ISR (PCINT2_vect) {yog (BCHK (PIND, RFID_IN)) // Pib me ntsis mus qis dua; uint8_t ntsis = 0; TunedDelay (CENTER_DELAY); // Qhov chaw pib me ntsis rau (uint8_t x = 0; x <8; x ++) {TunedDelay (INTRABIT_DELAY); // hla me ntsis, kwv tij… yog (BCHK (PIND, RFID_IN)) BSET (me ntsis, x); lwm qhov BCLR (ntsis, x); } TunedDelay (INTRABIT_DELAY); // hla nres me ntsis RFID_tag [rxIdx] = ntsis; ++ rxIdx; yog (rxIdx == 12) bDataReady = 1;}
Zaub Koj Tag
Hauv lub ntsiab (), thaum lub sijhawm (puas tau) lub voj, Kuv tshawb xyuas seb bDataReady tau teeb tsa, taw qhia tias tag nrho cov qauv RFID tau xa. Kuv mam li tshuaj xyuas seb nws puas siv tau (piv txwv li pib thiab nres cov cim yog 0x0A thiab 0x0D, feem), thiab yog li, kuv xa nws tawm kuv qhov kev sib txuas RS232.
rau (;;) {yog (bDataReady) {#ifdef _DEBUG_ USART_tx_S ("Pib byte:"); USART_tx_S (itoa (RFID_tag [0], & ibuff [0], 16)); ib [0] = 0; ib [1] = 0; USART_tx_S ("\ n Nres byte:"); USART_tx_S (itoa (RFID_tag [11], & ibuff [0], 16));#endif if (ValidTag ()) {USART_tx_S ("\ nRFID Tag:"); rau (uint8_t x = 1; x <11; x ++) {USART_tx_S (itoa (RFID_tag [x], ibuff, 16)); if (x! = 10) USART_tx (& apos: & apos); } USART_tx_S ("\ n"); } rxIdx = 0; bDataReady = 0; }}
Kauj ruam 4: Code thiab Farewell
Nplooj ntawv no muaj cov ntawv zip nrog cov lej muaj feem cuam tshuam. Nws tau sau hauv AVR Studio 4.16. Yog tias koj siv tus programmer's notepad, dab noj hnub, lossis vi (lossis lwm yam) koj yuav tsum tau luam daim Makefile uas ntseeg siab rau hauv phau ntawv teev npe thiab ntxiv cov ntaub ntawv no mus rau kab ntawv. 16 MHz MCU. Yog tias koj tab tom khiav ntawm lub moos sib txawv, koj yuav tsum tau txiav txim siab txiav txim siab qhov ncua sij hawm ncua mus rau qhov nruab nrab ntawm tus nqi baud pulses. Kuv vam tias cov ntawv qhia no tau pab koj qee txoj hauv kev. Yog tias koj muaj lus qhia yuav ua li cas nws tuaj yeem txhim kho tsis txhob ua siab deb qhia rau kuv paub!
Pom zoo:
Arduino Raws li ISP -- Hlawv Hex Cov Ntaub Ntawv hauv AVR -- Fuse hauv AVR -- Arduino Raws li Programmer: 10 Kauj Ruam
Arduino Raws li ISP || Hlawv Hex Cov Ntaub Ntawv hauv AVR || Fuse hauv AVR || Arduino As Programmer: ……………………… Please SUBSCRIBE To my YouTube channel for more videos …….. Kab lus no yog txhua yam hais txog arduino li isp. Yog tias koj xav xa cov ntawv hex lossis yog tias koj xav teeb tsa koj lub fuse hauv AVR ces koj tsis tas yuav yuav tus programmer, koj tuaj yeem ua
Fais Qhov Rooj Xauv Nrog Fingerprint Scanner thiab RFID Reader: 11 Cov Kauj Ruam (nrog Duab)
Fais Qhov Rooj Xauv Nrog Fingerprint Scanner thiab RFID Reader: Txoj haujlwm tau tsim los kom tsis txhob siv lub yuam sij, kom mus txog peb lub hom phiaj peb siv lub ntsuas qhov ntiv tes ntsuas qhov muag thiab Arduino. Txawm li cas los xij muaj cov tib neeg uas muaj cov ntiv tes tsis raug cai thiab lub cim xeeb yuav tsis lees paub nws. Tom qab ntawd xav txog ib
Yooj Yim Cov Chaw Siv Cov Ntaub Ntawv Hauv Chaw Siv Hauv / Arduino / PfodApp: 6 Cov Kauj Ruam
Yooj Yim Cov Ntaub Ntawv Tseem Ceeb Siv Hauv Hauv/Arduino/PfodApp: Rau Plotting Cov Ntaub Ntawv tawm tsam Hnub/Sijhawm siv tsuas yog Arduino's millis () pom qhov qhia no Android mobile thiab ntes nws rau
Kev Tuaj Koom Nrog Nrog Khaws Cov Ntaub Ntawv hauv Google Daim Ntawv Qhia Siv RFID thiab Arduino Ethernet Shield: 6 Cov Kauj Ruam
Kev Tuaj Koom Nrog Nrog Khaws Cov Ntaub Ntawv hauv Google Daim Ntawv Qhia Siv RFID thiab Arduino Ethernet Shield: Nyob Zoo Cov Neeg, Ntawm no peb los nrog txoj haujlwm zoo siab heev thiab yog li yuav xa cov ntaub ntawv rfid rau google daim ntawv qhia siv Arduino li cas. Hauv ntej peb yuav ua qhov kev tuaj koom raws rfid nyeem ntawv uas yuav txuag cov ntaub ntawv tuaj koom hauv lub sijhawm tiag tiag rau goog
Kev Nkag Mus Rau Cov Hauv Paus Cov Hauv Paus Cov Ntaub Ntawv Siv DB410 Raws Li Ethernet Dongle: 6 Cov Kauj Ruam
Kev Nkag Mus Rau Cov Hauv Paus Cov Hauv Paus Cov Ntaub Ntawv Siv DB410 Raws Li Ethernet Dongle: Lub Hom Phiaj: Txhim kho cov cuab yeej cuab tam thiab rov ua dua cov ntsiav kom ntxig USB Ethernet CDC Gadget txhawb nqa; Rov tsim boot.img los ntawm Linaro rau khau raj USB Ethernet CDC; Tsim NFS server los tuav lub hauv paus cov ntaub ntawv system; IP teeb tsa hauv DEVICE thiab HOST