Mga MCU: alamin ang tungkol sa pinakamahalagang pamilya ng microcontroller

mga microcontroller

Maraming development board na madalas naming ginagamit, mula sa Arduino mismo hanggang sa marami pang iba, ay gumagamit ng Mga yunit ng MCU o microcontroller. Ilang mahahalagang chips na magagawa i-program ang mga device na ito at na ang mga tagubiling nilikha ng programmer ay maaaring iproseso upang makuha ang inaasahang resulta.

Gayunpaman, Ang sektor ng microcontroller ay medyo malawak., tulad din ng kaso sa mga CPU o microprocessor, dahil hindi lamang maraming mga designer o manufacturer, pati na rin mga modelo, ngunit mayroon ding maraming iba't ibang mga pamilya na dapat mong malaman. Kaya, ilalaan namin ang artikulong ito sa mismong bagay na ito, upang malaman mo kung alin ang pinaka-interesante sa iyo para sa iyong mga proyekto...

Ano ang isang microcontroller o MCU?

diagram ng MCU

Un microcontroller o MCU (MicroController Unit) Ito ay isang compact device na nagsasama ng mga function ng isang central processor (CPU), memory at peripheral sa isang chip. Ang device na ito ay ang sentro ng maraming electronic system at ito ay pangunahing sa larangan ng naka-embed na electronics. Sa madaling salita, isang mahusay na alternatibo sa wired electronics, kaya nagbibigay-daan sa isang solong chip na magsagawa ng maraming mga function nang may kakayahang umangkop, dahil ito ay programmable.

Ang mga microcontroller ay ginagamit sa a iba't ibang mga application dahil sa kakayahang magamit at kahusayan nito. Ang ilang halimbawa ng paggamit para sa mga microcontroller ay kinabibilangan ng mga control system sa mga sasakyan, appliances sa bahay, mga industrial automation system, process control system, mga laruan, security system, development boards, at marami pang electronic equipment.

Mga bahagi ng microcontrollers

Ang mga microcontroller ay pinagsamang mga aparato, at ang lahat ng kanilang mga bahagi ay ipinatupad sa isang chip o integrated circuit. Sa pagitan ng pinakapangunahing bahagi sa mga chips na ito ay:

  • CPU (Central Processing Unit): Ang central processing unit ay ang utak ng microcontroller, at ang pinakamahalagang bahagi nito. Ang yunit na ito ay responsable para sa paggamit ng data at mga tagubilin ng programa upang bigyang-kahulugan at iproseso ang mga ito nang naaangkop sa mga yunit ng pagpapatupad upang makuha ang inaasahang resulta. Iyon ay, isinasagawa ng CPU ang lahat ng mga operasyon sa pagkalkula at gumagawa ng mga desisyon batay sa lohika ng programa. Ang bilis at kahusayan ng CPU ay higit na tumutukoy sa pagganap ng microcontroller. Bilang karagdagan, kadalasang mayroon din silang mga elementaryang bahagi tulad ng mga interrupt system, na nagpapahintulot sa microcontroller na tumugon sa ilang partikular na kaganapan sa isang napapanahong paraan. Kapag naganap ang isang partikular na kaganapan, tulad ng isang input ng signal o isang timer na umaabot sa isang partikular na halaga, maaaring matakpan ng microcontroller ang kasalukuyang gawain nito upang tumugon sa kaganapang ito.
  • Memorya: Karaniwan silang mayroong dalawang uri ng memorya tulad ng RAM at flash. Ang RAM ay ginagamit upang mag-imbak ng pansamantalang data, tulad ng mga tagubilin na bumubuo sa mga programa at ang data (mga variable, constants,...) sa panahon ng pagpapatupad ng programa. Habang ang flash memory ay ginagamit upang iimbak ang program na isasagawa, at ito ay hindi pabagu-bago tulad ng RAM, kaya kapag ang kapangyarihan ay nagambala o ang aparato ay naka-off, ang programa ay mananatili.
  • Mga Input/Output Peripheral (I/O): payagan ang microcontroller na makipag-ugnayan sa labas ng mundo. Maaaring kabilang dito ang mga digital I/O port, analog-to-digital converters (ADC), digital-to-analog converters (DAC), mga interface ng komunikasyon gaya ng UART, SPI, at I2C, variety controllers, timers, counters, GPIO, at iba pa.

Paano ito naiiba sa isang microprocessor o CPU?

