1引言
當前,隨著科學技術及工農業(yè)生產水平的不斷提高,對相應的儀器儀表也提出越來越高的要求,因此,儀器儀表需擴展大量的外圍功能部件來滿足儀器儀表復雜性、高性能及智能化的要求。
這種方法雖然滿足了儀器的復雜性要求,但隨之而來的問題是由于系統(tǒng)擴展的過于復雜而造成系統(tǒng)可靠性降低,故障率增加,查找故障困難,從而失去了智能化儀器儀表的優(yōu)勢,如果能夠將功能復雜的眾多外圍功能部件全部或大部分集成到系統(tǒng)所使用的單片機內部,則可大大提高儀器儀表系統(tǒng)的可靠性,同時又使系統(tǒng)的成本得以降低,還可利用單片機片內資源在不增加硬件成本的情況下增強儀器的性能,因而該方案是提高儀器儀表可靠性及性能的行之有效的方法,而美國Cygnal公司的C8051F020單片機便是1款可滿足復雜高性能儀器儀表要求的單片機。
C8051F020單片機是集成在1塊芯片上的混合信號系統(tǒng)級單片機,具有與MCS?51內核及指令完全兼容的微控制器。除了具有標準8051機的數字外設部件外,片內還集成了數據采集與控制系統(tǒng)中常用的模擬部件和其它數字外設及功能部件,主要包括模擬多路選擇器、可編程增益放大器、ADC、DAC、電壓
比較器、電壓基準、溫度傳感器、SMBus/I2C、UART、SPI、可編程計數器/定時器陣列、定時器、I/O端口、電源監(jiān)視器、看門狗定時器和時鐘振蕩器等,且該單片機內部具有JTAG和調試電路,通過JATG接口可以使用安裝在最終應用系統(tǒng)產品上的單片機進行非侵入、全速及在系統(tǒng)調試。
2功能與特點
?。?)25MIPS高速流水線式與8051機完全兼容的CIP-51內核。
(2)真正12位100KBps、8通道帶可編程增益放大器的ADC。
?。?)真正8位500KBps,帶可編程增益放大器的ADC。
?。?)5個16位通用定時器。
?。?)具有5個捕捉/比較模塊的可編程計數/定時器陣列。
?。?)內部電壓基準。
?。?)內置溫度傳感器(±3℃)。
(8)片內看門狗定時器,時鐘源及VDD監(jiān)視器。
?。?)64個通用數字I/O端口。
(10)具有I2C/SMBUSSPI及兩路UART、串行接口。
?。?1)64KB系統(tǒng)可編程FLASH存儲器。
?。?2)4352(4096+256)Byte片內RAM。
?。?3)64KB地址的外部存儲器接口。
(14)內部FLASH存儲器可實現在系統(tǒng)編程,即可作程序存儲器也可作非易失性數據存儲器。
(15)工作電壓為2.7V~3.6V,典型值為3V,I/O、RST、JTAG引腳均允許5V輸入電壓。
?。?6)全系列工業(yè)級電路(-45℃-+85℃)。
?。?7)片內JTAG仿真電路,提供全速的電路內仿真,不占用片內用戶資源,支持斷點、單步、觀察點、運行和停止等調試命令、支持存儲器和寄存器校驗和修改。
3內部功能部件
3.1CPU
C8051F020CPU的主要特點如下:
?。?)與標準8051機完全兼容,支持標準的ASM51、KeilC高級語言;
?。?)具有高速指令處理能力,機器周期由MCS51標準的12個系統(tǒng)時鐘周期降為1個系統(tǒng)時鐘周期,且70%的指令時間為1-2個機器周期,指令處理能力大大提 高;
(3)增加了中斷源,由MCS-51標準7個中斷源增加至22個中斷源;
?。?)增加了復位源,標準的MCS?51只有外部引腳復位,而C8051F020增加了7種復位源,使系統(tǒng)可靠性大大提高;
(5)增加了內部能獨立工作的時鐘源。
3.2存儲器
3.2.1數據存儲器
C8051F020具有標準8051機的程序和數據地址配置,包括256字節(jié)的RAM,其中高128字節(jié)為2個地址空間,用間接尋址訪問的高128字節(jié)和用直接尋址訪問的SFR地址空間,低128字節(jié)用戶可用直接或間接尋址方式訪問,此外,C8051F020還具有位于外部數據存儲器地址空間的4KB的RAM和外部數據存儲器接口(EMIF),這個4KB的RAM可以只映射到片內也可以映射到64KB外部數據存儲器地址空間,還可同時映射到片內和片外(4KB地址以內在片內存儲器空間訪問,4KB以上經過EMIF訪問)。外部數據存儲器接口用于訪問最多64KB的外部擴展RAM。
3.2.2程序存儲器
C8051F020的程序存儲器包含64KB的FLASH,該存儲器以512B為1個扇區(qū),可以在系統(tǒng)編程,且無需在片外提供編程電壓,該程序存儲器未用到的扇區(qū)均可由用戶按扇區(qū)作為非易失性數據存儲器使用。
3.3I/O與數字交叉開關
C8051F020單片機除具有標準的8051機端口P0~P3外,還具有附加的4個8位I/O口。這樣,I/O口總數可達64個,每個端口I/O引腳都可設置為推挽或開漏輸出。最為獨特的功能是引入了數字交叉開關,它可將內部數字系統(tǒng)資源分配給P0、P1、P2和P3端口的I/O引腳,并可將片內計數器/定時器、串行總線、中斷源、A/D轉換輸入、比較器輸出以及微控制器的其它數字信號配置為在上述I/O引腳輸出,這就允許用戶根據自己的特定應用選擇通用I/O和所需數字資源的組合。
3.4可編程計數陣列
除了內部提供5個16位的通用定時/計數器外,C8051F020還提供1個片內編程的計數器/定時器陣列(PCA),PCA包括1個專用的16位計數器/定時器,5個可編程的捕捉比較模塊,時間基準可以是下面的6個時鐘源之一:系統(tǒng)時鐘/12;系統(tǒng)時鐘/4;定時器0溢出;外部時鐘輸入;系統(tǒng)時鐘和外部振蕩頻率/8。每個捕捉模塊都有6種工作方式:邊沿觸發(fā)捕捉、軟件定時器、高速輸出、8位脈沖寬度調制器,頻率輸出、16位脈沖寬度調制器。
3.5多類型串行總線端口
C8051
F020內部具有2個全雙工UART、SMBUS/I2C總線和SPI總線,每種串行總線都完全用硬件實現,都能向CIP?51產生中斷,這些串行總線不共享定時器、中斷或I/O端口,所以允許用戶全部同時使用。
3.6A/D轉換器
C8051F020內部有2個ADC子系統(tǒng)。
3.6.1 12位A/D轉換器ADC0
該轉換器由逐次逼近型ADC、多通道模擬輸入選擇器和可編程增益放大器組成,ADC工作在100KBPS的最大采樣速率時可提供真正的12位精度,ADC0的8個外部輸入通道都可被配置為兩個單端輸入或1個差分輸入,ADC0的第9個輸入通道為內部溫度傳感器,同時內部提供1個2.34V基準電壓,可編程增益放大器的增益可用軟件設置,從0.5~16以2的整數次冪遞增,允許用軟件事件、硬件信號觸發(fā)轉換或進行連續(xù)轉換。
3.6.2 8位A/D轉換器ADC1
除了12位的ADC子系統(tǒng)ADC0外,C8051F020還有1個8位ADC子系統(tǒng),即ADC1,它有1個8通道輸入多路選擇器和可編程增益放大器,該ADC工作在500KBps的最大采樣率時可提供真正的8位精度,ADC的基準電壓可在電源電壓引腳(AV+)和外部VREF引腳之間選擇,ADC1的可編程增益放大器的增益可被編程為0.5、1、2或4,ADC1也有靈活的轉換控制機制,允許用軟件命令,定時器溢出或外部信號輸入啟動ADC1轉換,用軟件可以使ADC1與ADC0同步轉換。
3.7D/A轉換器
C8051F020內部有2個12位電壓DAC,每個DAC的輸出擺幅均為0V~VREF-1LSB,CPU可通過SFRS控制數模轉換和比較器,CPU可將任何1個DAC置于低功耗關斷方式,DAC為電壓輸出模式,與ADC共用參考電壓,允許用軟件命令和定時器2、定時器3及定時器4的溢出信號更新DAC的輸出。
3.8JTAG
C8051F020片內具有JTAG接口和邏輯,為生產和在系統(tǒng)測試FLASH存儲器的讀和寫操作,以及非侵入式在電路調試提供邊界掃描功能,片內接口完全符合IEEE1149.1規(guī)范。
4 C8051F020單片機在儀器儀表中的應用
C8051F020是1種集成了眾多功能部件、功能強大的單片機,適合于要求硬件功能強大,運算速度快,工作環(huán)境惡劣,可靠性高,擴展功能強及低功耗的應用系統(tǒng)。下面以1個實際的儀器儀表系統(tǒng)即電子配料秤為例給出C8051F020在儀器儀表中的具體應用方法。電子配料秤是1種廣泛應用于食品加工、飼料、添加劑、農藥、化工、冶金等行業(yè)中的配料稱重儀器。對電子配料秤的主要要求是具有高速、高精度、高可靠性及高穩(wěn)定性,而且在整個生產過程中需要動態(tài)連續(xù)或間歇性動態(tài)連續(xù)運行,稱重配料系統(tǒng)均以單片機為核心,其硬件電路框圖如圖1所示。
圖1 電子配料秤的硬件電路框圖
圖1所示的電子配料秤雖然基本能滿足生產的需要,但是由于系統(tǒng)擴展的外圍功能器件較多,造成系統(tǒng)的電路復雜,故障率高,調試困難,編程復雜。經反復分析論證,我們以C8051F020為核心重新設計了電子配料秤,如圖2所示。
圖2 以C8051F020為核心的電子配料硬件框圖
使用C8051F020可使系統(tǒng)擴展的外圍電路及接口電路數量大大減少,提高了系統(tǒng)的可靠性及穩(wěn)定性,同時為系統(tǒng)的功能擴展及軟硬件升級提供了方便。系統(tǒng)中利用了C8051F020的以下資源以簡化原電路設計。
(1)可編程增益放大器PGA
電子配料秤將被測物體的重量通過拉或壓等形式將重量傳遞給稱重傳感器,稱重傳感器通常采用電阻應變橋式,其輸出電壓擺幅均為0V~數百mV,故需將此信號放大后才能提供給A/D轉換器,可編程增益放大器的增益可根據稱重傳感器的滿量程值和A/D轉換器的參考電壓值設置。
?。?)A/D轉換器
C8051F020單片機具有12Bit分辨率的ADC和10Bit分辨率的ADC,這里使用12Bit分辨率的ADC,12Bit分辨率ADC的采樣速率高達100KBps,利用C8051F020片內的ADC,一方面簡化了原外圍擴展的ADC,另一方面,其12Bit的精度和100KBps的采樣速率使得本系統(tǒng)的測量精度和測量實時性大為提高,滿足了本系統(tǒng)的動態(tài)精度要求和實時性要求,從而使本系統(tǒng)的前向通道更加穩(wěn)定。
?。?)程序和數據存儲器
C8051F020單片機片內具有64KByte的大容量FLASH程序存儲器和4305Byte的數據存儲器。這樣可以滿足電子配料秤存儲復雜算法程序及大量數據的要求,同時為系統(tǒng)的軟件升級預留了足夠的空間,且簡化了原外
擴的程序及數據存儲器。由于C8051F020支持在系統(tǒng)編程使得本系統(tǒng)的軟件升級極為方便。
?。?)具有豐富的可編程數字I/O資源
本系統(tǒng)無須進行任何的外部I/O擴展即能滿足本系統(tǒng)對I/O的需求,同時可使系統(tǒng)的人機通道和輸入/輸出開關量與CPU的聯(lián)系更加通暢,而片內的12BitDAC更加完善了本系統(tǒng)的后向通道。
?。?)具有豐富的軟件資源
為本系統(tǒng)使用C51等高級語言編程創(chuàng)造了良好的環(huán)境,高級語言編程環(huán)境可使本系統(tǒng)軟件實現真正的模塊化,也可使各種編程算法變得簡單容易,同時也更加完善,因而大大改善了本系統(tǒng)的軟件升級能力。
?。?)在線調試
由于片內具有JTAG和調試電路,通過JTAG可在生產現場對電子配料秤進行現場調試,因而便于解決生產中遇到的各種實際問題。
?。?)串行通信
C8051F020提供了UART、I2C、SPI等多種串行總線,故允許以多種方式來進行外部設備的擴展,同時更有利于構成多級分布式測控系統(tǒng)。
利用C8051F020片內提供的功能強大、種類繁多的模擬與數字功能部件,可在基本不用進行外圍電路擴展的情況下構成1個高速、高精度、易于擴展升級的連續(xù)動態(tài)配料稱重電子秤系統(tǒng)。
5結束語
C8051F020是目前8位單片機中功能較強的1種,利用其強大的功能,無論是進行現有儀器儀表的升級換代還是復雜高性能的智能儀器儀表設計,都是非常理想的,因而該電路是智能儀器儀表的核心“單片機系統(tǒng)”的理想選擇。