機電之家資源網(wǎng)
單片機首頁|單片機基礎(chǔ)|單片機應(yīng)用|單片機開發(fā)|單片機文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓(xùn)信息
贊助商
SPCE061A在溫度檢測中的應(yīng)用
SPCE061A在溫度檢測中的應(yīng)用
 更新時間:2008-7-27 16:40:40  點擊數(shù):3
【字體: 字體顏色

SPCE061A在溫度檢測中的應(yīng)用

文章來源:凌陽大學(xué)計劃網(wǎng)站
作者:凌陽大學(xué)計劃網(wǎng)站 發(fā)布時間:2003-5-30 9:30:31

摘  要:本文主要介紹以臺灣凌陽科技公司研制、開發(fā)的一款芯片——SPCE061A為基礎(chǔ),實現(xiàn)溫度的采集、轉(zhuǎn)換。

關(guān)鍵詞: SOC( System On Chip),SPCE061A

引 言:
    傳統(tǒng)的溫度檢測結(jié)構(gòu)如圖(1)所示。它基本上由三個部分構(gòu)成:溫度傳感器、專用的A/D轉(zhuǎn)換芯片(例:AD0809或其它轉(zhuǎn)換速度更高的芯片)、微控制器。這類結(jié)構(gòu)軟件實現(xiàn)相對麻煩,硬件上的連線也給設(shè)計者帶來了很大的不便,使用成本相對較高給用戶帶來了潛在的經(jīng)濟損失。


圖 1.1 傳統(tǒng)溫度檢測硬件框架

    那么怎樣解決上述的問題呢?將AD轉(zhuǎn)換部分嵌入到MCU的內(nèi)部已經(jīng)成為目前的發(fā)展趨勢。臺灣凌陽公司開發(fā)的SPCE061A芯片內(nèi)部就集成了AD轉(zhuǎn)換功能,下面便主要介紹SPCE061A在溫度采集、轉(zhuǎn)換中的應(yīng)用。

芯片特性簡介:

主控芯片采用凌陽SPCE061A單片機它具有以下主要特性:
工作速度:0.32MHz~49.152MHz(2.6V~3.6V);
2K字SRAM和32K字FLASH僅占一頁存儲空間;
32位可編程的多功能I/O端口;
兩個16位定時器/計數(shù)器;
低電壓復(fù)位/監(jiān)測功能;
8通道10位模/數(shù)轉(zhuǎn)換輸入功能并內(nèi)置自動增益控制功能的麥克風輸入;
雙通道10位DAC方式的音頻輸出功能;
指令系統(tǒng)提供具有較高運算速度的16位×16位的乘法運算指令和內(nèi)積運算指令,為其應(yīng)用增添了DSP功能;
UART,SIO功能;
內(nèi)置有在線仿真接口。

系統(tǒng)總體方案介紹

    借助于SPCE061A可將A/D轉(zhuǎn)換結(jié)構(gòu)簡化。圖 3.1中僅畫出一路溫度采集轉(zhuǎn)換線路,其余的幾路結(jié)構(gòu)相同。

圖 3.1 溫度傳感電路

系統(tǒng)硬件設(shè)計

    如前所述SPCE061A內(nèi)置8通道10位模-數(shù)轉(zhuǎn)換器,其中7個通道用于將模擬量信號(例如電壓信號)轉(zhuǎn)換為數(shù)字量信號,這7個通道與7個I/O口(IOA0~IOA6)復(fù)用,每路采集的模擬信號可以通過引線直接從對應(yīng)的端口輸入;另外一個通道只用于語音輸入,即麥克風輸入通道(MIC_IN)。A/D的轉(zhuǎn)換結(jié)果為10位數(shù)據(jù),分辨率為1024位;在系統(tǒng)的頻率為49MHz時,A/D的響應(yīng)率為1536KHz,此時的A/D轉(zhuǎn)換率為96KHz;另外此A/D轉(zhuǎn)換具有精度高的特點。A/D轉(zhuǎn)換的內(nèi)部結(jié)構(gòu)如圖3所示:由數(shù)模轉(zhuǎn)換器DAC0和逐次逼近寄存器SAR組成逐次逼近式模-數(shù)轉(zhuǎn)換器。其中有幾個寄存器控制A/D的轉(zhuǎn)換過程:P_ADC_Ctrl 用于轉(zhuǎn)換的模式控制,P_ADC_MUX_Ctrl用于A/D的通道選擇,P_ADC用于存儲最后的A/D轉(zhuǎn)換數(shù)值。


