帶24位模數(shù)轉(zhuǎn)換的MSC1210單片機(jī)及其應(yīng)用
無論是功能,還是性能,德州儀器(ti)的msc1210單片機(jī)都達(dá)到了混合信號處理的顛峰,它集成了一個增強(qiáng)型8051內(nèi)核,有8路24位低功耗(4mw)δ-∑
a/d轉(zhuǎn)換;21個中斷源;16位pwm;全雙工uart(并兼容有spi功能);停止方式電流小于1μa;比標(biāo)準(zhǔn)8051內(nèi)核執(zhí)行速度快3倍且全兼容;片內(nèi)集成32k字節(jié)flash,而且flash可定義為程序分區(qū)與數(shù)據(jù)存儲分區(qū),給設(shè)計帶來非常大的靈活性;片內(nèi)sram也多達(dá)1.2k字節(jié);采用tqfp64小型封裝。由于具有如此高的模擬和數(shù)字集成度,對各種要求小體積、高集成度和精確測量而言,mcs1210實(shí)為理想的整合選擇。圖一是msc1210的較為詳細(xì)框圖。
圖一 msc1210的詳細(xì)框圖
msc1210特性介紹
模擬特性: 24位無丟失碼a/d 轉(zhuǎn)換,在10hz采樣頻率下轉(zhuǎn)換可得到22位有效轉(zhuǎn)換結(jié)果,且轉(zhuǎn)換噪音只有75nv,轉(zhuǎn)換模塊耗電<4mw;
可選緩沖輸入且輸入增益可調(diào),調(diào)節(jié)范圍為1~128; 片內(nèi)帶有精確的轉(zhuǎn)換用參考電壓,精度為0.2%,溫漂為5ppm / ℃; 8路差分或單端輸入通道;
在片偏移、增益表度,且漂移在0.02ppm/°c與0.5ppm/°c內(nèi)。
數(shù)字特性: 8051完全兼容; 高速內(nèi)核,每個指令周期只需4個時鐘周期,在33mhz晶體驅(qū)動下,單周期指令的執(zhí)行時間為121ns;雙數(shù)據(jù)指針,可更加快數(shù)據(jù)傳送;
高達(dá)32k flash存儲器,flash存儲器可分區(qū)為程序存儲器與數(shù)據(jù)存儲器,flash存儲器可在系統(tǒng)串行編程,可加密,達(dá)1m次擦寫周期,;
1280k sram型數(shù)據(jù)存儲器; 2kb 啟動rom; 34條i/o口線; 額外的32位累加器; 3個16位定時/計數(shù)器,一個系統(tǒng)時鐘,一個可編程看門狗定時器;
全雙工uart,帶dma主、從方式spi; 16位pwm; 多種能量控制方式,可耗電 < 1ma的空閑方式,可耗電<1
ua的停機(jī)模式,且各個模塊的供電可以控制,低電壓檢測; 21個中斷源,可提供系統(tǒng)的靈活實(shí)時控制; 表一給出了msc1210的大致特性。
flash存儲器的使用
msc1210系列單片機(jī)的片內(nèi)存儲器4k到32k字節(jié)不等。其中msc1210y5的存儲器最大,有32k字節(jié)。而所有的存儲器可以通過控制位來定義用于程序存儲的大小與用于數(shù)據(jù)存儲的大小。用于程序存儲的flash只能通過cpu的取指令操作自動訪問、以及用 movc 指令進(jìn)行表格查詢時用戶訪問。用于數(shù)據(jù)存儲的flash可以片外ram的方式用movx指令任意讀寫。由于flash 的這種特性,可將程序使用剩余的flash定義為數(shù)據(jù)存儲使用,而不需要擴(kuò)展數(shù)據(jù)存儲器,對于節(jié)省空間以及提高系統(tǒng)可靠性很有意義。硬件配置寄存器0(hcr0)的低3位將定義flash存儲器的劃分,表二與表三反映了不同flash容量器件的程序存儲器與數(shù)據(jù)存儲器的劃分情況。
在由hcr0的低3位定義了flash存儲器的劃分之后,程序存儲器的起始地址依然是0000h,但結(jié)束地址由劃分的尺寸決定(見表三);數(shù)據(jù)存儲器的起始地址由0400h開始,不是0000h,結(jié)束地址由劃分的尺寸決定(見表三)。在使用時,要注意數(shù)據(jù)存儲器的讀寫地址不要超出范圍。
24位模數(shù)轉(zhuǎn)換及其使用方法
msc1210內(nèi)帶8路24位模數(shù)轉(zhuǎn)換器,由輸入多路器、可編程增益放大器、調(diào)節(jié)器、數(shù)字濾波器、參考穩(wěn)壓源等組成。
1 輸入多路器
輸入多路器將切換多路模擬輸入信號到輸入緩沖器。共有9路輸入信號,其中一路為片內(nèi)溫度傳感器信號,每路輸入可設(shè)置單極性輸入與差分輸入。片內(nèi)配置有模擬輸入緩沖,當(dāng)不使用輸入緩沖時,輸入阻抗為5m歐姆,當(dāng)使用模擬輸入緩沖時,輸入阻抗由時鐘頻率與增益決定:
由寄存器admux選擇輸入通道以及相應(yīng)通道的極性。該寄存器絕對地址是0d7h,默認(rèn)值是01。該寄存器的8位含義如下:
其中高4位為輸入通道的正極性,inp2、inp1、inp0三位的二進(jìn)制值就是對應(yīng)的8路外部模擬通道,aincom是輸入模擬公共端,最后通道(內(nèi)部)為片內(nèi)溫度傳感器輸入。見表四。
每一個通道的輸入負(fù)極性選擇由該寄存器的低4位決定。見表五。
將表四與表五結(jié)合起來就可以選擇每一個輸入通道的輸入是正極性還是負(fù)極性、或是差分輸入(如果正負(fù)極性都選擇,就是差分輸入)。
2 可編程增益放大器與參考電壓
可編程增益放大器能設(shè)定增益為1、2、4、8、16、32、64、128 。使用可編程增益放大器能非常有效地改善轉(zhuǎn)換結(jié)果。當(dāng)5v為滿刻度時,設(shè)增益為1,則adc可分辨出1uv;當(dāng)40mv為滿刻度,增益為128時,可分辨75nv??梢娍删幊淘鲆娣糯笃髟诟纳妻D(zhuǎn)換分辨率上非常有用。寄存器adcon0的低3位決定增益的大小。默認(rèn)值是1。該寄存器同時也決定參考電壓的選擇,第5位為1將使能內(nèi)部參考電壓發(fā)生器,第4位將決定參考電壓是2.5v還是1.5v。該寄存器默認(rèn)值為30h,表示增益為1,使用內(nèi)部2.5v
參考電壓。
也可以使用外部參考源,但要求穩(wěn)定性與精度都很高。使用外部參考源時,需要將內(nèi)部參考源關(guān)閉,這時內(nèi)部參考源的輸出引腳為高阻抗,因此為了方便一般也將內(nèi)部參考輸出與外部參考輸入兩引腳連在一起,再用電容濾波。
3 轉(zhuǎn)換頻率與轉(zhuǎn)換結(jié)果
可通過adc時鐘與轉(zhuǎn)換設(shè)置寄存器設(shè)定轉(zhuǎn)換頻率。adc時鐘將由aclk寄存器的低5位決定
adc時鐘 = 系統(tǒng)時鐘 / ( freq+1 )
而采樣頻率在aclk的基礎(chǔ)之上由adcon2、adcon3兩寄存器(絕對地址0deh、0dfh)的內(nèi)容dr(共11位)決定:
采樣率 = (aclk + 1)/(64 * dr)
轉(zhuǎn)換結(jié)果將使用3個寄存器暫存:adresh(高字節(jié))、adresm(中字節(jié))、adresl(低字節(jié))??梢远〞r采樣,定時得到轉(zhuǎn)換結(jié)果。
4 a/d轉(zhuǎn)換舉例
下面的程序?qū)?shí)現(xiàn)輸入通道1的正極性模擬轉(zhuǎn)換,并將轉(zhuǎn)換結(jié)果送顯示緩存顯示。
總結(jié)
通過實(shí)際運(yùn)用,可以發(fā)現(xiàn)ti的帶24位a/d轉(zhuǎn)換的51內(nèi)核混合器件msc1210的確具有很高的性能、很高的集成度、很大的靈活性。尤其值得一提的是片內(nèi)flash的靈活運(yùn)用,省去了擴(kuò)展數(shù)據(jù)存儲器需要的地址鎖存器與sram,以及大面積的印刷板空間;帶可編程增益放大的24位a/d轉(zhuǎn)換器可以實(shí)現(xiàn)非常高精度的模數(shù)轉(zhuǎn)換。
評論