Cov txheej txheem:

Ntu 3: GPIO: ARM Sib dhos: Kab Follower: TI-RSLK: 6 Kauj Ruam
Ntu 3: GPIO: ARM Sib dhos: Kab Follower: TI-RSLK: 6 Kauj Ruam

Video: Ntu 3: GPIO: ARM Sib dhos: Kab Follower: TI-RSLK: 6 Kauj Ruam

Video: Ntu 3: GPIO: ARM Sib dhos: Kab Follower: TI-RSLK: 6 Kauj Ruam
Video: BTT Manta M8P v2 - Basics with CB1 v2.2 2024, Hlis ntuj nqeg
Anonim
Image
Image
Kho vajtse
Kho vajtse

Nyob zoo. Nov yog ntu txuas ntxiv uas peb txuas ntxiv siv ARM sib dhos (tsis yog hom lus qib siab dua). Kev tshoov siab rau qhov Qhia Qhia no yog Lab 6 ntawm Texas Instruments Robotics System Learning Kit, lossis TI-RSLK.

Peb yuav siv lub microcontroller los ntawm cov khoom siv, MSP432 LaunchPad pawg thawj coj txhim kho, tab sis tej zaum koj yuav pom qee yam muaj txiaj ntsig los rho tawm los ntawm Cov Lus Qhia no txawm hais tias koj tsis siv LaunchPad, lossis ua raws T. I. cov ntaub ntawv kawm.

Peb pib nrog Cov Lus Qhia qhia txog ARM Lub Rooj Sib Tham, ib puag ncig kev txhim kho, thiab yuav ua li cas thiaj li tsim tau txoj haujlwm.

Cov Lus Qhia tom ntej ntawm ARM Sib Koom ua ke qhia yuav ua li cas cuam tshuam nrog kev nkag/tawm (GPIO).

Tom qab ntawd peb nthuav peb cov kev paub, thiab qhia txog kev ua haujlwm, tswj LEDs thiab hloov pauv.

Tam sim no nrog Cov Lus Qhia no, peb tuaj yeem siv qhov peb tau kawm los ua qee yam lom zem dua, muaj txiaj ntsig ntau dua: txheeb xyuas kab.

Qhov no tuaj yeem pab peb tom qab thaum peb tsim kab-hauv qab neeg hlau.

Hauv cov ntawv kawm, feem ntau ntawm cov phiaj xwm tau ua tiav hauv C lossis C ++, tab sis nws yog qhov muaj txiaj ntsig kom dhau los paub nrog kev sib dhos, ua ntej peb pib nyob ntawm cov lus qib siab, thiab tsev qiv ntawv.

Kauj ruam 1: Kho vajtse

Kho vajtse
Kho vajtse
Kho vajtse
Kho vajtse
Kho vajtse
Kho vajtse

Kuv tsis xav rov kho cov cuab yeej cuab tam kom ntxaws, raws li twb muaj cov peev txheej lawm, tab sis peb yuav ntxiv cov lus piav qhia qhov xav tau.

Txog qhov Qhia Qhia no, peb yuav siv lub Reflectance Sensor Arrray los ntawm Pololu, txij li nws los ua ib feem ntawm TI-RSLK (cov khoom siv neeg hlau). Nws yog qhov tau siv hauv chav kawm, thiab hauv Lab 6 ntawm cov ntawv kawm.

Yog tias koj tsis muaj qhov ntawd, koj tuaj yeem siv ib qho IR ntes (lossis ib ntawm lawv) uas tso tawm cov teeb liab digital, HIGH lossis LOW, rau qhov muaj thiab tsis tuaj.

Qhov ntsuas qhov ntsuas tau zoo tshaj vim tias nws tuaj yeem pab txheeb xyuas seb peb puas yog ntawm txoj kab nruab nrab, lossis tawm mus rau ib sab. Ntxiv rau, raws li peb yuav pom tom qab, nws tuaj yeem pab peb txheeb xyuas tus neeg hlau lub kaum sab xis nrog kev hwm rau kab.

Cov teeb pom kev zoo muaj cov ntsuas pom nyob ze ib leeg. Qhov ntawd txhais tau tias peb yuav tsum tau txais ntau lub cim qhia pom, nyob ntawm qhov tseeb ntawm cov tuab ntawm kab.

Yog tias yog, tom qab ntawd yog tus neeg hlau tsis ncaj qha nrog kab, tom qab ntawd nws yuav tsum rov qab tso tawm uas cov kab dav dua li nws yuav tsum yog (vim tias peb nyob ntawm lub kaum ntse ntse).

