當前位置:首頁 > 嵌入式培訓(xùn) > 嵌入式學習 > 講師博文 > 單片機最小系統(tǒng)概述
摘要: 單片機作為一種數(shù)字邏輯控制器件,它的正常工作需要滿足一些條件,最小系統(tǒng)就是保證單片機運行做需要的最基本條件,主要包含電源、時鐘電路以及上電復(fù)位電路。
單片機最小系統(tǒng)概述
單片機也叫微控制器(MCU),是一種數(shù)字邏輯控制器件,內(nèi)部有復(fù)雜的電路組成。根據(jù)單片機的原理,單片機的正常工作需要一些條件,我們把滿足單片機工作的最基本電路組成稱為單片機最小系統(tǒng)。
LPC11C14單片機簡介
基于 ARM Cortex-M0 的 LPC111x/LPC11Cxx 系列微控制器是低功耗,32 位微控制器家族中 的一員,面向 8、16 位微處理應(yīng)用,具有高性能,低功耗,簡單指令集,統(tǒng)一編址尋址等 優(yōu)點,而且,相對于現(xiàn)在市場上存在的 8/16 位架構(gòu)來說,它有效的降低了代碼長度。
LPC111x/LPC11Cxx 系列微控制器的工作頻率可高達 50MHZ。
LPC111x/LPC11Cxx 系列微控制器加入的外圍組件包括:高達 32KB 的 flash 存儲器,8KB 的數(shù)據(jù)存儲器 , 一個增強快速模式 (FM+)I2C 接口, 一個 RS-485/EIA-485 標準的通用異 步串行收發(fā)器,兩個具有 SSP 特性的 SPI 接口,四個通用定時器,一個 10 位 ADC 和 42 個 GPIO 引腳。
片上 C_CAN 驅(qū)動器和閃存的系統(tǒng)編程工具通過 C_CAN 連接在 LPC11Cxx 里,此外 LPC11C2x 還包含一個一個片上 CAN 收發(fā)器。
最小系統(tǒng)基本組成
單片機的種類有很多,不同公司不同型號的單片機在電路設(shè)計上也不盡相同,所以在使用一款單片機時,一定要先獲取單片機的數(shù)據(jù)手冊(datasheet)以及用戶使用手冊(User Manual)。本文使用的單品機是NXP(恩智浦)公司設(shè)計開發(fā)的LPC11C14單片機,該單片機屬于LPC11xx系列,是在LPC1114的基礎(chǔ)上增加了CAN總線功能單元,基本的引腳排布以及其他內(nèi)部功能基本保持一致。 ![ ]
根據(jù)芯片的數(shù)據(jù)手冊和用戶使用手冊可以知道,LPC11C14單片機的最小系統(tǒng)組成如下:
電源供電
單片機是一種數(shù)字邏輯器件,工作時需要進行電源供電。在眾多單片機中,不同單片機有不同的供電電壓,如傳統(tǒng)的51單片機多為5V或3.3V,但是大多數(shù)單片機的都可以在一定的電壓范圍內(nèi)正常工作,例如宏晶公司2008年11月發(fā)布的STC12系列單片機數(shù)據(jù)手冊中,STC12C系列的單片機電壓范圍是3.3~5.5V;STC12L系列的單片機電壓范圍是2.2~3.6V。
對于LPC11C14,根據(jù)芯片手冊,可以了解到,LPC11C14的工作電壓范圍:1.8V~3.6V
在芯片手冊中可以看到,芯片的8、44兩個引腳是電源的正極輸入引腳,這兩個引腳分別連接到了芯片內(nèi)部的穩(wěn)壓器、芯片內(nèi)的外設(shè)以及ADC功能單元,用于給芯片供電。
5、41兩個引腳是芯片的接地引腳,也就是電源的負極。
在芯片工作的時候,首先要確保電源的這4個引腳被正確的連接在電源的正負極上。
外部時鐘電路
時鐘電路就是一個振蕩器,給單片機提供一個節(jié)拍,單片機執(zhí)行各種操作必須在這個節(jié)拍的控制下才能進行,包括程序的運行。
LPC111x/LPC11Cxx 包含三個獨立的振蕩器。分別是系統(tǒng)振蕩器、內(nèi)部 RC 振蕩器 (IRC) 和 看門狗振蕩器。 在具體應(yīng)用中,每一個振蕩器都可以有不止一個用途。
復(fù)位之后,LPC111x/LPC11Cxx 會在內(nèi)部 RC 振蕩器下工作,直到通過軟件進行切換。這就使得系統(tǒng) bootloader 工作在一個已知的頻率下而不會受任何外部晶振的影響。
如果作為最小電路,在電路上可以什么都不用做,單片機內(nèi)部集成了一個頻率為12MHz的RC振蕩器,頻率誤差1%,但是如果想要提高單片機的時鐘精度,就需要在單片機外部提供更加精準的時鐘震蕩信號。
上圖為在XTALIN和XTALOUT之間外接無源晶體振蕩器的原理圖,可以用晶體振蕩器產(chǎn)生的震蕩信號驅(qū)動單片機工作,多數(shù)情況下晶體振蕩器選用12MHz,匹配電容選用10pF。
上電復(fù)位電路
上電復(fù)位電路是一種用來使電路恢復(fù)到起始狀態(tài)的電路,由于單片機是基于時序控制的數(shù)字電路,它需要穩(wěn)定的時鐘信號,因此在電源上電時,需要等待單片機內(nèi)部的電源系統(tǒng)以及時鐘系統(tǒng)穩(wěn)定工作時,才可以讓單片機開始工作,這個等待過程就是上電復(fù)位電路所起的作用。
下圖為LPC11C14的上電時序圖:
簡而言之,對于LPC11C14單片機,上電復(fù)位電路的作用就是在上電時,讓單片機的RESET引腳保持低電平,延遲一段時間后,拉高電平,電平的跳變會觸發(fā)單片機內(nèi)部的施密特觸發(fā)器,收到觸發(fā)信號后,處理器從地址 0 處 (即最初的從引導(dǎo)塊映射的復(fù)位向量)開始執(zhí)行程序。同時所有的處理器和外設(shè)的寄存器被初始為預(yù)定值 。
如上所示電路是最簡單的RC上電復(fù)位電路。
驗證單片機工作狀態(tài)
當單片機最小系統(tǒng)電路搭建完成時,需要知道單片機是否正確工作,過程比較簡單,借助示波器,檢測晶體振蕩器的引腳是否產(chǎn)生震蕩信號,如果產(chǎn)生了震蕩信號,則表明單片機已經(jīng)開始運行。
如果沒有示波器,可以用萬用表測量晶體振蕩器的引腳電壓,如果晶振起振,會在引腳上測出1.8V左右的電壓值。