Nakagambala sa 8051 Microcontroller at Istraktura at Programming

Subukan Ang Aming Instrumento Para Sa Pagtanggal Ng Mga Problema





Ang pinaka-makapangyarihang at mahahalagang tampok ay nakakagambala 8051 microcontroller . Sa karamihan ng mga proseso ng real-time, upang mahawakan nang maayos ang ilang mga kundisyon, ang aktwal na gawain ay dapat na tumigil sa loob ng ilang oras - kinakailangan ng kinakailangang aksyon - at pagkatapos ay dapat bumalik sa pangunahing gawain. Para sa pagpapatupad ng naturang uri ng mga programa, kinakailangan ang mga pagkagambala. Ito ay ganap na naiiba mula sa paraan ng botohan kung saan dapat suriin nang sunud-sunod ng processor ang bawat aparato at tanungin kung kinakailangan ang serbisyo o hindi habang kinakain ang mas maraming oras ng processor.

Nakagambala sa 8051 microcontroller

Nakagambala sa 8051 microcontroller



Ang mga nakakagambala sa 8051 microcontroller ay mas kanais-nais upang mabawasan ang regular na pagsuri sa katayuan ng mga naka-interfaced na aparato o mga built-in na aparato. Ang pagkagambala ay isang kaganapan na pansamantalang sinuspinde ang pangunahing programa, ipinapasa ang kontrol sa isang espesyal na seksyon ng code, isinasagawa ang pagpapaandar na nauugnay sa kaganapan at ipagpatuloy ang pangunahing daloy ng programa kung saan ito tumigil.


Ang mga pagkagambala ay may iba't ibang uri tulad ng software at hardware, maskable at non-maskable, naayos at vector interrupts, at iba pa. Ang Interrupt Service Routine (ISR) ay dumating sa larawan kapag naganap ang pagkagambala, at pagkatapos ay sasabihin sa processor na gumawa ng naaangkop na aksyon para sa makagambala, at pagkatapos ng pagpapatupad ng ISR, ang controller ay tumalon sa pangunahing programa.



Mga uri ng Pagkagambala sa 8051 Microcontroller

Ang 8051 microcontroller ay maaaring makilala ang limang magkakaibang mga kaganapan na maging sanhi ng paggambala ng pangunahing programa mula sa normal na pagpapatupad. Ang limang mapagkukunan ng mga nakakagambala sa 8051are:

  1. Nakagambala ang timer 0 overflow- TF0
  2. Nakagambala ang timer 1 overflow- TF1
  3. Nakagambala ang panlabas na hardware- INT0
  4. Nakagambala ang panlabas na hardware- INT1
  5. Nakagambala ang serial na komunikasyon- RI / TI

Ang Timer at Serial interrupts ay panloob na nabuo ng microcontroller, samantalang ang panlabas na interrupts ay nabuo ng karagdagang mga aparato sa pagitan o mga switch na panlabas na konektado sa microcontroller. Ang mga panlabas na pagkagambala ay maaaring ma-trigger ng gilid o ma-trigger na antas. Kapag naganap ang isang nakakagambala, isinasagawa ng microcontroller ang gumagambala na gawain upang ang lokasyon ng memorya ay tumutugma sa nakakagambala na nagbibigay-daan dito. Ang Nakagambala na naaayon sa lokasyon ng memorya ay ibinibigay sa makagambala na talahanayan ng vector sa ibaba.

Makagambala sa talahanayan ng vector

Makagambala sa talahanayan ng vector

Makagambala Istraktura ng 8051 Micro controller

Sa 'RESET' lahat ng mga nakakagambala ay hindi pinagana, at samakatuwid, ang lahat ng mga pagkagambala na ito ay dapat na paganahin ng isang software. Sa lahat ng limang pagkagambala na ito, kung ang sinuman o lahat ay naaktibo, itinatakda nito ang kaukulang mga nagambala na watawat tulad ng ipinakita sa pigura. Ang lahat ng mga pagkagambala na ito ay maaaring itakda o i-clear ng kaunti sa ilang mga espesyal na pagrehistro ng pag-andar na Interrupt Enified (IE), at ito naman ay nakasalalay sa priyoridad, na naisagawa ng IP makagambala ng rehistro ng priyoridad.


Makagambala istraktura ng 8051 microcontroller

Makagambala istraktura ng 8051 microcontroller

Makagambala Paganahin (IE) Rehistro: Ang rehistro na ito ay responsable para sa pagpapagana at hindi pagpapagana ng makagambala. Ito ay medyo addressable register kung saan ang EA ay dapat itakda sa isa para sa pagpapagana ng mga nakakagambala. Ang kaukulang bit sa rehistro na ito ay nagbibigay-daan sa partikular na makagambala tulad ng timer, panlabas at serial input. Sa ibaba sa pagrehistro ng IE, ang bit na tumutugma sa 1 ay nagpapagana ng makagambala at 0 hindi pinapagana ang makagambala.

Makagambala Paganahin (IE) Magrehistro

Makagambala Paganahin (IE) Magrehistro

