ARM開發板

ARM開發板

ARM開發板,即以英國ARM(Advanced RISC Machines)公司的核心晶片作為CPU,同時附加其他外圍功能的嵌入式開發板,用以評估核心晶片的功能和研發各科技類企業的產品 。 ARM開發板根據ARM核心可以分為ARM7、ARM9、ARM11、 Cortex-M系列、Cortex-R系列、Cortex-A系列。其中Cortex-M系列又可分為Cortex-M0、Cortex-M0+、Cortex-M3、Cortex-M4;Cortex-R系列分為Cortex-R4、Cortex-R5、Cortex-R7;Cortex-A系列分為Cortex-A5、Cortex-A7、Cortex-A8、Cortex-A9、Cortex-A15、Cortex-A50等 ,同樣也就有了對應核心的Cortex-M0開發板、Cortex-A5開發板、Cortex-A8開發板、Cortex-A9開發板、Cortex-R4開發板等等。由於ARM公司只對外提供ARM核心,各大廠商在授權付費使用ARM核心的基礎上研發生產各自的晶片,形成了嵌入式ARM CPU的大家庭,提供這些核心晶片的廠商有Atmel、TI、飛思卡爾、NXP、ST、和三星等。

基本概述

各核心ARM開發板-安賽卓爾電子科技 各核心ARM開發板-安賽卓爾電子科技

ARM開發板在CPU的基礎上增加外設後如圖中所示,具備許多功能接口,如擴展了TFT-LCD、LVDS接口、觸控螢幕、VGA、矩陣鍵盤、外部匯流排接口、CAN、SPI、PWM、高速USB HOST\Device、SD卡、RS232\RS485串口,音頻、MIC等常用接口,國內領先的嵌入式方案廠商往往有多個核心平台的ARM開發板使各科技類企業的研發工程師可以方便的測試ARM開發板和研發公司的產品,通過開發板內的資料文檔可快速開發公司產品,縮短研發周期。

醫學套用

基於ARM核的ADμC7024在醫療電子中的套用

隨著信息技術的迅猛發展和人民生活水平的提高,極大地推動了醫療電子設備的發展,當今醫療電子設備的發展趨勢是高精度、實時性、低功耗和小尺寸,作為醫療電子設備中核心地位的MCU(微處理器)也隨著這一發展趨勢向前不斷衍變著。由早期的8位MCU發展到目前的32位RISC(精簡指令集計算機)MCU。美國ADI公司根據市場的需要最新推出了一款基於ARM(高級精簡指令集計算機)核的微處理器ADμC7024便是目前32位RISC MCU的傑出代表。ADμC7024卓越的處理能力、集成眾多片上外圍器件和晶片低功耗的特點,完全勝任目前醫療電子設備的需求及未來的發展目標。

本文以ADμC7024在醫療電子中監護產品脈搏血氧計的套用為例,重點介紹其在醫療電子行業中的實際用途。

ARM核心特點

英國ARM公司是嵌入式RISC處理器的IP(智慧財產權)供應商,它為ARM架構處理器提供ARM處理器核心(如ARM7TDMI、ARM9TDMI及ARM10TDMI等)。由各半導體公司在上述處理器核心基礎上進行再設計,嵌入各種外圍和處理部件,形成各種MCU。目前基於ARM核心的晶片在嵌入式處理器市場上占據75%的份額。

ARM作為嵌入式系統的處理器,具有低電壓,低功耗和高集成度等特點,並具有開放性和可擴充性。事實上,ARM核心已成為嵌入式系統首選的處理器核心。而對於醫療電子設備而言,並不需要圖像處理等方面更高的要求,因此,ARM7TDMI核心以0.9MIPS(百萬條指令每秒)/MHz的高效處理能力足以滿足套用需要。

ARM7TDMI核心是ARM核系列中32位通用核心中的一個產品,它採用三級流水線結構,指令的執行分成取指、譯值和執行3個階段。運算器能夠實現32位整數運算。核心不但能夠執行32位高效ARM指令,同時還支持簡潔的16位Thumb指令集以提高代碼密度。

ARM7TDMI名稱的含義為:

a)ARM7:ARM系列具有32位運算能力的核心,它採用馮·諾依曼結構,數據長度可以是8位,16位和32位,而指令長度是32位。

