第一章為AM824-Core 開發套件,本文為 1.3 開關矩陣(SWM)和1.4 AM824-Core。
1.3 開關矩陣(SWM)
>>> 1.3.1 SWM 簡介
如圖1.4 所示的開關矩陣(Switch Matrix)是NXP 公司新推出的在MCU 中集成的一個非常有特色的外設功能,通過開關矩陣可以將芯片內部所有數字外設功能引腳分配到除電源、地之外的任意引腳,從而提高了設計的靈活性。
圖1.4 SWM 功能示意圖
由于開關矩陣的存在,因此可以將LPC824 的外設功能引腳信號分為固定功能信號和可分配數字信號,其對應的外設功能如下:
-
固定功能信號
GPIOx 、RESET、VDDCMP、ACMP_I1~ACMP_I4 、ADC_0~ADC_11、SWDIO、SWCLK、XTALIN、XTALOUT、CLKIN,以及標準I2C 開漏引腳I2C0_SDA 和I2C0_SCL,這些功能引腳都是固定在芯片外部某個管腳位置,不能通過 SWM 分配到其它外部管腳。
-
可分配數字信號
USART0、USART1、USART2、SPI0、SPI1、CTIN、CTOUT、I2C1、I2C2、I2C3、ACMP_O、CLKOUT,這些信號可以通過 SWM 分配到除電源/地以外的任意外部管腳。
>>> 1.3.2 SWM 應用
由于MCU 的部分數字外設可以根據需要分配到芯片其它引腳,因此將大大簡化用戶的設計。即:
(1)系統硬件設計時,以外圍器件布局及PCB 布線為主導,不用考慮信號的管腳位置,幫助緩解PCB 走線擁擠,降低開發成本;
(2)更換系統外圍器件或主控制器時,避免更改硬件設計,降低維護成本;
(3)分配多個功能到同一個引腳實現特殊功能(謹慎使用)。
下面我們以實際應用中幾個小案例來實際體驗一下SWM 的特點。
1. 解決硬件設計錯誤
用戶電路設計過程中,經常會出現一些意外的錯誤,比如串口主機和設備的TXD 引腳對應連接(實際應交叉連接),導致PCB 需要重新設計,增加產品的設計成本,如果主控制器支持SWM 功能,即便PCB 設計錯誤,也可以在不修改硬件的前提下保證功能正常。
圖1.5 解決硬件設計錯誤問題
如圖1.5(a)所示是MCU 驅動SPI Flash 的應用電路,但是可以發現此電路設計錯誤,SPI Flash 的MOSI/MISO 引腳和MCU 對應引腳應該直接相連,而實際電路中采用交叉連接,因此該電路無法直接使用。如果圖1.5(a)中的MCU 是LPC824,則可以靈活的通過SWM來實現SPI 外設引腳功能信號的重新分配,不用重新設計硬件而解決問題,詳見圖1.5(b)。
2. 簡化外圍設計
系統應用中不同電壓信號的通信問題是經常遇到的,比較常見的是3.3V 系統和5V 系統兼容問題,例如3.3V 系統產品通過串口和5V 系統產品通信,就要求TXD 和RXD 引腳之間經過電平轉換才能可靠通信。
LPC824 的電源供電范圍是1.8 V~3.6 V,通常工作在3.3V 電源環境中,如果使用LPC824 為核心的產品需要支持5V 串口通信,則LPC824 的串口通信接口TXD 和RXD 均需要經過處理才能與外部5V 系統相連接,這部分電路可以通過多個分立器件或者電平轉換芯片完成電平轉換,這樣既增加了設計復雜性又增加設計成本。但是LPC824 的第8、第9 引腳是標準開漏結構的引腳(默認I2C0 的I2C0_SDA 和I2C0_SCL 引腳分配在該引腳),實際應用中可以通過SWM 將UART 的TXD 和RXD 分配到這兩個引腳位置上,通過外接上拉電阻到5V 電源直接實現5V 電平的兼容,可以很好地簡化外圍設計實現相應功能,詳見圖1.6。
圖1.6 SWM 的靈活應用
1.4 AM824-Core
AM824 開發套件包括AM824-Core 和MiniCK100 仿真器,如圖1.7 所示為AM824-Core的示意圖,MCU 為NXP 半導體的LPC824M201JHI33,包括2 個MiniPort 接口、1 個MicroPort接口和1 個2×10 擴展接口。這些接口不僅將MCU 的所有I/O 資源引出,還可以借助MiniPort 接口和icroPort 接口外擴多種模塊。片上資源包括2 個LED 發光二極管、1 個無源蜂鳴器、1 個加熱電阻、1個LM75B 測溫芯片、1 個熱敏電阻、1 個TL431 基準源、1個多功能獨立按鍵和1 個復位按鍵,可以完成多種基礎實驗。
圖1.7 AM824-Core 開發板接口分布
AM824-Core 的出現簡化了用戶的硬件設計,使得學習LPC824 系列MCU 的難度大大降低,可以幫助初學者快速掌握基于32 位Cortex?-M0+內核微控制器的應用開發。
>>> 1.4.1 電源電路
1. 系統電源
AM824 通過5V 的USB 供電,需要將電壓轉為3.3V 給LPC824 使用。為了實現5V 到3.3V 的轉換,AM824 選用了美國EXAR 半導體公司的SPX1117M3-L-3.3V 電源管理器件。其輸入電壓為4.7V~10V,最大輸入電流可達800mA,且負載為800mA 時典型壓差為1.1V。
SOT223 封裝的SPX1117M3-L-3.3V 的典型應用電路詳見圖1.8,芯片的輸入和輸出端分別接了兩個濾波電容,通過濾波電容保障電壓的穩定減少毛刺干擾。
圖1.8 LDO 典型應用電路圖
AM824-Core 留有一個標準的Micro-USB 接口,大家平時可以在手機、移動充電寶等設備上看到該接口。因為LPC824 不支持USB 通信功能,所以該接口主要用于供電,可通過手機充電器或者電腦等設備提供5V 電源。
Micro-USB 是一種USB2.0 標準接口,是Mini-USB 的下一個版本。其特點如下:
-
Micro-USB 連接器比標準USB 和Mini-USB 連接器更小,節省空間;
-
具有高達10000 次的插拔壽命和強度;
-
盲插結構設計;
-
兼容USB1.1 (低速:1.5Mb/s,全速:12Mb/s) 和USB 2.0(高速:480Mb/s);
-
同時提供數據傳輸和充電。
2. 基準源電路
AM824-Core 開發板板載的基準源芯片是TL431,是一種常用的可控精密穩壓源。其主要特點如下:
-
可編程輸出電壓:2.5V~36V;
-
電壓參考源誤差:典型+/-0.4%@25℃;
-
低動態輸出阻抗,典型為0.22Ω;
-
1.0mA 到100mA 的灌電流能力。
TL431 輸出2.5V 基準電壓的電路詳見圖1.9,其中的R13 為限流電阻,可以保證輸入到TL431 的灌電流在1~100mA 以內。
圖1.9 基準源電路
>>> 1.4.2 最小系統
LPC824 微控制器的最小系統電路主要包括復位電路和時鐘電路兩部分,詳見圖1.10。由于LPC824 芯片內部集成了一個IRC 時鐘,因此外部的時鐘電路可以省略。
圖1.10 最小系統電路
當系統要求提供更精準的時鐘信號時,則可以使用外部時鐘電路,推薦的時鐘電路采用12MHz 外部晶振與電容C9 和C11 一起構成振蕩回路。
>>> 1.4.3 復位與調試電路
1. 復位電路
-
內部復位電路
如果要求不高,比如,直接驅動LED 數碼管和鍵盤掃描電路,則可以選用內部復位電路。或者干擾并不嚴重的場合,也可以選用內部復位電路。
-
RC 復位電路
計算機系統都有邏輯電路,而在電源上電時,一些邏輯電路的狀態是不可預測的。所以若要使數字設備或計算機正常工作,在上電時必須要使系統中所有邏輯電路的輸出處于指定的高或低狀態,這就是復位電路的作用。復位電路能使設備在剛上電時,且電源電壓穩定后,自動產生一個具有一定寬度的高或低電平的脈沖信號。
利用電容的充放電延時原理可產生上電時MCU 所需的復位脈沖信號,如圖1.11 所示為產生低電平復位信號的電路原理圖。在圖1.11 中,MCU 上電時,由于電容C 兩端的電壓VC 不能突變,因此VC 保持低電平。但隨著電容C 的充電,VC 不斷上升,上升曲線詳見圖1.11。只要選擇合適的R 和C,VC 就可以在MCU 復位電壓以下持續足夠的時間使MCU 復位。復位之后,VC 上升至電源電壓,MCU開始正常工作。相當于在MCU 上電時,自動產生了一個一定寬度的低電平脈沖信號,使MCU 復位。
圖1.11 RC 復位電路圖
如圖1.12 所示為AM824-Core 的RC 復位電路,其中,D2 的作用是在電源電壓消失時為電容C1 提供一個迅速放電的回路,使復位端的電壓迅速回零,以便下次上電時能可靠地復位。短接J8 之后,也可以通過復位按鍵實現人工復位。
圖1.12 復位電路
2. 調試電路
AM824-Core 將SWD 調試接口引出。相對于JTAG 調試模式來說,SWD 調試模式速度更快且使用的I/O 口更少,因此AM824-Core 開發板引出SWD 調試接口,其參考電路詳見圖1.13,具體引腳功能介紹詳見表1.5。
圖1.13 調試電路
表1.5 調試管腳說明
>>> 1.4.4 板載外設電路
1. LED 電路
AM824-Core 開發板板載了兩路LED 發光二極管,可以完成簡單的顯示任務,電路詳見圖1.14,引腳標號GPIO_LED0、GPIO_LED1 對應PIO0_8、PIO0_9,LED 為低電平有效(低電平有效)。LED 電路的控制引腳與微控制器的I/O 引腳通過J9 和J10 相連。電路中的R3 和R4 為LED 的限流電阻,選擇1.5kΩ這個值可以避免LED 點亮時過亮。
圖1.14 板載LED 電路
2. 蜂鳴器電路
為了便于調試,AM824-Core 設計了蜂鳴器驅動電路,詳見圖1.15,引腳標號PIO_BEEP對應PIO0_2。AM824-Core 開發板使用的是無源蜂鳴器,D1 起保護三極管的作用,當突然截止時無源蜂鳴器兩端產生瞬感應電動勢可以通過D1 迅速釋放掉,避免疊加到三極管集電極上從而擊穿。若使用有源蜂鳴器則D1 不用焊接。當不使用蜂鳴器的時候也可以用J7 斷開蜂鳴器電路與I/O 口的連接。
圖1.15 板載蜂鳴器電路
3. 加熱電阻與按鍵電路
AM824-Core 開發板創新性的設計了一套測溫實驗電路。包含加熱電路和數字/模擬測溫電路。其中加熱電路采用了一個阻值為20~50Ω的功率電阻(2W),通過按鍵來控制,詳見圖1.16,引腳標號GPIO_KEY 對應PIO0_1。電阻越小通過其電流越大,產生的熱量越大,因此R32若焊接小電阻時,不宜加熱時間過長。按鍵的功能需要用J14 上的跳線帽來選擇為加熱按鍵。當按鍵按下時電路導通,電阻上產生的熱量會導致電阻周圍的溫度上升,這時可以通過測溫電路觀察溫度上升情況。
圖1.16 加熱電路
4. 數字測溫電路
AM824-Core 選擇LM75B 作為數字測溫電路的主芯片,LM75B 與LM75A 完全兼容,只是靜態功耗會稍低一些,電路詳見圖1.17,引腳標號PIO_SDA、IO_SCL 對應PIO0_11、PIO0_10。LM75B 是一款內置帶隙溫度傳感器和Σ-Δ模數轉換功能的溫度數字轉換器,它也是溫度檢測器,并且可提供過熱輸出功能。
圖1.17 LM75B 電路
LM75B 的主要特性如下:
-
溫度精度可達0.125℃的精度;
-
較寬電源電壓范圍:2.8V~5.5V;
-
環境溫度范圍:Tamb=-55℃~+125℃;
-
較低的功耗,關斷模式下消耗的電流僅為1μA;
-
I2C 總線接口,同一總線上可連接多達8 個器件。
在電路設計上,R5 和R6 是I2C 總線的上拉電阻。由于板載只有一片LM75B,不用考慮芯片的地址問題,因此芯片的A0~A2 引腳可以直接接地。OS 為芯片的過熱輸出,可以外接繼電器等器件實現一個獨立溫控器的功能,這里由于溫控是通過單片機控制的,因此這個引腳可以不使用。
5. 模擬測溫電路
模擬測溫電路是利用熱敏元件的電特定隨溫度變化的特點進行測量,AM824-Core 開發套件選擇了熱敏電阻作為測溫元件,熱敏電阻選用的是MF52E-103F3435FB-A,當測溫范圍在0~85℃,電阻變化范圍為27.6~1.45KΩ。測溫電路詳見圖1.18,引腳標號PIO_ADC 對應PIO_14,其采用的是簡單的電阻分壓電路,其中C8 是為了電路輸出更加穩定。單片機通過ADC 采集分壓電阻上的電壓值,當溫度變化時,熱敏電阻的阻值發生變化,單片機采集到的ADC值也會發生變化。通過計算得到熱敏電阻的阻值,再對比熱敏電阻阻值與溫度的對照表,就可以得到當前的溫度值。
圖1.18 熱敏電阻電路
>>> 1.4.5 跳線帽使用
板載外設接口設計在MCU 引腳和板載外設電路之間,可以通過跳線帽進行短接,詳見圖1.19。這樣設計是為了外設電路在不使用的時候可以斷開與MCU 引腳的連接,而不會影響到這些引腳當作其它功能使用,詳見表1.6。
圖1.19 板載外設接口引腳圖
表1.6 板載外設接口管腳說明
>>> 1.4.6 MiniPort 接口
MiniPort(2×10)接口是一個通用板載標準硬件接口,通過該接口可以與配套的標準模塊相連,便于進一步簡化硬件設計和擴展。其特點如下:
-
采用標準的接口定義,采用2×10 間距2.54mm 的90°彎針;
-
可同時連接多個擴展接口模塊;
-
具有16 個通用I/O 端口;
-
支持1 路SPI 接口;
-
支持1 路I2C 接口;
-
支持1 路UART 接口;
-
支持一路3.3V 和一路5V 電源接口。
標準MiniPort(2×10)接口功能說明詳見圖1.20,MiniPort(2×10)接口使用的連接器為2.54mm 間距的2×10 排針/排母(90°),其封裝樣式詳見圖1.21。主控制器底板選用90°排針,功能模塊選用90°排母與主機相連,同時采用90°排針將所有引腳引出,實現模塊的橫向堆疊。
圖1.20 MiniPort(2×10)接口功能說明
圖1.21 MiniPort(2×10)接口連接器
MiniPort 的90°排針與90°排母之間連接關系,A1 - B20、A2 - B19……A19 – B2、A20 - B1(A 代表排針,B 代表排母)。MiniPort(2×10)目前支持的模塊為MiniPort-Key、MiniPort-LED、MiniPort-View 和MiniPort-595,這些模塊不僅可以直接插入MiniPort,而且還可以通過杜邦線與其它各種開發板相連。
AM824-Core 開發板搭載了2 路MiniPort,接口標號為J3 和J4。J3 與J4 接口引腳完全相同,用戶可根據習慣選擇使用,其具體的引腳分配詳見表1.7。
表1.7 MiniPort 引腳分配
>>> 1.4.7 2×10 擴展接口說明
LPC824M201JHI33 有33 個引腳,I/O 管腳29 個。由于MiniPort 僅定義了16 個I/O,因此還有部分I/O 未引出。
為了便于擴充外圍接口,因此需要將剩余的引腳全部引出,基于此,還為M824-Core 設計了一個2×10 擴展接口,不僅將MiniPort 未使用的I/O 引出,還包含了一組電源接口和一個參考源引腳(VREF),詳見圖1.22。
圖1.22 2×10 擴展接口引腳圖
>>> 1.4.8 MicroPort 接口
為了便于擴展開發板功能,ZLG 制定了MicroPort 接口標準,MicroPort 是一種專門用于擴展功能模塊的硬件接口,其有效地解決了器件與MCU 之間的連接和擴展。其主要特點如下:
-
具有標準的接口定義;
-
接口包括豐富的外設資源,支持UART、I2C、SPI、PWM、ADC 和DAC 功能;
-
配套功能模塊將會越來越豐富;
-
支持上下堆疊擴展。
MicroPort 分為標準接口和擴展接口,擴展接口可實現更豐富的外設應用,不同的應用環境下可以選擇不同的接口類型。MicroPort 接口使用的連接器為2.54 間距的1×9 圓孔排針,高度為7.5mm,實現上下堆疊連接。MicroPort分為標準接口和擴展接口。MicroPort 標準接口采用U 型設計,三邊各9 個引腳,共27 個引腳,其引腳功能定義詳見圖1.23。MicroPort 標準接口包含22 個I/O 引腳,最多可實現1 路UART、1 路I2C、1 路SPI、2 路ADC、1 路DAC 和4 路PWM 功能,也可以全部當做普通I/O 使用。MicroPort 標準接口還包含3.3V、5V 電壓引腳和VREF(參考基準源)引腳,以及MCU 的復位引腳。
圖1.23 MicroPort 標準接口引腳定義
MicroPort 擴展接口是在MicroPort 標準接口的基礎上,在U 型底部增加一排1×9 的引腳,這9 個引腳可以引出SDIO 和USB 擴展接口,也可以當做普通的I/O 使用。對于部分MCU 來說,由于其引腳資源較為豐富,因此可以借助MicroPort 擴展接口支持更多的模塊實現更多的擴展功能,MicroPort 擴展接口增加的引腳定義詳見圖1.24。MicroPort 擴展接口的SDIO 接口為四線式,USB 接口可以支持OTG 模式。
圖1.24 MicroPort 擴展接口增加的引腳定義
AM824-Core 板載1 路帶擴展的MicroPort接口,用戶可以依據需求,選擇或開發功能多樣的MicroPort 模塊,快速靈活地搭建原型機。由于LPC824 片上資源有限,還有極少部分MicroPort 接口定義的引腳功能不支持,其相應的引腳可以當做普通I/O 使用,AM824-Core 的MicroPort 接口引腳分配詳見表1.8。
表1.8 AM824-Core MicroPort 引腳分配表
-
開關矩陣
+關注
關注
0文章
13瀏覽量
3032
原文標題:周立功:開關矩陣(SWM)和 AM824-Core的應用
文章出處:【微信號:Zlgmcu7890,微信公眾號:周立功單片機】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論