圖 4.1 A/D轉(zhuǎn)換原理圖

    在ADC自動方式被啟用后,會產(chǎn)生出一個啟動信號,即RDY=0。此時,DAC0的電壓模擬量輸出值與外部的電壓模擬量輸入值進行比較,以盡快找出外部電壓模擬量的數(shù)字量輸出值。逐次逼近式控制首先將SAR中數(shù)據(jù)的最高有效位試設(shè)為‘1’,而其它位則全設(shè)為‘0’,即10 0000 0000B。這時,DAC0輸出電壓VDAC0(1/2滿量程)就會與輸入電壓Vin進行比較。如果Vin>VDAC0,則保持原先設(shè)置為‘1’的位(最高有效位)仍為‘1’;否則,該位會被清‘0’。接著,逐次逼近式控制又將下一位試設(shè)為‘1’,其余低位依舊設(shè)為‘0’,即110000 0000B,VDAC0與Vin進行比較的結(jié)果若Vin>VDAC0,則仍保持原先設(shè)置位的值,否則對該位清‘0’。這個逐次逼近的過程一直會延續(xù)到10位中的所有位都被測試之后,A/D轉(zhuǎn)換的結(jié)果保存在SAR內(nèi)。用戶可以]通過P_ADC單元讀取AD轉(zhuǎn)換的結(jié)果。

系統(tǒng)軟件設(shè)計

圖 5.1

[注意] 通過模擬量輸入口LINE_IN輸入電壓值,通過讀取P_ADC_MUX_Data單元可以獲得10位A/D轉(zhuǎn)換的數(shù)據(jù)。而從該單元讀取數(shù)據(jù)后,又會使RDY自動清'0'來重新開始進行A/D轉(zhuǎn)換。若未讀取P_ADC_MUX_Data單元中的數(shù)據(jù)RDY仍保持為'1',則不會啟動下一次的A/D轉(zhuǎn)換。

[編程實例]
.include hardware.inc
.CODE
.public _main
_main:
r1=0xffff
[P_IOA_ATTRI]=r1 //IOA口設(shè)置為懸浮式輸出口
r1=0x0000
[P_IOA_DIR]=r1 //IOA口設(shè)置方向為輸入
[P_IOA_DATA]=r1 //初始化IOA的數(shù)據(jù)寄存器為0x0000
R1=0x0001 //選擇通道LINE1為IOA0 
[P_ADC_MUX_Ctrl]=R1
R1 = 0x0001 
[P_ADC_Ctrl] = R1 //設(shè)置P_ADC_Ctrl單元,允許A/D轉(zhuǎn)換
r2=0x0000 //r2的初值為0x0000
CONVERT_AD:
r1=[P_ADC_MUX_Ctrl] //讀寄存器[P_ADC_MUX_Ctrl]的B15位判斷是否轉(zhuǎn)換完畢
test r1,0x8000
jz CONVERT_AD //否,繼續(xù)轉(zhuǎn)換
r1=[P_ADC_MUX_DATA] //是,則讀出[P_ADC_MUX_DATA]轉(zhuǎn)換結(jié)果同時觸發(fā)A/D重新轉(zhuǎn)換
JMP CONVERT_AD //跳轉(zhuǎn)到_AD處

結(jié)語

    無論是從軟件還是硬件來說,使用SPCE061A實現(xiàn)對溫度的檢測操作簡單,使用成本低。當然也可用于其他模擬信號的轉(zhuǎn)換,應(yīng)用十分廣泛。

  • 上一篇: SPCE061A在電冰箱中應(yīng)用
  • 下一篇: 趣味設(shè)計:小型電子琴
  • 發(fā)表評論   告訴好友   打印此文  收藏此頁  關(guān)閉窗口  返回頂部
    熱點文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機電之家 | 會員助手 | 免費鏈接

    點擊這里給我發(fā)消息66821730(技術(shù)支持)點擊這里給我發(fā)消息66821730(廣告投放) 點擊這里給我發(fā)消息41031197(編輯) 點擊這里給我發(fā)消息58733127(審核)
    本站提供的機電設(shè)備,機電供求等信息由機電企業(yè)自行提供,該企業(yè)負責信息內(nèi)容的真實性、準確性和合法性。
    機電之家對此不承擔任何保證責任,有侵犯您利益的地方請聯(lián)系機電之家,機電之家將及時作出處理。
    Copyright 2007 機電之家 Inc All Rights Reserved.機電之家-由機電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機電一體化學(xué)會
    中國行業(yè)電子商務(wù)100強網(wǎng)站

    網(wǎng)站經(jīng)營許可證:浙B2-20080178-1