b)T:內含16位壓縮指令集Thumb,由於32位RISC型處理器的指令代碼利用率較低,ARM為了彌補不足,在新型ARM架構(V4T版以上,成熟架構由V3版發展到V6版)定義了16位的Thumb指令集,Thumb指令集比通常的8位和16位CISC/RISC處理器具有更好的代碼密度,而晶片面積只增加6%,可使程式存儲器更小。

c)D:支持片內調試,該核心包含用於調試的硬體結構,可使CPU進入調試模組,可以方便地進行斷點觀察點設定、單步調試和多步調試

d)M:採用增強型乘法器。AARM7TDMI指令集包含2個32位×32位的乘法指令和2個乘法累加MAC指令,該結構使得指令的執行比其他類型的ARM7核心減小了許多機器周期。

e)I:內含嵌入式ICE宏單元,ARM架構的處理器晶片都嵌入了Embedded ICE-RT邏輯塊,便於通過JTAG接口來仿真調試RAM架構晶片。

晶片內部結構及特點

美國ADI公司利用其在模擬電路領域的優勢,綜合基於8052-8位ADμC8xx的技術積累,將ARM7TDMI核心和ADC(A/D轉換器),DAC(D/A轉換器)等外圍設備集成在一塊晶片上,就是最近推向市場的拳頭產品ADμC702x系列。其中ADμC7020、ADμC7021、ADμC7022、ADμC7026等晶片除了在片上Flash和SRAM容量大小、ADC和DAC通道數量、PWM(脈寬調製)相位數量有差別外,其他完全一致;而ADμC7026,ADμC7027具有外部擴展記憶體接口。

本文主要介紹其中具有代表性的一款--ADμC7024,工業級的ADμC7024工作於2.7V-3.6V電源電壓,64引腳CSP封裝的晶片面積僅為9mm×9mm,在1MHz時鐘頻率下晶片最高功耗為5mA,在最大時鐘頻率45MHz下晶片最高功耗為60mA。其原理框圖如圖1所示。

2.1 片上集成高性能的ADC和DAC

ADμC7024片上集成了10通道12位逐次逼近型ADC,能夠在電源電壓為2.7V-3.6V的範圍正常工作,在系統時鐘頻率為45MHz下的最高採樣率高達1MSPS(百萬次採樣每秒)。該ADC模組提供一個高精度、低漂移的片上2.5V基準電壓VREF,該電壓通過片上REFCON暫存器的軟體配置也能作為輸出,向外提供基準參考源。ADC能夠工作於單端轉換模式或者差分轉換模式,在單端轉換模式下的輸入電壓範圍是0至VREF,在差分轉換模式下輸入電壓範圍是0至AVDD(AVDD通常情況下為3.3V)ADC單個或連續的轉換能夠被外部引腳CONVstar、片上PLA、定時器1或定時器2所觸發。

通過ADC控制暫存器ADCCON,通道選擇暫存器ADCCP和ADCCN軟體配置好ADC後,轉換結果將存儲在暫存器ADCDAT位27至位16中,通過ADC狀態暫存器ADCSTA的位0可以查看ADC轉換是否完成,當ADC轉換結束時,位0被置位;當讀取ADC-DAT時,該位自動被清空。當ADC正在執行轉換操作時,片上引腳ADCBusy保持高電平,一旦轉換結束,該引腳馬上變為低電平。

還可以通過ADCRST暫存器將ADC模組中所有暫存器恢復至默認值;通過調整ADCOF和ADCGN暫存器的值可以調整ADC轉換精度,不過,該暫存器出廠時已經過校準。

由於該ADC的是逐次逼近型結構,因此比較適合低功耗的產品套用。

ADμC7024片上還集成有2通道12位DAC。每個DAC都具有軌至軌的輸出電壓範圍,驅動能力可達100pF或者5kΩ,每個DAC也能通過軟體配置來選擇輸出範圍0至VREF(內部基準電壓)、0至DACref(外部基準電壓)和0至AVDD,而DACref的取值範圍是0V至AVDD。

DAC的使用十分簡單,通過DAC控制暫存器DAC0CON或者DAC1CON來選擇通道和配置DAC通道特性,然後通過向DAC0CON或DAC1CON的位27至位16寫入數值,就可以在DAC引腳上得到所需要的模擬電壓結果。

