LPC800系列總覽
前面一章已經(jīng)簡(jiǎn)要地介紹了LPC800的基本特性和系列中各產(chǎn)品之間的對(duì)比。本章將通過(guò)框圖的形式,給出更詳細(xì)的配置信息,并引導(dǎo)讀者從框圖中捕捉到有用的信息。
下面先展示一下LPC81x/82x的框圖,然后再進(jìn)行一些解讀。
圖1.LPC81x系統(tǒng)框圖
圖2.LPC82x系統(tǒng)框圖
從上面兩個(gè)框圖中,可以得到以下一些基本信息:
LPC81x與LPC82x在系統(tǒng)架構(gòu)上是一樣的。兩者都是使用Cortex-M0+CPU核心,CPU通過(guò)AHB輕總線連接片內(nèi)存儲(chǔ)器(包括Flash、SRAM和ROM),同時(shí)經(jīng)AHB至APB的橋接連接訪問(wèn)各種片上外部設(shè)備。
GPIO模塊與CPU有直接通道,CPU對(duì)它的訪問(wèn)不需經(jīng)過(guò)AHB或APB總線。這是Cortex-M0+核心的主要特色之一,可以實(shí)現(xiàn)快速的GPIO訪問(wèn)。由于此直接通道,GPIO的最快輸入輸出速度可以達(dá)到CPU時(shí)鐘速度的1/2,相對(duì)于Cortex-M3/M4產(chǎn)品,由于需要通過(guò)普通的系統(tǒng)總線,GPIO只能達(dá)到CPU時(shí)鐘速度的1/4,有本質(zhì)的區(qū)別。
框圖里可以清晰準(zhǔn)確地看出,每個(gè)系列的外設(shè)配置情況,包括外設(shè)的種類、數(shù)量、輸入輸出信號(hào)以及信號(hào)方向等。這里舉幾個(gè)例子,更詳細(xì)地看看:
a.LPC81x和LPC82x都具有3個(gè)USART模塊,每個(gè)USART模塊都有5個(gè)輸入輸出信號(hào)。
b.LPC82x具有4個(gè)I2C模塊,但LPC81x只有1個(gè)I2C模塊。
c.LPC82x具有ADC功能,但LPC81x沒(méi)有。ADC模塊最多有12個(gè)輸入端。
d.兩個(gè)系列都有SCT定時(shí)器,但LPC82x的SCT定時(shí)器輸入端具有一個(gè)“輸入選擇器”,而LPC81x的輸入端是與外界(通過(guò)開(kāi)關(guān)矩陣)直接相連。
我們知道CPU訪問(wèn)AHB上的設(shè)備的速度要快于訪問(wèn)APB上的設(shè)備,優(yōu)先級(jí)也較高。從框圖中可以看到所有的外設(shè),包括系統(tǒng)配置(SYSCON)和輸入輸出配置(IOCON)寄存器組,都是連接到APB總線,而SCT定時(shí)器卻是連接到AHB總線上,這樣的安排是為了保證可以更快地操控SCT。
LPC82x具有DMA控制器,它連接到AHB總線上。LPC81x不具備DMA控制器。框圖中灰色框所標(biāo)示的設(shè)備,能夠觸發(fā)或請(qǐng)求DMA傳輸。
所有功能模塊的對(duì)外連接,都是通過(guò)“開(kāi)關(guān)矩陣”實(shí)現(xiàn)的。
兩個(gè)系列分別有18或29個(gè)連接到開(kāi)關(guān)矩陣的輸入輸出引腳,同時(shí)具有18或29個(gè)GPIO輸入輸出信號(hào)線。后面的開(kāi)關(guān)矩陣(SWM)章節(jié)會(huì)詳細(xì)介紹,GPIO模塊的輸入輸出信號(hào)是如何通過(guò)開(kāi)關(guān)矩陣連接到外部引腳的。
在芯片中,每一個(gè)功能模塊都相對(duì)獨(dú)立,它們通過(guò)一些功能信號(hào)與其它模塊連接互動(dòng);這些功能信號(hào)除了供電、時(shí)鐘、中斷是每個(gè)模塊都需要的以外,就是連接到AHB或APB總線上的總線信號(hào)(包括地址、數(shù)據(jù)和控制信號(hào)等),CPU通過(guò)總線信號(hào)訪問(wèn)功能模塊的寄存器組,實(shí)現(xiàn)配置和控制以及數(shù)據(jù)交換。在框圖中,每個(gè)功能模塊靠近總線一側(cè)的雙箭頭標(biāo)志,就是該模塊的總線信號(hào)。
對(duì)于具有需要連接到外部引腳的信號(hào),框圖中用單線箭頭標(biāo)示出該信號(hào)的方向,并標(biāo)注了信號(hào)名稱。對(duì)于沒(méi)有連接到外部引腳的模塊,框圖中只畫出了它們的總線信號(hào)。例如加窗看門狗定時(shí)器、多速率定時(shí)器、CRC計(jì)算器、DMA控制器等模塊。
要特別提一下的是IOCON(輸入輸出配置)這個(gè)模塊,框圖中畫出了它與APB總線連接的這一端,這表示CPU通過(guò)APB總線訪問(wèn)IOCON的寄存器組,圖中沒(méi)有畫出的是IOCON所控制的每一個(gè)IO引腳的部分,這部分內(nèi)容會(huì)在IOCON的相關(guān)章節(jié)中展示。
LPC83x的框圖與LPC82x的框圖非常相像,如果仔細(xì)比較就會(huì)發(fā)現(xiàn)以下一些差別,這些差別也反映在了上一章的對(duì)照表中:
圖3.LPC83x存儲(chǔ)器地址空間分配圖(片段)
圖4.LPC83x系統(tǒng)框圖
當(dāng)然,細(xì)心的讀者也注意到了,LPC83x的適用工作溫度范圍是-40°C ~ +85°C,LPC81x/LPC82x和LPC84x的適用工作溫度范圍擴(kuò)大到-40°C ~ +105°C。
LPC84x相較前面幾個(gè)系列做了很大的擴(kuò)充,整體的結(jié)構(gòu)沒(méi)有變,存儲(chǔ)器變大了,增加了一些新的外設(shè),引腳數(shù)目也增加了很多,使得她的應(yīng)用范圍更廣,功能更靈活。
LPC84x的數(shù)據(jù)手冊(cè)和用戶手冊(cè)中,在框圖的畫法上換了一種風(fēng)格,這樣畫更強(qiáng)調(diào)功能性以及模塊的配置。同時(shí)在這個(gè)框圖中,可以比前面幾個(gè)系列的框圖更直觀地看到AHB總線矩陣的連接方式,讀者可以更清晰地了解系統(tǒng)運(yùn)行時(shí)的性能。
圖5.LPC84x系統(tǒng)框圖(功能配置)
上圖中的綠色虛線框部分就是AHB矩陣,框中的豎線是兩個(gè)總線主設(shè)備,橫線是總線的從設(shè)備。主從設(shè)備的區(qū)分在于,主設(shè)備能夠主動(dòng)發(fā)起數(shù)據(jù)傳輸,并且需要發(fā)出讀寫控制信號(hào)和驅(qū)動(dòng)地址信號(hào)線,而從設(shè)備只能被動(dòng)地接受地址和控制信號(hào),發(fā)送或接收數(shù)據(jù)。
在AHB矩陣中,共有五組從設(shè)備:
默認(rèn)存儲(chǔ)執(zhí)行指令的Flash閃存和ROM。
第一個(gè)8KB的SRAM,此存儲(chǔ)區(qū)的基本功能是存放程序運(yùn)行時(shí)的數(shù)據(jù),也可以用于存儲(chǔ)Cortex-M0+核心執(zhí)行指令的追蹤信息,供調(diào)試程序用。
第二個(gè)8KB的SRAM,此存儲(chǔ)區(qū)不能用于存放追蹤信息。
AHB至APB的橋。
SCT定時(shí)器、DMA控制器、CRC計(jì)算器、MTB控制器和FAIM控制器。
不同的主設(shè)備可以同時(shí)訪問(wèn)不在同一組的從設(shè)備,例如在CPU從Flash取指令并執(zhí)行時(shí),DMA控制器可以同時(shí)在SRAM中搬移數(shù)據(jù);或者在CPU從第一個(gè)SRAM區(qū)存取數(shù)據(jù)的同時(shí),DMA控制器在另一個(gè)SRAM區(qū)存取數(shù)據(jù)。
處在同一組的從設(shè)備,只能按順序分別被訪問(wèn)。
讀者了解了這些內(nèi)部構(gòu)造,可以根據(jù)自己的需要合理安排程序的執(zhí)行順序,最大限度地利用芯片內(nèi)部的數(shù)據(jù)通路,實(shí)現(xiàn)最佳性能。
在APB總線上,掛了很多設(shè)備,圖中設(shè)備的順序是按照它們的寄存器組,在存儲(chǔ)空間分配的地址順序排列的。對(duì)照用戶手冊(cè)中的存儲(chǔ)器地址映像表,可以知道每個(gè)APB外設(shè)的寄存器組分別占據(jù)了16KB的地址空間,看門狗的寄存器組處于所有APB外設(shè)地址空間的最低地址。
下面的框圖是按照LPC81x/LPC82x/LPC83x的風(fēng)格,從使用者的視角重畫的LPC84x系統(tǒng)框圖。
圖6.LPC84x系統(tǒng)框圖(程序員視角)
與其它幾個(gè)系列的框圖比較,我們可以看出不少新的東西:
更多的Flash和SRAM容量。
FAIM模塊。FAIM用于在系統(tǒng)啟動(dòng)時(shí),快速地配置其它模塊的初始狀態(tài),包括引腳的方向和上拉或下拉,啟動(dòng)時(shí)的ISP端口和配置,以及為低功耗而設(shè)置的低主頻啟動(dòng)等。
定時(shí)器CTimer。該32位定時(shí)器有四個(gè)輸入捕獲和四個(gè)輸出匹配信號(hào),但芯片上只引出了三個(gè)捕獲和三個(gè)匹配信號(hào),可以與外部引腳相連。
兩個(gè)10位DAC模塊。
從LPC82x最多的29個(gè)輸入輸出引腳,大幅增加到54個(gè)引腳,而且所有引腳功能都是經(jīng)過(guò)開(kāi)關(guān)矩陣的配置。
STC定時(shí)器的輸出信號(hào),比LPC82x/83x增加了一個(gè),達(dá)到7個(gè)。
模擬比較器的輸入端,比LPC81x/82x增加了三個(gè),達(dá)到5個(gè)。
與前面的框圖相比,圖8中還可以看到一個(gè)“JTAG測(cè)試和邊界掃描接口”,和一些信號(hào)線從“時(shí)鐘發(fā)生器,電源控制”模塊引出,這些內(nèi)容在其它系列里面也有相同的部分存在,只是沒(méi)有畫出來(lái)而已。
用于程序追蹤調(diào)試的MTB存儲(chǔ)器和控制接口,在其它系列里也是存在的,同樣也沒(méi)有畫在系統(tǒng)框圖中。
在本書即將完成之際,恩智浦又發(fā)布了一個(gè)新的子系列——LPC80x,分別有LPC802和LPC804兩種配置,及多種封裝形式,詳見(jiàn)表1(見(jiàn)第一章)。
下面是LPC 802和LPC804的框圖,此處不多做解釋,讀者可以結(jié)合前面幾個(gè)子系列的框圖,對(duì)照比較之后就能夠看出區(qū)別來(lái)。
圖7.LPC802系統(tǒng)框圖
圖8.LPC804系統(tǒng)框圖
圖中可以明顯看出LPC804是LPC802的增強(qiáng)版,增加了電容觸摸接口、可編程邏輯單元(PLU)、增加了10位的DAC輸出、增加了一個(gè)I2C接口,存儲(chǔ)器容量也增加了一倍,性價(jià)比更高了。
LPC86x是2023年NXP發(fā)布的新的產(chǎn)品系列。這里在原作者的基礎(chǔ)上補(bǔ)充進(jìn)來(lái)。
LPC86x針對(duì)LPC84x的基礎(chǔ)上做了進(jìn)一步的優(yōu)化,針對(duì)電機(jī)應(yīng)用移除了CTimer和SCT同時(shí)增加了兩個(gè)FlexTimer用于電機(jī)應(yīng)用,提升了ADC的采樣率,優(yōu)化了ADC和FlexTimer聯(lián)動(dòng)機(jī)制,增加了新的外設(shè)I3C,使得它的應(yīng)用范圍更廣,功能更靈活。
LPC86x精簡(jiǎn)了Switch Matrix的功能,即FlexTimer的相關(guān)輸入輸出功能只能被軟件分配到固定的三個(gè)外部引腳上去,其余外設(shè)的Switch Matrix功能不變。
LPC86x在LPC84x的基礎(chǔ)上將SRAM縮減到8kB,減少了USART,I2C的數(shù)量,刪除了MTB接口,刪除了DAC和電容觸摸等功能。
圖9.LPC86x配置框圖
END
更多恩智浦AI-IoT市場(chǎng)和產(chǎn)品信息,邀您同時(shí)關(guān)注“NXP客棧”微信公眾號(hào)
NXP客棧
恩智浦致力于打造安全的連接和基礎(chǔ)設(shè)施解決方案,為智慧生活保駕護(hù)航。
長(zhǎng)按二維碼,關(guān)注我們
恩智浦MCU加油站
這是由恩智浦官方運(yùn)營(yíng)的公眾號(hào),著重為您推薦恩智浦MCU的產(chǎn)品信息、開(kāi)發(fā)技巧、教程文檔、培訓(xùn)課程等內(nèi)容。
長(zhǎng)按二維碼,關(guān)注我們
原文標(biāo)題:LPC800前生今世 第二章-系列總覽
文章出處:【微信公眾號(hào):恩智浦MCU加油站】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
-
mcu
+關(guān)注
關(guān)注
146文章
17019瀏覽量
350373 -
恩智浦
+關(guān)注
關(guān)注
14文章
5830瀏覽量
106746
原文標(biāo)題:LPC800前生今世 第二章-系列總覽
文章出處:【微信號(hào):NXP_SMART_HARDWARE,微信公眾號(hào):恩智浦MCU加油站】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論