Sigurado ako na ang term na 'Microcontroller' ay dapat pamilyar sa iyo. Ito ay isang solong maliit na tilad na naglalaman ng processor, ang memorya kasama ang mga input / output pin na naka-embed sa loob nito. Madalas naming ginagamit ang mga microcontroller para sa mga naka-embed na application, bilang isang controller upang makontrol ang anumang mga actuator tulad ng mga motor o display.
Sigurado ako na maraming dapat sa iyo, na gustong bumuo ng iyong sariling naka-embed na system o sabihin sa akin ang isang simpleng proyekto gamit ang isang microcontroller. Ngayon para dito, kailangan mong magkaroon ng isang pangunahing ideya tungkol sa bawat hakbang na kinakailangan upang makabuo ng isang proyekto batay sa microcontroller. Kaya narito ipinapaliwanag ko ang mga pangunahing hakbang upang makabuo ng isang proyekto na nakabatay sa microcontroller.
Ngunit bago ito, kumuha tayo ng isang ideya tungkol sa proyekto na nais naming idisenyo at ang teorya sa likod nito.
Layunin ng proyekto
Upang mag-disenyo ng isang LED flash light system gamit ang Microcontroller
Teorya
Ang LED flash light system ay maaaring gumawa ng ilaw sa pamamagitan ng light emitting diode. Ang mga ilaw na maliwanag na maliwanag na ginamit sa tradisyunal na flash light ay kumakain ng mas maraming enerhiya at may mas kaunting oras sa buhay. Ang mga ilaw ng LED sa kabilang banda, kumakain ng mas kaunting enerhiya at may mahabang buhay.
Pangunahing Ideya sa Likod ng Disenyo
Bumubuo ang microcontroller ng output pulses lohika upang ang ilaw na LED ay nakabukas ON at OFF sa ilang mga agwat. Ito ay isang 40 pin microcontroller. Ang Crystal interfaced sa mga input ng pin ng microcontroller ay nagbibigay ng tumpak na mga signal ng orasan sa dalas ng kristal.
Mga hakbang sa pagbuo ng proyekto
Hakbang1: Pagdidisenyo ng Circuit
Ang kristal ng 8051 microcontroller ay nagpapatakbo ng mga dalas ng 11.0592 MHz dahil maaari itong magbigay ng eksaktong mga pulso ng orasan para sa pagsasabay sa data. Ang dalawang capacitor ay konektado sa kristal oscillator na may saklaw na 20pf hanggang 40pf na ginagamit upang patatagin ang mga signal ng orasan. Ang 8051 microcontroller sa ilang oras ay pumupunta upang harangan ang estado o nawawalang pagkalkula ng oras.
Sa oras na iyon kailangan nating i-reset ang microcontroller. Kapag na-reset ang microcontroller, tumatagal ng maximum na 3sec oras na pagkaantala sa tulong ng 10k risistor at 10uf capacitor.
Mga Bahagi ng Circuit:
Mga Bahagi ng Hardware:
- Dilaw na LED
- Crystal
- I-reset
- 8051 microcontroller
- Mga capacitor
- Mga lumalaban
Mga Bahagi ng Software:
- Walang tagatala
- Proteus software
- Naka-embed na wika ng C
Mga Koneksyon sa Circuit
Ang supply ng 5v DC ay ibinibigay sa 40 pin ng microcontroller na nagtutulak sa circuit. Ang kristal ay konektado sa 18 at 19 na pin ng microcontroller. Ang reset circuit ay interfaced sa 9 pin ng microcontroller. Ang Yellow LED ay konektado sa pin P0.2 ng microcontroller.
Hakbang 2: Pag-coding ng Programang Microcontroller
- Buksan muna ang Kiel uVison2 software. Ipinapakita nito ang menu bar na may pagpipiliang file, edit, view, proyekto at mga tool.
- Piliin ang pagpipilian ng proyekto at piliin ang 'bagong pagpipilian sa proyekto' mula sa drop down na menu. Magbigay ng isang pangalan sa proyekto at mag-click sa pindutang 'i-save' upang mai-save ang proyekto. Ang isang folder na pinangalanang 'target' ay nilikha.
- Pumili ng isang microcontroller para sa iyong proyekto. Narito pipiliin ko ang 'Atmel'. Piliin ang eksaktong uri ng Atmel microcontroller mula sa drop down menu. Dito napili ang 89C51 microcontroller. Ang isang folder na may pangalang 'source group' ay nilikha sa folder na 'target'.
- Mag-click sa menu na 'File' sa menu bar. Piliin ang 'bagong file' mula sa drop down na menu.
Tulad ng Window
- Isulat ang code sa blangkong puwang.
Ang LED Flash Light na programa:
# isama
sbit LED = P0 ^ 2
walang bisa ang pagkaantala (unsigned int a)
walang bisa pangunahing ()
{LED = 0
Habang (1)
{LED = 0
antala (600)
LED = 1
antala (600)
}
}
walang bisa ang pagkaantala (unsigned int b)
{unsigned int k
para sa (k = 0k } Ito ay circuit ay dinisenyo sa tulong ng Proteus software. Ito ay software ng disenyo ng circuit na naglalaman ng isang database ng mga bahagi na maaari naming magamit upang mabuo ang circuit. Ang bawat isa at bawat sangkap ay magagamit sa library ng mga sangkap. Proteus window gamit ang circuit Diagram ng Circuit Ang paglo-load ng code sa microcontroller ay tinatawag na pagtatapon. Ang microcontrollers ay nakakaintindi lamang ng wikang binary. Kaya kailangan nating i-load ang hex code sa microcontroller. Maraming mga software na magagamit sa merkado para sa paglo-load ng code sa microcontroller. Narito ginagamit ko ang software ng programer na 'Willer' upang itapon ang code sa 8051 microcontroller. Ang programmer kit ay may kasamang software kasama ang hardware kit. Ang software na ito ay kailangang mai-install sa computer. Ang hardware kit ay may kasamang socket, kung saan inilalagay ang microcontroller. Narito ang mga hakbang upang mai-load ang code sa microcontroller. Willer Programmer hardware kit Willer software window Handa nang bumuo ng iyong sariling proyekto, hindi ba? Dapat napansin mo, nagbigay ako ng isang napaka pangunahing proyekto gamit ang isang microcontroller at isinulat ang code sa wikang 'C'. Ngunit naiintindihan ng microcontroller ang wika ng pagpupulong. Kaya narito nagiwan ako ng isang gawain para sa iyo. Isulat ang parehong code na ito gamit ang wika ng Assembly, sa seksyon ng komento sa ibaba. Pagkikilala sa kumuha ng larawan:Hakbang 3: Pagguhit ng Circuit
Hakbang 4: Pag-dump ng Code
Hakbang 5: Paggaya sa Circuit