2.2 片上集成Flash暫存器和SRAM

ADμC7024片上集成了64KB的Flash存儲器,其中低62KB的Flash存儲器是用戶可以編程的,剩下的高2kB區域是用戶不可接觸的固件程式,裡面包含了線上串列下載程式及出廠配置默認方案。ADμC7024片上Flash存儲器能夠通過串列編程模式,JTAG編程模式或並行編程模式在系統中編程。

1)串列編程模式

當片上BM引腳晶片被拉低時,ADμC7024重啟動將進入串列下載模式,通過標準的UART連線埠或IIC連線埠線上下載程式。

2)並行編程模式

並行編程協定使得片上Flash存儲器能夠通過工業級第三方編程器進行編程。

3)JTAG編程模式

ADμC7024片上Flash存儲器完全遵守IEEE 1149.1規範,因而可以通過標準的JTAG接口來下載程式和進行調試代碼,使得系統的開發十分簡單易行。

而ADμC7024片上Flash存儲器通過FEEPRO、FEEHIDE暫存器的軟體設定可以防止程式通過JTAG接口或並行編程模式被讀出,有效地保障了開發人員的勞動成果。

2.3 晶振和PLL

ADμC7024片上集成了一個32.768KHz晶振、一個時鐘分頻器和一個PLL(鎖相環)。內部的PLL能夠將晶振頻率放大1376倍,即為系統提供一個穩定的45MHz。

為了降低系統功耗,可以通過軟體設定時鐘分頻器的控制暫存器PLLCON和POWCON將經過PLL後輸出的45MHz降頻,最大可降低至352KHz,由於內部晶振有±3%的誤差,因此,用戶可以選擇外接一個32.768kHz的晶振,通過軟體設定PLLCON值使用外部晶振,使系統的性能穩定可靠。

2.4 復用I/O及標準的UART、SPI、IIC

ADμC7024提供30個通用型雙向I/O引腳。所有的I/O引腳具有5V電壓耐壓能力,一些I/O引腳中與其他外圍設備引腳復用。在默認情況下,所有的GPIO都是I/O模式,如果在實際中需要將I/O口復用成其他情況的,只需要按照I/O控制配置暫存器GPxCON的手冊配置方案軟體編程即可(這裡x表示連線埠0,連線埠1,…,連線埠4,如1連線埠5引腳則是P1.5)。在配置成I/O情況下,可以通過置位數據暫存器GPxDAT中某些位的值使引腳輸出"1";同時可以清除數據暫存器GPxDAT中的某些位的值使引腳輸出"0";還可以讀數據暫存器GPxDAT中某些位的值得到輸入引腳的值(x同前面介紹,具體設定請參考ADμC7024手冊)。

ADμC7024片上集成了2個標準的、全雙工模式的異步串口UART(通用異步收發器),它們與16450串口標準所兼容。片上UART的波特率產生器中包含一個小數分頻器,使得UART波特率的產生更加精確。同時,其中一個UART還支持網路定址模式下的串口傳送接收模式。UART的使用首先通過I/O的配置成UART連線埠引腳。然後通過軟體配置UART配置暫存器及波特率設定暫存器就可以通過COMTX暫存器、COMRX暫存器分別傳送和接收數據。

ADμC7024片上也集成了標準工業級同步串口SPI(串列外圍接口),SPI接口可以同步接收和傳送8位數據,最高速率可達5.6Mbit/s。該SPI能夠被配置成主(Master)或者從(Slave)兩種工作模式,關於SPI使能、選擇工作模式、串列時鐘相位及極性、先傳送低有效位還是高有效位等多項設定,均是通過SPICON編程而得到,而主模式傳送的串列時鐘頻率由SPIDIV來設定,從模式則不用設定串列時鐘頻率,因為串列時鐘是由主模式的SPI來決定的,通過讀取SPISTA中某些數據位的值,可以知道SPI是否傳送結束或者接收結束。

ADμC7024還具有兩個經Philips公司授權的IIC接口,IIC是Philips公司20世紀80年代開發的一個簡單的兩線匯流排,包括一條數據線和一條時鐘線,速率有100kHz和400kHz兩種方式,目前IIC已經成為重要的全球業界標準,被所有主要的積體電路廠商所認同和使用。它採用主-從通信方式,採用匯流排仲裁特性,使得在某一時刻只有兩個器件進行通信,具體數據指標參考ADμC7024數據手冊。