Txhawm rau piav qhia zoo dua ntawm cov saum toj no, ua tibzoo saib Lab 6 daim ntawv.

Txog kev pab txuas xov / txuas lub ntsuas hluav taws xob mus rau MSP432 LaunchPad pawg thawj coj txhim kho, ntawm no yog qee cov lus qhia muaj txiaj ntsig.

Kuv kuj tau ntxiv tib yam (zoo sib xws?) Pdf cov lus qhia rau Kauj Ruam no.

Yog tias koj ua tib zoo nyeem cov ntawv Pololu, lawv piav qhia qhov laj thawj rau "3.3V hla", uas koj yuav xav tau jumper yog tias koj siv 3.3V siv 5V.

Txij li thaum peb tseem tsis tau tsim tus neeg hlau tab sis hloov peb tsuas yog kawm txog ARM sib dhos thiab tseem yuav ua li cas cuam tshuam nrog cov khoom (cov kab ke) ntawm tus neeg hlau, peb tsis tas yuav ua raws cov lus qhia saum toj no rau tsab ntawv.

Txog tam sim no, txuas cov kab sensor kab ntawv tsuas yog rhaub/txo qis rau cov hauv qab no:

  • txuas 3.3V thiab GND los ntawm MSP432 pawg thawj coj saib mus rau lub sensor sensor.
  • txuas tus pin chaw nres nkoj (Kuv qhia P5.3) los ntawm MSP432 mus rau LED pab tus pin ntawm kab kab sensor. Tus pin ntawd ntawm lub ntsuas cua nyob nruab nrab ntawm 3.3V thiab GND.
  • txuas tag nrho yim tus pin/khoom ntawm ib qhov chaw nres nkoj (Kuv hais kom P7.0 txog P7.7) mus rau yim tus pin ntawm lub sensor sensor sau tias "1" txog "8". Cov no yog cov kab uas yuav mus HIGH lossis LOW nyob ntawm qhov lawv nkag siab.

Raws li koj tuaj yeem pom hauv cov duab ntawm cov kauj ruam no, thiab hauv cov vis dis aus, Kuv tsis tau txuas lub ntsuas hluav taws xob mus rau tus neeg hlau chassis, vim tias kuv xav tau yooj yim ntawm lub program, debugging, kuaj, kawm.

Yog li nrog txhua yam txuas nrog, peb npaj tau nkag mus rau hauv software.

Kauj Ruam 2: Kab Hauv Qab

Kab Ua Raws
Kab Ua Raws
Kab Ua Raws
Kab Ua Raws

Lub teeb pom kev zoo ntawm lub sensor yog qhov zoo nkauj vim tias nws tuaj yeem pab tawm tsawg kawg yog ob txoj hauv kev.

  • Txiav txim siab yog tus neeg hlau nyob ntawm kab lossis txav mus rau ib sab.
  • Puas yog tus neeg hlau ua raws txoj kab ntawm txoj kab, lossis nws nyob ntawm lub kaum sab xis.

Txhua tus ntawm cov ntsuas ntawm cov kab ntawv yeej ib txwm muab cov ntaub ntawv me me, xws li HIGH lossis LOW.

Lub tswv yim yog los ua ke tag nrho cov khoom no rau hauv ib tus lej lossis ib tus qauv me ntsis, thiab siv tus qauv ntawd los txiav txim siab (txhawm rau txav mus kom raug).

Kauj Ruam 3: Ua Ntej Peb Muaj Tiag Tau Pib …

.. peb yuav tsum kawm qee yam tshiab txog ARM kev sib sau ua ke. Thiab kuv tsis yog txhais lwm qhov kev qhia. Cov ntawd zoo li me.

Txog tam sim no peb tsis tau siv "pawg" hauv peb cov haujlwm.

Peb tau tso siab rau siv feem ntau ntawm cov tub ntxhais cpu sau npe thoob ntiaj teb hla cov subroutines sib txawv.

Ib yam peb tau ua yog khaws thiab rov kho LR (txuas npe sau npe) chaw nyob rau ib qho haujlwm - ib qho uas hu ua ob peb lwm txoj haujlwm. (Kuv siv "ua haujlwm" thiab "subroutine" sib pauv ntawm no).

Qhov peb tau ua tsis zoo. Yuav ua li cas yog tias peb xav zes lwm txoj haujlwm? Yuav ua li cas yog tias peb muaj ntau dua ib qib ntawm kev ua zes?