Makagambala sa Pagrehistro ng Prioridad (IP): Posible ring baguhin ang mga antas ng priyoridad ng mga nakakagambala sa pamamagitan ng pagtatakda o pag-clear ng kaukulang piraso sa rehistro ng Interrupt priority (IP) tulad ng ipinakita sa pigura. Pinapayagan nitong magambala ng mababang priyoridad upang makagambala sa mataas na priyoridad na makagambala, ngunit ipinagbabawal ang pagkagambala ng isa pang mababang-priyoridad na makagambala. Katulad nito, hindi maaaring maputol ang mataas na priyoridad na magambala. Kung ang mga prioridad na nakakagambala na ito ay hindi nai-program, ang microcontroller ay nagpapatupad sa paunang natukoy na pamamaraan at ang pagkakasunud-sunod nito ay INT0, TF0, INT1, TF1, at SI.

Rehistro ng IP

Rehistro ng IP

Rehistro ng TCON: Bilang karagdagan sa dalawang rehistro sa itaas, tinukoy ng rehistro ng TCON ang uri ng panlabas na nakakagambala sa 8051 microcontroller, tulad ng ipinakita sa pigura. Ang dalawang panlabas na pagkagambala, alinman sa gilid o antas na na-trigger, tukuyin ng rehistro na ito sa pamamagitan ng isang hanay, o na-clear ng mga naaangkop na piraso dito. At, ito rin ay medyo addressable register.

Pagrehistro sa TCON

Pagrehistro sa TCON

Makagambala sa Programming noong 8051

1. Makagambala sa Programming ng Jim

Ang mga pagkagambala sa timer 0 at Timer 1 ay nabuo ng mga timer register bit na TF0 at TF1. Ang mga nakakagambala programa sa pamamagitan ng C code nagsasangkot ng:

  • Pagpili ng timer sa pamamagitan ng pag-configure ng rehistro ng TMOD at ang mode ng pagpapatakbo nito.
  • Pagpili at paglo-load ng mga paunang halaga ng TLx at THx para sa naaangkop na mga mode.
  • Ang pagpapagana ng mga rehistro ng IE at kaukulang timer dito.
  • Ang pagtatakda ng timer run bit upang simulan ang timer.
  • Ang pagsusulat ng subroutine para sa timer para sa oras na kinakailangan at limasin ang halaga ng timer na TRx sa dulo ng subroutine.
Nakagambala ng Programming ng Timer

Nakagambala ng Programming ng Timer

2. Panlabas na Paghadlang ng Programming ng Hardware

Ang 8051 microcontrollers ay binubuo ng dalawang panlabas na mga pagkakagambala ng hardware: INT0 at INT1 tulad ng tinalakay nang mas maaga. Ang mga ito ay pinagana sa pin 3.2 at pin 3.3. Maaari itong ma-trigger ng gilid o ma-trigger ng antas. Sa antas na nagti-trigger, ang mababa sa pin 3.2 ay nagbibigay-daan sa makagambala, habang sa pin 3.2 - ang mataas sa mababang paglipat ay nagbibigay-daan sa gilid na na-trigger na makagambala. Ang edge triggering o antas na nagti-trigger ay napagpasyahan ng rehistro ng TCON na tinalakay sa itaas. Ang pamamaraan ng programa sa 8051 ay ang mga sumusunod:

  • Paganahin ang kaukulang bit ng panlabas na makagambala sa pagrehistro sa IE.
  • Kung ito ay nagti-trigger sa antas, isulat lamang ang subroutine na naaangkop sa makagambala na ito, o kung hindi paganahin ang rehistro ng TCON na naaayon sa gilid na na-trigger na paggambala - kung ito ay INT0 o INT1.
Ang Panlabas na Hardware Makagambala sa Programming

Ang Panlabas na Hardware Makagambala sa Programming

3.Serial Communication Interrupt Programming

Ang mga pagkagambala ng serial na komunikasyon ay dumating sa larawan kapag may pangangailangan na magpadala o tumanggap ng data. Dahil ang isang nakakagambala na bit ay itinakda para sa parehong mga flag ng TI (Transfer Interrupt) at RI (Receiver Interrupt), dapat suriin ng gawain ng Interrupt Service ang mga watawat na ito upang malaman ang tunay na makagambala.

Ang lohikal na O pagpapatakbo ng dalawang flag na ito (RI ands TI) ay sanhi ng makagambala nito, at ito ay na-clear ng software lamang. Dito, ginagamit ang isang espesyal na rehistro na SCON para sa pagkontrol komunikasyon pagpapatakbo sa pamamagitan ng pagpapagana ng kaukulang mga piraso dito.

  • I-configure ang IE register para sa pagpapagana ng serial interrupt
  • I-configure ang rehistro ng SCON para sa pagtanggap o paglilipat ng operasyon
  • Sumulat ng subroutine para sa makagambala na may naaangkop na pag-andar at limasin ang mga flag ng TI o RI na may ganitong gawain.
Serial Interrupt Programming

Serial Interrupt Programming

Ito ay tungkol sa mga nakakagambala sa 8051 microcontroller, mga uri, kanilang istraktura at programa. Inaasahan kong natanggap mo ang mahusay na impormasyon mula sa artikulong ito. Gayundin, maaari kang sumulat sa amin sa seksyon ng komento sa ibaba para sa real-time na pagpapatupad ng mga proyekto ng microcontroller upang matulungan ka namin para sa isang mas mahusay na karanasan sa hands-on.

Mga Kredito sa Larawan