2.5 中斷系統

中斷系統是一個MCU在套用中的靈魂所在。ADμC7024片上中斷控制器控制著24箇中斷源。這些中斷源包括片上ADC中斷、UART中斷、2個外部中斷請求XIRQ0和XIRQ1等,而ARM7TDMI核心僅僅將這些中斷源分成兩大類來識別,一類是IRQ,另一類是FIQ。所有中斷源能夠單獨地被禁止。中斷系統的控制和配置管理由9個關於中斷方面的暫存器所控制,4個涉及到IRQ的暫存器、4個涉及到FIQ的暫存器,1個用來選擇已編程的中斷源暫存器SWICFG。雖然作為一個已編程的中斷源是不能夠被禁止掉的,但是它們可以被SWICFG來控制。

2.6 定時器

ADμC7024有4個通用定時器:定時器0、定時器1、定時器2和定時器3。這4個定時器在一般的操作模式下均能按照默認值計數或者按照預設值暫存器TxLD(x表示0,1,2,和3中的某一個暫存器)中值來計算。在任意時刻可以通過讀取TxVAL暫存器中的值了解定時器中的當前計數值。通過配置TxCON的值可以設定相應的定時器按照一定的方式開始計數。

定時器0是一個通用型16位倒計數定時器,該定時器的刻度尺頻率來源是系統時鐘,計數默認值可以是系統時鐘頻率、系統時鐘頻率的16分頻和256分頻。

定時器1是一個32位通用型累加定時器或者倒計時定時器。該定時器的刻度尺頻率來源可以是32kHz晶振、系統時鐘和外部GPIO三者之一。計數默認值可以是刻度尺頻率、刻度尺頻率的16分頻、256分頻和32768分頻。定時器1可以被設定為標準的32位時間值,如Hours:Minutes:Seconds:Hundreths這樣的格式。定時器1通過預設回響IRQ事件,可以比通常情況下定時器0回響IRQ中斷請求要準確得多。它還可以用來觸發ADC轉換過程。

定時器2的系統刻度尺頻率來源是內部集成的32.768kHz晶振,當系統時鐘停止工作時,該定時器還可以繼續運行,這一特性可以用來將處於休眠狀態的系統核心恢復至正常工作狀態。

定時器3由兩種工作模式,一種通常模式與前面3個定時器一樣,還有一種是看門狗模式。一旦程式跑飛時,可以利用該定時器看門狗模式來重啟動處理器,令其恢復正常工作。

2.7 其他外圍設備及特性

片上還集成有獨立的比較器、電源監控模組、三相PWM(在ADμC7020、ADμC7021、ADμC7022是單相PWM)以及PLA(可程式邏輯陣列)。其中PLA的輸入輸出引腳與GPIO復用。

引腳定義

ADμC7024引腳定義見表1。 詳細請點擊引用連結。

4 套用實例

該晶片卓越的數據處理能力、片上集成的高精度ADC及DAC等豐富的片上外圍設備以及時鐘頻率可調節的特點,使得在要求低功耗、高精度、實時性等嵌入式微信號處理系統中的套用如魚得水。現以脈搏血氧計為例,介紹其中一個廣泛的套用領域。其系統框圖如圖2所示。 詳細請點擊引用連結。

ADμC7024作為系統的核心MCU,負責控制和協調其他電路模組的正常工作,它將採集到的血氧信號經過數據處理後,通過SPI匯流排傳送給LCD顯示屏得以顯示。

根據實際臨床結果顯示,ADμC7024已完全勝任設計血氧模組的任務,處理能力、採樣率、採樣精度、功耗、實時性要求等指標完全達到系統的要求,

ARM體系架構使得醫療電子的穩定性得到極大保障。最後,採用第三方Keil公司μVision開發工具,用C語言作為開發語言,利用GNU的ARM-ELF-GCC等工具作為編譯器及連結器,易學易用,它的調試仿真工具也是Keil公司開發的Ulink仿真器,調試簡單,縮短上市時間,便於移植。

可以預料,在不久的將來,ADμC7024以其獨樹一幟的性能必將在醫療電子行業中發揮越來越大的作用。

相關詞條

相關搜尋

熱門詞條

聯絡我們