Hauv cov piv txwv yav dhau los, peb tau xaiv los siv npe R6 ua tus khaws cia rau LR lossis xa rov qab chaw nyob. Tab sis yog tias peb xav ua ntxiv/tob zuj zus, peb tsis tuaj yeem hloov pauv tus nqi ntawm R6. Peb yuav tau xaiv lwm lub npe. Thiab lwm tus. Thiab tom qab ntawd nws dhau los ua lub luag haujlwm kom taug qab cov tub ntxhais kawm cpu sau npe twg uas LR rov ua haujlwm uas ua haujlwm.

Yog li tam sim no peb saib ntawm "pawg".

Kauj Ruam 4: Pawg

Nov yog qee cov ntaub ntawv nyeem piav qhia txog pawg.

Kuv yog tus txhawb nqa loj ntawm ob peb lub tswv yim:

  • tsuas yog ntau qhov kev xav raws li xav tau, mus rau qhov ua tau sai
  • kawm raws li xav tau, tsom mus rau qhov ua ib yam dab tsi thiab tsis yog siv lub hom phiaj tsis muaj txiaj ntsig lossis piv txwv.

Muaj ntau ntau ntawm ARM thiab MSP432 cov ntaub ntawv online uas tham txog pawg, yog li tsis rov ua dua txhua qhov ntawd. Kuv tseem yuav khaws qhov kev siv ntawm pawg ntawm no mus rau qhov tsawg kawg nkaus liab qab - txuag qhov chaw nyob rov qab (Daim Ntawv Txuas Txuas).

Qhov tseem ceeb, peb tsuas yog xav tau cov lus qhia:

PUSH {sau npe}

POP {sau npe}

Los yog, hauv peb qhov xwm txheej, tshwj xeeb:

PUSH {LR}

POP {LR}

Yog li, kev sib dhos ua haujlwm/subroutine yuav zoo li:

funcLabel:.asmfunc

PUSH {LR}; qhov no yuav yog zaum ib ntawm thawj cov lus qhia ntawm kev nkag mus.; ua ntau txoj cai ntawm no..; blah … blah … blah …; ok, peb tau ua tiav nrog kev ua haujlwm, npaj rov qab rov qab los hu ua haujlwm POP {LR}; qhov no rov kho qhov chaw nyob raug rov qab rov qab rau kev hu; muaj nuj nqi BX LR; rov qab.endasmfunc

Cov vis dis aus mus dhau los ntawm tus piv txwv nyob ntawm ob peb lub zog ua haujlwm.

Kauj ruam 5: Software

Cov ntawv txuas uas sau tias "MSP432_Chapter …" muaj ntau cov ntaub ntawv zoo txog cov chaw nres nkoj ntawm MSP432, thiab los ntawm daim ntawv ntawd peb tau txais cov chaw nres nkoj hauv qab no, sau npe, chaw nyob, thiab lwm yam. Txawm li cas los xij, Kuv tsis tau pom cov chaw nyob ntxaws nyob rau Chaw nres nkoj 5 thiab nce. (tsuas yog "lwm txoj haujlwm"). Tab sis nws tseem muaj txiaj ntsig.

Peb yuav siv ob Ports. P5, P7, P1, thiab P2.

P5.3 (ib qho me ntsis) cov zis yuav yog los tswj IR LED-ua kom pom ntawm lub ntsuas. Peb tab tom siv P5.3 vim tias nws yog tus pin nthuav tawm ntawm tib lub taub hau ib yam li lwm qhov MSP432 kev sib txuas mus rau lub sensor sensor.

P7.0 txog P7.7 yuav yog yim lub tswv yim uas sau cov ntaub ntawv los ntawm lub ntsuas cua; qhov nws "pom".

P1.0 yog ib qho liab liab LED thiab peb tuaj yeem siv qhov ntawd los muab qee qhov qhia rau peb ntawm cov ntaub ntawv.

P2.0, P2.1, P2.2 yog RGB LED thiab peb tuaj yeem siv qhov ntawd ib yam, nrog nws cov xim sib txawv muaj peev xwm, muab rau peb qhia txog cov ntaub ntawv ntsuas.

Yog tias koj tau dhau los ntawm Cov Lus Qhia yav dhau los cuam tshuam nrog txhua qhov no, tom qab ntawd koj twb paub yuav teeb tsa qhov haujlwm li cas.

