周立功教授新書《面向AMetal框架與接口的編程(上)》,對AMetal框架進(jìn)行了詳細(xì)介紹,通過閱讀這本書,你可以學(xué)到高度復(fù)用的軟件設(shè)計(jì)原則和面向接口編程的開發(fā)思想,聚焦自己的“核心域”,改變自己的編程思維,實(shí)現(xiàn)企業(yè)和個(gè)人的共同進(jìn)步。經(jīng)周立功教授授權(quán),即日起,致遠(yuǎn)電子公眾號將對該書內(nèi)容進(jìn)行連載,愿共勉之。
第一章為AM824-Core 開發(fā)套件,本文為 1.1 LPC824 微控制器和1.2 LPC84x 微控制器。
本章導(dǎo)讀:
隨著物聯(lián)網(wǎng)技術(shù)的發(fā)展,MCU 處理器的能力日益強(qiáng)大,如今的MCU 與微處理器的界線越來越模糊,將會(huì)進(jìn)一步融合成為嵌入式處理器。由于AMetal 已經(jīng)完全屏蔽了底層的復(fù)雜細(xì)節(jié),因此開發(fā)者僅需了解MCU 的基本功能就可以了。
1.1 LPC824 微控制器
>>> 1.1.1 特性
-
系統(tǒng):
-ARM Cortex-M0+嵌入式處理器,內(nèi)置可嵌套中斷向量控制器(NVIC),系統(tǒng)節(jié)拍定時(shí)器,運(yùn)行時(shí)頻率高達(dá)30 MHz;
-支持串行線調(diào)試(SWD)模式與JTAG 邊界掃描(BSDL)模式。
-
最高32kB 片內(nèi)Flash 和8kB SRAM,帶64 字節(jié)頁面寫入和擦除功能。
-
數(shù)字外設(shè):
-集成了多達(dá)32 個(gè)通用I/O 引腳,并具備可配置上拉/下拉電阻、可編程開漏模式、輸入反相器和干擾濾波器,GPIO 方向控制支持各個(gè)位的獨(dú)立置位/清零/觸發(fā);
-4 個(gè)引腳具備20mA 的輸出驅(qū)動(dòng)能力,2 個(gè)開漏引腳具備20mA 灌入驅(qū)動(dòng)能力;
-GPIO 中斷生成能力,8 個(gè)GPIO 輸入具有布爾模式匹配特性;
-開關(guān)矩陣,用于靈活配置每個(gè)I/O 引腳功能;
-CRC 引擎,帶18 個(gè)通道和9 個(gè)觸發(fā)輸入的DMA。
-
定時(shí)器:
-狀態(tài)可配置定時(shí)器(SCTimer/PWM),輸入和輸出功能(包括捕獲和匹配)用于定時(shí)和PWM 應(yīng)用;
-四通道多速率定時(shí)器(MRT),以多達(dá)4 種可編程固定速率生成可重復(fù)中斷;
-自喚醒定時(shí)器(WKT),采用IRC、低功耗、低頻率內(nèi)部振蕩器作為時(shí)鐘,或always-on 電源域的外部時(shí)鐘輸入作為時(shí)鐘;
-窗口看門狗定時(shí)器(WWDT)。
-
模擬外設(shè):
-一個(gè)12-位ADC,多達(dá)12 個(gè)輸入通道,帶有多個(gè)內(nèi)部和外部觸發(fā)輸入,采樣速率高達(dá)1.2Msamples/s,ADC 支持兩個(gè)獨(dú)立的轉(zhuǎn)換順序;
-比較器,帶有4 個(gè)輸入引腳以及外部或內(nèi)部基準(zhǔn)電壓。
-
串行接口:
-3 個(gè)USART 接口,引腳功能通過開關(guān)矩陣和一個(gè)共用小數(shù)波特率發(fā)生器分配;
-2 個(gè)SPI 控制器,引腳功能通過開關(guān)矩陣分配;
-4 個(gè)I2C 總線接口。一個(gè)I2C支持高速模式plus,在兩個(gè)真開漏引腳和監(jiān)聽模式上數(shù)據(jù)率為1Mbit/s,三個(gè)I2C 支持標(biāo)準(zhǔn)數(shù)字引腳的數(shù)據(jù)率高達(dá)400kbit/s。
-
時(shí)鐘生成:
-調(diào)整到1.5%精度的12MHz 內(nèi)部RC 振蕩器,可選擇性地用作系統(tǒng)時(shí)鐘;
-晶體振蕩器,工作頻率范圍為1MHz 至25MHz;
-可編程看門狗振蕩器,頻率范圍為9.4kHz 至2.3MHz;
-用于WKT 的10 kHz 低功耗振蕩器;
-PLL 使CPU 無需使用高頻晶體即可生成最高CPU 主頻,可從系統(tǒng)振蕩器、外部時(shí)鐘輸入或內(nèi)部RC 振蕩器運(yùn)行;
-帶分頻器的時(shí)鐘輸出功能,可反映所有內(nèi)部時(shí)鐘源。
-
功率控制:
-可最大程度降低功耗的集成式PMU(電源管理單元);
-節(jié)能模式:睡眠模式、深度睡眠模式、掉電模式和深度掉電模式;
-深度睡眠模式和掉電模式可由USART 、SPI 和I2C 外設(shè)喚醒;
-深度掉電模式可由定時(shí)器控制進(jìn)行自喚醒;
-上電復(fù)位(POR),掉電檢測(BOD)。
-
單電源(1.8V~3.6V),工作溫度范圍-40℃~+105℃。
>>> 1.1.2 概述
如圖1.1 所示的LPC824 系列微控制器(MCU)具有豐富的片上外設(shè),除GPIO 外,還支持開關(guān)矩陣、狀態(tài)可配置定時(shí)器、多速率定時(shí)器、窗口看門狗定時(shí)器和DMA 控制器等。模擬外設(shè)包括12 位高速ADC 和模擬比較器,支持3 路UART、2 路SPI 和4 路I2C。此外芯片內(nèi)部還集成了12MHz 的RC 振蕩器,可以作為系統(tǒng)的時(shí)鐘源。
圖1.1 LPC824 功能框圖
LPC824 系列MCU 具有得天獨(dú)厚的低功耗優(yōu)勢,擁有業(yè)界領(lǐng)先的超低功耗(90uA/MHz)。此外還支持4種低功耗模式,用戶可以根據(jù)應(yīng)用需求,靈活地選擇合適的功耗模式,最低功耗模式下功耗不到1uA。
雖然這些概念對于初學(xué)者來說可能會(huì)感到非常陌生,但也不要害怕,如同你使用的計(jì)算機(jī)一樣,盡管也很復(fù)雜,但毫不影響你使用計(jì)算機(jī)編程和上網(wǎng)。
LPC812/824 同屬于LPC800 系列MCU,LPC824 是LPC812 系列的增強(qiáng)版本,外設(shè)資源更加豐富,可以更好地滿足不同場合的應(yīng)用需求。因?yàn)閮烧呦嗤庠O(shè)的寄存器保持一致,在軟件設(shè)計(jì)上可以做到完全兼容,大大降低了平臺建設(shè)的難度,可以根據(jù)不同需求進(jìn)行合理選擇,詳見表1.1。
表1.1 LPC800 系列MCU 選型表
LPC824 系列MCU 有兩種封裝,分別為TSSOP20 和HVQFN33,其引腳分布詳見圖1.2。
圖1.2 封裝示意圖
LPC824 系列MCU 的引腳描述及主要功能詳見表1.2。
表1.2 LPC824 系列的引腳描述
1.2 LPC84x 微控制器
>>> 1.2.1 特性
-
系統(tǒng):
-ARM Cortex-M0+處理器,運(yùn)行時(shí)頻率高達(dá)30 MHz,支持單周期乘法和快速的單周期I/O 口;
-內(nèi)置可嵌套中斷向量控制器(NVIC);
-系統(tǒng)節(jié)拍定時(shí)器;
AHB 總線矩陣:
-支持串行線調(diào)試(SWD)模式與JTAG 邊界掃描(BSDL)模式;
-微跟蹤緩沖(MTB)。
-
存儲
-最高64kB 片內(nèi)Flash,支持 64 字節(jié)頁面寫入和擦除功能;
-FAIM 內(nèi)存允許用戶配置芯片上電時(shí)的行為;
-代碼讀保護(hù)(CRP)
-最高可到16 KB 的SRAM,包括2 塊8 KB 連續(xù)的SRAM,其中一塊8 KB 的SRAM 可被MTB 使用;
-支持位帶操作,用于支持單個(gè)位的原子操作。
-
-Bootloader;
-支持應(yīng)用程序Flash 編程(IAP);
-支持片上系統(tǒng)編程(ISP),通信接口可以是USART、SPI 和I2C;
-整數(shù)除法API 接口。
-
數(shù)字外設(shè):
-集成了多達(dá)32 個(gè)通用I/O 引腳,并具備可配置上拉/下拉電阻、可編程開漏模式、輸入反相器和干擾濾波器,GPIO 方向控制支持各個(gè)位的獨(dú)立置位/清零/翻轉(zhuǎn);
-4 個(gè)引腳具備20mA 的輸出驅(qū)動(dòng)能力;
-2 個(gè)開漏引腳具備20mA 灌入驅(qū)動(dòng)能力;
-GPIO 中斷生成能力,8 個(gè)GPIO 輸入具有布爾模式匹配特性;
-開關(guān)矩陣,用于靈活配置每個(gè)I/O 引腳功能;
-CRC 引擎;
-帶25 個(gè)通道和13 個(gè)觸發(fā)輸入的DMA;
-電容觸摸屏接口。
-
定時(shí)器:
-狀態(tài)可配置定時(shí)器(SCTimer/PWM),輸入和輸出功能(包括捕獲和匹配)用于定時(shí)和PWM 應(yīng)用,支持8 個(gè)匹配/捕獲、8 個(gè)事件、8 個(gè)狀態(tài);
-1 個(gè)通用定時(shí)器,帶有4 個(gè)匹配輸出、3 個(gè)輸入捕獲,支持PWM 模式,外部計(jì)數(shù)和DMA;
-四通道多速率定時(shí)器(MRT),以多達(dá)4 種可編程固定速率生成可重復(fù)中斷;
-自喚醒定時(shí)器(WKT),采用IRC、低功耗、低頻率內(nèi)部振蕩器作為時(shí)鐘,或always-on 電源域的外部時(shí)鐘輸入作為時(shí)鐘;
-窗口看門狗定時(shí)器(WWDT)。
-
模擬外設(shè):
-一個(gè)12-位ADC,多達(dá)12 個(gè)輸入通道,帶有多個(gè)內(nèi)部和外部觸發(fā)輸入,采樣速率高達(dá)1.2Msamples/s,ADC 支持兩個(gè)獨(dú)立的轉(zhuǎn)換序列;
-比較器,帶有4 個(gè)輸入引腳以及外部或內(nèi)部基準(zhǔn)電壓;
-2 個(gè)10 位DAC。
-
串行接口:
-5 個(gè)USART 接口,引腳功能通過開關(guān)矩陣和一個(gè)共用小數(shù)波特率發(fā)生器分配;
-2 個(gè)SPI 控制器,引腳功能通過開關(guān)矩陣分配;
-4 個(gè)I2C 總線接口。一個(gè)I2C 支持高速模式plus,在兩個(gè)真開漏引腳和監(jiān)聽模式上數(shù)據(jù)率為1Mbit/s,三個(gè)I2C支持標(biāo)準(zhǔn)數(shù)字引腳的數(shù)據(jù)率高達(dá)400kbit/s。
-
時(shí)鐘生成:
-自由運(yùn)行的振蕩器(FRO),精度位±1%,可以提供18MHz、24MHz 或者30MHz 的時(shí)鐘,也可以分頻到9MHz、12MHz 或者15MHz 作為系統(tǒng)時(shí)鐘;
-使用FAIM 內(nèi)存完成低功耗啟動(dòng),運(yùn)行頻率3MHz;
-晶體振蕩器,工作頻率范圍為1MHz 至25MHz;
-低功耗振蕩器可做看門狗時(shí)鐘;
-可編程看門狗振蕩器,頻率范圍為9.4kHz 至2.3MHz;
-PLL 使CPU 無需使用高頻晶體即可生成最高CPU 主頻,可從系統(tǒng)振蕩器、外部時(shí)鐘輸入或內(nèi)部RC 振蕩器運(yùn)行;
-帶分頻器的時(shí)鐘輸出功能,可反映所有內(nèi)部時(shí)鐘源。
-
功率控制:
-運(yùn)行模式下功耗最低可至90uA/MHz;
-內(nèi)部集成可最大程度降低功耗的PMU(電源管理單元);
-節(jié)能模式:睡眠模式、深度睡眠模式、掉電模式和深度掉電模式;
-深度睡眠模式和掉電模式可由USART 、SPI 和I2C 外設(shè)喚醒;
-深度掉電模式可由定時(shí)器控制進(jìn)行自喚醒;
-上電復(fù)位(POR),掉電檢測(BOD)。
-
單電源(1.8V~3.6V),工作溫度范圍-40℃~+105℃;
-
可選封裝有 LQFP64、LQFP48、HVQFN48、HVQFN33。
>>> 1.2.2 概述
如圖1.3 所示的LPC84x 系列微控制器(MCU)具有豐富的片上外設(shè),除GPIO外,還支持開關(guān)矩陣、狀態(tài)可配置定時(shí)器、多速率定時(shí)器、窗口看門狗定時(shí)器和DMA控制器等。模擬外設(shè)包括12 位高速ADC和2 個(gè)10 位DAC,支持5 路UART、2 路SPI 和4 路I2C。此外芯片內(nèi)部還集成了自由運(yùn)行振蕩器,可以作為系統(tǒng)的時(shí)鐘源。
圖1.3 LPC84x 功能框圖
LPC84x 系列MCU 具有得天獨(dú)厚的低功耗優(yōu)勢, 擁有業(yè)界領(lǐng)先的超低功耗(90uA/MHz)。此外還支持4 種低功耗模式,用戶可以根據(jù)應(yīng)用需求,靈活地選擇合適的功耗模式,最低功耗模式下功耗不到1uA。雖然這些概念對于初學(xué)者來說可能會(huì)感到非常陌生,但也不要害怕,如同你使用的計(jì)算機(jī)一樣,盡管也很復(fù)雜,但毫不影響你使用計(jì)算機(jī)編程和上網(wǎng)。
LPC84x 系列MCU 提供4 中不同的封裝,可以根據(jù)不同需求進(jìn)行合理選擇,詳見表1.3。
表1.3 LPC84x 系列MCU 選型表
LPC84x 系列MCU 的引腳描述及主要功能詳見表1.4。
表1.4 引腳描述
-
LPC
+關(guān)注
關(guān)注
8文章
136瀏覽量
77491 -
LPC824
+關(guān)注
關(guān)注
0文章
8瀏覽量
5256
原文標(biāo)題:周立功:認(rèn)識 LPC824 和 LPC84x 微控制器
文章出處:【微信號:ZLG_zhiyuan,微信公眾號:ZLG致遠(yuǎn)電子】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論