Ang isang microprocessor at isang microcontroller ay dalawang pangunahing bahagi sa larangan ng electronics, ngunit mayroon sila makabuluhang pagkakaiba sa mga tuntunin ng istraktura at paggamit, kahit na maraming tao ang nalilito sa dalawa o naniniwala na sila ay pareho.

Habang ang CPU ay nagsasama lamang functional units para sa kontrol at interpretasyon ng mga tagubilin, mga rehistro, pati na rin ang mga tagubilin sa pagpapatupad tulad ng ALU, FPU, atbp., at maaaring isama sa iba pang mga elemento ng auxiliary sa isang mas nababaluktot na paraan, ang mga microcontroller ay medyo mas sarado sa kahulugan ng pagsasama-sama. marami sa mga bahagi na iniiwan ng CPU. Sa katunayan, habang ang CPU ay ang utak ng isang computer, ang MCU ay maaaring ituring na isang kumpletong computer, dahil kasama nito ang lahat ng mga pangunahing bahagi sa isang solong chip.

Gayunpaman, huwag malito ang higit na pagsasama sa mga tuntunin ng pagiging kumplikado at pagganap. Habang ang mga kasalukuyang microprocessor ay lubhang kumplikado at may napakataas na pagganap, ang mga kasalukuyang microcontroller ay karaniwang may pinagsamang CPU na may mas mababa at mas simpleng pagganap. Sa katunayan, marami sa mga microcontroller ngayon ay maaaring magkaroon ng pagganap na katulad ng mga microprocessor mula sa nakalipas na mga dekada. Higit pa rito, tulad ng makikita natin sa ibang pagkakataon, mayroon pa tayong 8-bit o 16-bit na microcontroller tulad ng mga CPU noong 70s.

Mga pagkakaiba kumpara sa isang SoC?

Dahil ang microcontroller ay nagsasama ng ilang elemento sa parehong chip, Madalas din itong nalilito sa SoC (System on a Chip)Gayunpaman, hindi rin ito pareho. Tulad ng CPU vs MCU, ang mga SoC ay nagsasama rin ng isang CPU na may mas mataas na pagganap kaysa sa karamihan sa mga kasalukuyang microcontroller. Higit pa rito, ang SoC ay isang walang katapusang mas kumplikado at advanced na sistema. Sa kabilang banda, ang SoC ay hindi karaniwang nagsasama ng ilan sa mga bahagi na isinama sa isang microcontroller, dahil ang mga application na kung saan ito ay nilayon ay hindi nangangailangan nito, tulad ng RAM at flash memory, ADC converter, atbp.

Isang maliit na kasaysayan

Ang mga maagang multi-circuit microprocessors, tulad ng AL1 mula sa Four-Phase Systems noong 1969 at ang MP944 mula sa Garrett AiResearch noong 1970, ay binuo na may maraming MOS LSI chips. Ang unang single-chip microprocessor ay ang Intel 4004, na inilabas noong 1971. Ang mga processor na ito ay nangangailangan ng ilang panlabas na chips upang ipatupad ang isang functional system, na mahal. Gayunpaman, halos magkatulad, ang alam natin ngayon bilang isang microcontroller ay binuo. SIYA iniuugnay sa mga inhinyero ng IT, sina Gary Boone at Michael Cochran, ang matagumpay na paglikha ng unang microcontroller noong 1971, ang TMS 1000, na pinagsama ang read-only na memory, read/write memory, processor at orasan sa isang chip. Sa katunayan, kahit na ito ay isa pang kuwento, nakabuo ito ng patent war at mga demanda sa pagiging may-akda ng microprocessor...

Noong 1970s, ang Ang mga tagagawa ng Japanese electronics ay nagsimulang gumawa ng mga microcontroller para sa mga sasakyan. Unti-unti silang naging popular, at bilang tugon sa pagkakaroon ng single-chip na TMS 1000, binuo ng Intel ang isang computer system sa isang chip na na-optimize para sa mga control application, ang Intel 8048, na pinagsama ang RAM at ROM sa parehong chip kasama ang isang CPU. Sa paglipas ng panahon, ang mga hindi pabagu-bagong alaala ay napabuti, at napunta mula sa pag-record sa pabrika na may permanenteng programa tulad ng mga unang ROM hanggang sa pagpapakilala ng PROM, o ang EEPROM ng 1993, na nagbigay-daan na mabura ito at ma-reprogram gamit ang isa pang programa sa simpleng paraan at kahit ilang beses mo gusto.

Unti-unti, ipinanganak ang mga kumpanya sa paligid ng ganitong uri ng chips, tulad ng Atmel, Microchip Technology, at marami pang iba. Ang iba pang mga kumpanya sa sektor ay nagsimula ring mamahagi ng kanilang sariling mga MCU, tulad ng Intel, Analog Devices, Cypress, AMD, ARM, Hitachi, EPSON, Motorola, Zilog, Infineon, Lattice, National Semiconductor, NEC, Panasonic, Renesas, Rockell, Sony , STMicroelectronics , Synopsis, Toshiba, atbp.

Ngayon, ang mga microcontroller ay mura at madaling ma-access ng mga hobbyist at maraming iba't ibang sektor ng industriya. Higit pa rito, tinatayang ibinebenta ang mga ito halos 5 bilyong 8-bit unit sa buong mundo, bilang ang pinaka ginagamit sa kasalukuyan. Mahahanap mo ang mga ito sa mga gamit sa bahay, sasakyan, computer, telepono, makinang pang-industriya, at marami pang iba. Higit pa rito, nagawa nilang i-miniaturize sa maximum, na lumilikha ng ilan sa pinakamaliit na computer sa mundo, kahit na mas maliit pa sa isang butil ng asin...

ISA at mga pamilyang microcontroller

MCU

Ngayong alam mo na ang kaunti pa tungkol sa kung ano ang MCU o microcontroller, tingnan natin ang ilan sa mga pinakamahalagang pamilya ng mga microcontroller na ito. At, tulad ng mga CPU, maaari silang hatiin ayon sa ISA, iyon ay, ang repertoire ng mga tagubilin, mga rehistro at mga uri ng data na ginagamit, at ang pagiging tugma ng mga binary program na maaaring isagawa ay nakasalalay dito. sa pagitan ng mga pamilya. At ang mga pamilyang ito ay ganap na independyente sa modelo, tatak o mga yunit na kasama sa chip.