Tsuas yog muaj ntu tshaj tawm rau cov chaw nres nkoj thiab cov khoom, thiab lwm yam.

Koj yuav muaj "ntu" ntu.

Yuav tsum muaj lub voj, qhov uas peb txuas ntxiv nyeem cov ntaub ntawv los ntawm P7, txiav txim siab cov ntaub ntawv ntawd, thiab teeb ob lub LEDs kom haum.

Ntawm no dua yog Chaw Sau Npe Chaw Nyob:

  • GPIO P1: 0x4000 4C00 + 0 (txawm tias chaw nyob)
  • GPIO P2: 0x4000 4C00 + 1 (chaw nyob txawv txawv)
  • GPIO P3: 0x4000 4C00 + 20 (txawm tias chaw nyob)
  • GPIO P4: 0x4000 4C00 + 21 (chaw nyob tsis zoo)
  • GPIO P5: 0x4000 4C00 + 40 (txawm tias chaw nyob)
  • GPIO P6: 0x4000 4C00 + 41 (qhov chaw nyob txawv)
  • GPIO P7: 0x4000 4C00 + 60 (txawm tias chaw nyob)
  • GPIO P8: 0x4000 4C00 + 61 (chaw nyob txawv txawv)
  • GPIO P9: 0x4000 4C00 + 80 (txawm tias chaw nyob)
  • GPIO P10: 0x4000 4C00 + 81 (chaw nyob txawv)

Dab tsi nyob rau hauv bold yog dab tsi peb yuav siv rau Cov Lus Qhia no.

Cov Txheej Txheem Txheej Txheem Kom Nyeem IR Ntes

Cov hauv qab no yog psuedo-code rau kev sau cov haujlwm hauv C, tab sis nws tseem muaj txiaj ntsig, thiab peb yuav ua raws nws zoo nkauj hauv kev sib dhos ua ke ntawm qhov program.

txoj haujlwm tseem ceeb 0) Pib // chaw nres nkoj thaum (1) {1) Teeb P5.3 siab (tig rau IR LED) 2) Ua kom P7.0 tso tawm, thiab teeb tsa nws siab (them lub capacitor) 3) Tos 10 peb, Clock_Delay1us (10); 4) Ua P7.0 cov tswv yim 5) Khiav lub voj no 10, 000 zaug a) Nyeem P7.0 (hloov qhov hluav taws xob ntawm P7.0 rau hauv binary) b) Tso zis binary rau P1.0 (tso cai rau koj pom binary hauv lub sijhawm tiag tiag)) 6) Teeb P5.3 qis (tua IR LED, txuag lub zog) 7) Tos 10 ms, Clock_Delay1ms (10); } // rov ua dua (rov qab rau thaum ())

Kauj Ruam 6: Cia Txhim Kho Txoj Cai

Lub hom phiaj lossis siv ntawm Pololu IR LED array yog txhawm rau txheeb xyuas kab, thiab paub yog tias tus neeg hlau (yav tom ntej) ncaj qha rau ntawm kab, lossis tawm mus rau ib sab. Tsis tas li, txij li txoj kab muaj qee qhov tuab, yog tias lub teeb sensor ncaj ncaj ncaj rau kab, N tus lej ntawm cov ntsuas yuav muaj qhov nyeem sib txawv dua li qhov seem, qhov twg yog IR LED array yog nyob ntawm qee lub kaum sab xis (tsis yog ib qho ntxiv), tom qab ntawd N+1 lossis N+2 IR LED/tus khub ntsuas yuav tsum tam sim no muab nyeem sib txawv.

Yog li, nyob ntawm seb muaj pes tsawg lub ntsuas ntsuas qhia tias muaj kab ntawm kab, peb yuav tsum paub yog tias peb nyob hauv nruab nrab, thiab yog tias peb yog kaum lossis tsis yog.

Txog qhov kev sim zaum kawg no, cia peb pom seb peb puas tuaj yeem tau txais LED liab thiab RGB LED los muab peb cov ntaub ntawv ntau ntxiv txog dab tsi ntawm lub sensor sensor qhia rau peb.

Cov vis dis aus mus rau txhua qhov kev qhia ntxaws. Cov lej kawg kuj tseem txuas nrog.

Qhov no ua tiav cov koob ntawm ARM Kev Sib Tham cuam tshuam nrog GPIO. Peb cia siab tias yuav rov qab los nrog ARM los ua ke ntau dua nyob rau lub sijhawm tom qab.

Ua tsaug.

Pom zoo: