• Techo

什麼是單晶片、微控制器、MCU,淺談微控器的周邊硬體

單晶片、微控制器、MCU

這三個是完全相同的東西

也可以簡稱微控器

用一句話來解釋的話

微控器就是一台迷你電腦

用來控制運算量較少的嵌入式系統

比如說電熱水壺、倒車雷達、馬達控制

微控器在生活中是相當普遍的

我們不可能拿個人電腦來控制電熱水壺吧

為了cost down以及節省體積

我們只需要使用微控器來處理這些小事情就相當堪用

其微小的體積優勢

在以前智慧型手機尚未普遍以前

傳統手機就只使用微控器來運作

現在的智慧及手機效能直逼個人電腦

所以微控器(microcontroller)和個人電腦(personal computer)已經分不太出來


要買教育型微控器

必須先知道幾件事情

一、位元數

最少的MCU為8-bit

常見的有intel的8051系列以及microchip PIC系列

其CPU的指令集非常少

一個MCU大約落在台幣20~50以內

根本便宜到路邊撿就有(?)

再來就是16-bit MCU和32-bit MCU

當然位元數越多也就越貴

我們的個人電腦現在大多是64-bit的CPU了

二、時脈

也就是內部振盪器( oscillator )的速度

通常加上鎖向迴路(PLL)後

也就是所謂的倍頻電路

速度可以再上升2~4倍左右

三、價格

這種事情當然越便宜越好

四、支援的硬體模組

這部分將會比較專業

一個微控制器通常會具備最基本的幾個硬體模組

GPIO( General-purpose input/output )、UART( Universal Asynchronous Receiver/Transmitter )、TIMER (Timer Controller)、ADC(Analog-to-Digital Converter)、DAC(Digital-to-Analog Converter)、FMC(Flash memory controller)、WDT (Watchdog timer)、I2C、SPI(Serial Peripheral Interface)、PWM Generator

這裡每一個都可以寫一大篇文章

我簡單帶過

GPIO就是MCU上的 輸入與輸出腳位

可以任意控制輸出高低電位以及接受輸入

UART則是一種序列通訊協定

時常應用在RS232的接口上

Timer則是由硬體實現的計數數

最常被拿來配合中斷(interupt)使用

ADC可以 可以精確讀取類比電壓並轉成數位訊號

比如說溫度感測取樣、電壓感測取樣

DAC則是相反

FMC則是控制MCU內部儲存空間NAND Flash的控制器

WDT可以定期監控MCU是否處於卡死當掉的狀態並重開機

I2C、SPI和UART都是通訊協定

利用不同的電氣特性與通訊方式使用在不同的地方

PWM可以用在直流馬達控制和LED亮度

其使用不同的duty cycle來控制輸出


說了這麼多

還沒講到MCU是怎麼玩的呢

答案就是寫程式啦

到目前為止我只有用過C語言來實作MCU應用

由於寫MCU屬於底層的hardware driver控制

我們不需要太過物件導向的程式架構

而C語言可以直接存取記憶體內容

對於MCU的暫存器(register)控制相當方便

所以想要學MCU就必須會C語言喔


#微控制器 #電機 #資工 #開發板 #線上教學 #專職家教 #家教 #程式語言 #程式設計 #教育 #家教人生 #工程師 #電腦程式 #轉職 #興趣培養 #進修 #學習 #學程式 #一對一教學 #一對一課程 #一對一服務 #clanguage #轉職

937 次瀏覽
Screen Shot 2018-11-05 at 12.06.31 PM.pn
  • Instagram - White Circle
  • Google+ - White Circle
  • Facebook - White Circle

Contact Us

Techo私人程式家教

官方LINE ID : @tutortecho

zh-Hant.png

© Copyright 2018 by Sherry Wu and Techo Chao.

Proudly created with Wix.com,

but page loading is too slow,so I don't recommend it.