Kabilang sa mga pinakasikat na pamilya mayroon kaming mga sumusunod:

  • Mga bata: ay isang henerasyon ng mga softcore para sa mga FPGA mula sa Altera, na ngayon ay hinihigop ng Intel.
  • Blackfin: ay isang pamilya ng 16/32-bit microprocessors na binuo, ginawa at ibinebenta ng mga Analog Device. Ang mga processor ay mayroon ding built-in na digital signal processor (DSP) functionality, na ginagawa ng 16-bit multiplication-accumulation (MAC).
  • TigerSHARC: ay kumakatawan sa Super Harvard Architecture Single-Chip Computer, mula rin sa Analog Devices. Sa kasong ito, mainam ang mga ito para sa mga application na nangangailangan ng mataas na pagganap ng computing na may mababang paggamit ng kuryente. Ang mga processor na ito ay nag-aalok ng natatanging memory architecture na nagbibigay-daan sa mahusay na pag-access sa data at mga tagubilin nang walang performance penalty na nauugnay sa Von Neumann bus architecture.
  • Cortex-M- Ang ARM's Cortex-M microcontrollers ay isang sikat na pamilya ng 32-bit microcontrollers na napakahusay sa kapangyarihan at nag-aalok ng mahusay na pagganap. Ang mga ito ay lalo na sikat sa pang-industriya at consumer application, at kasalukuyang kumakatawan sa karamihan ng mga modernong chips na ibinebenta ng maraming kumpanya.
  • AVR32: Ito ay isang 32-bit na RISC microcontroller architecture na ginawa ng Atmel, at mahahanap mo ito sa maraming development board, gaya ng Arduino at mga clone nito.
  • RISC-V: Ang bukas na ISA na ito ay naglalayong malampasan ang ARM, at unti-unti ay nagsimula itong magkaroon ng kahalagahan sa mundo ng mga microcontroller, dahil ito ay napaka-flexible at pinapayagan ang paggamit nito nang hindi nagbabayad ng mga royalty.
  • PIC- ay isang pamilya ng 8-bit microcontroller na binuo ng Microchip Technology, na kilala sa kanilang advanced na arkitektura ng RISC, at medyo sikat sa industriya.
  • PowerQUICC: ay batay sa teknolohiya ng Power Architecture ng IBM, at ginamit ng Motorola (Freescale ngayon), sinusuportahan nila ang buong spectrum ng mga naka-embed na kagamitan sa network, pang-industriya at pangkalahatang naka-embed na mga application.
  • Spansion: Ito ang mga MCU ng Fujitsu, at nakatuon sa mga analog at digital na produkto, at idinisenyo para sa kahusayan at balanseng pagganap.
  • 8051: Ito ay isang 8-bit microcontroller na binuo ng Intel, bagama't makikita mo na rin itong gawa ng ibang mga kumpanya. Ito ay isa sa mga pinakasikat na microcontroller at ginagamit sa malawak na hanay ng mga aplikasyon. Ang 8051 ay isang CISC microcontroller batay sa arkitektura ng Harvard.
  • TriCore: ay isang microcontroller na binuo ng Infineon Technologies. Pinagsasama ng TriCore ang mga elemento ng isang RISC processor core, isang microcontroller, at isang DSP sa isang chip. Noong panahong ito ay isang rebolusyon.
  • MC-48 o 8048: Ito ay isang microcontroller mula sa Intel line, na may 64 bytes ng RAM at access sa 4096 bytes ng external na memorya ng programa.
  • mico8- ay isang 8-bit na pamilyang microcontroller na ganap na ipinatupad sa pangkalahatang layunin na memorya at lohika para sa mga Lattice FPGA.
  • Tagapagbunsod: 32-bit multicore na arkitektura na binuo ng Parallax Inc. Ang bawat Propeller ay may 8 magkaparehong 32-bit na processor na konektado sa isang karaniwang hub.
  • Pangunahing Selyo- ay isang microcontroller na may maliit na dalubhasang BASIC interpreter (PBASIC) na nakapaloob sa ROM. Ito ay ginawa ng Parallax, Inc, at isang medyo sikat na produkto para sa mga gumagawa na gustong gumawa ng maraming proyekto sa bahay bago ilabas ang Arduino.
  • SuperH: ay isang 32-bit na RISC computing instruction set architecture na binuo ni Hitachi at kasalukuyang ginawa ni Renesas, at nakatutok sa mga microcontroller para sa mga naka-embed na system.
  • tiva: ay isang seryeng microcontroller na binuo ng Texas Instruments. Mayroon itong built-in na processor clock frequency na hanggang 80MHz na may floating point unit (FPU), na may mahusay na performance.
  • Microblaze: ay isang lubos na pinagsama-samang sistema ng processor na inilaan para sa mga application ng controller. Ang MicroBlaze ay ganap na ipinatupad sa memorya at pangkalahatang layunin na lohika ng Xilinx (ngayon ay AMD) na mga FPGA, iyon ay, isang softcore.
  • Picoblaze: katulad ng nauna, ngunit sa kasong ito ito ay 8-bit at mas simple, para sa higit pang pinagsamang mga aplikasyon.
  • XCore: Ang mga ito ay mga XMOS multicore MCU, 32 bits na naka-program sa isang C language environment at gumagana nang deterministiko at may mababang latency. Ang mga ito ay kumpleto at maaaring ipatupad sa anyo ng mga tile.
  • Z8: ay mula sa Zilog, at ang mga ito ay 8-bit na device na nag-aalok ng malawak na hanay ng mga opsyon sa pagganap at mapagkukunan. Ang mga microcontroller na ito ay perpekto para sa mataas na volume, cost-sensitive na mga application, kabilang ang mga consumer, automotive, seguridad, at mga produkto ng HVAC.
  • Z180: Ito ay isa pa sa mga sikat sa loob ng Zilog bago ang paglabas ng bagong eZ na nag-update sa mga nakaraang hanay. May kasama itong 8-bit na processor, na katugma sa malaking software base na isinulat para sa Z80. Ang pamilyang Z180 ay nagdaragdag ng mas mataas na performance at pinagsama-samang mga peripheral na feature tulad ng clock generator, 16-bit counter/timer, interrupt controller, wait state generator, serial port, at DMA controller.
  • STM: Ang pamilyang STMicroelectronics na ito ay may ilang unit ng MCU batay sa sariling arkitektura ng kumpanyang ito, bagama't sa mga pinakabagong modelo ay pinili ito, tulad ng sa maraming iba pang mga kaso, upang isama ang 32-bit ARM Cortex-M Series. Nag-aalok ito ng mga produkto na pinagsasama ang napakataas na pagganap, real-time na mga kakayahan, digital signal processing, low-power/low-voltage na operasyon at pagkakakonekta, habang pinapanatili ang kumpletong pagsasama at kadalian ng pag-develop.

Marami pa, ngunit ito ang pinakamahalaga...


Idagdag bilang ginustong mapagkukunan sa Google