《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 業(yè)界動態(tài) > 一種PC104溫度采集卡的設(shè)計

一種PC104溫度采集卡的設(shè)計

2008-08-11
作者:何曰光

??? 摘 要: 介紹了一種用于12路通道溫度采集的PC104采集卡" title="采集卡">采集卡的設(shè)計。重點描述了實現(xiàn)通道校正、采集數(shù)據(jù)的控制器的設(shè)計過程。該控制器提供了一定的數(shù)據(jù)緩沖能力和多種參數(shù)的工作方式,使得PC104采集卡的功能比較強大和全面,并且非常靈活。其設(shè)計思路值得以后類似的采集卡借鑒。實際運行結(jié)果表明,該采集卡的設(shè)計是成功的,并且工作可靠。
??? 關(guān)鍵詞: 溫度采集? AD7711? PC104? 控制器? CPLD

?

??? PC104總線是一種出現(xiàn)已久的棧式總線,基本上屬于ISA總線的變型。模塊尺寸很小(90mm×96mm),多個模塊通過針孔結(jié)構(gòu)堆疊而成,形成的系統(tǒng)結(jié)構(gòu)緊湊、抗沖擊性能好,加上現(xiàn)在廣泛應(yīng)用的低功耗技術(shù),使PC104總線特別適于用戶自行開發(fā)特殊應(yīng)用產(chǎn)品。
??? 對于低速率、高精度的測量系統(tǒng)而言,A/D芯片AD7711是個功能完整的模擬前端。它直接從傳感器接收信號,通過一個可編程的增益控制后將信號送到模擬調(diào)節(jié)器,再經(jīng)濾波后輸出一個16位的串行數(shù)據(jù)" title="串行數(shù)據(jù)">串行數(shù)據(jù)字。它的主要結(jié)構(gòu)特點是:內(nèi)部包含有一個∑-△ A/D轉(zhuǎn)換器,具有非常高的轉(zhuǎn)換精度;兩個通道的可編程增益前端;帶內(nèi)部SRAM的校正控制器,使得校正因子可讀可寫;時鐘發(fā)生器;低通數(shù)字濾波器,具有可編程的通阻帶分截點;一個雙向串行通信端口,能較方便地與微處理器接口;可以單電壓或雙電壓供電,具有較低的功耗。
??? 對于RTD(電阻式溫度檢測)傳感器的應(yīng)用,AD7711是一款很不錯的選擇。本文介紹的PC104采集卡主要用于分布式溫度點采集測量,上面集成了12個AD7711,形成12個通道,每個通道可以輸入兩路模擬信號,其中一路為單極性輸入,另一路為雙極性輸入。
1 電路原理
??? PC104溫度采集卡主要由12個AD7711、通道控制器、PC104棧式連接器組成,其原理框圖如圖1所示。板卡地址輸入由撥盤開關(guān)完成。串口" title="串口">串口E2PROM用來保存每個通道的校準(zhǔn)參數(shù)和一些板卡工作參數(shù)。另外還提供了配置ROM EPC2。

?


??? 通道控制器采用Altera公司的CPLD器件FLEX10K50QC240來實現(xiàn)。PC104主機首先初始化通道控制器,通過板卡命令對板卡進(jìn)行操作,如啟動、停止、設(shè)置工作參數(shù)(如中斷選擇、每分鐘采樣次數(shù)、輸出因子等)。然后通道控制器對各個AD7711通道進(jìn)行操作,如寫AD7711的控制寄存器" title="控制寄存器">控制寄存器、讀寫其校準(zhǔn)寄存器里的校正因子、讀取每個通道的采樣數(shù)據(jù)。通道控制器的另一個功能是根據(jù)PC104主機的指示對串口E2PROM進(jìn)行讀寫操作,并提供結(jié)果。
??? 采樣頻率有1Hz、2Hz、4Hz、8Hz、16Hz、32Hz、64Hz等,指定每個通道每分鐘等間隔采樣次數(shù)。板卡的控制器提供數(shù)據(jù)緩沖能力,每個采樣周期都將12個通道的數(shù)據(jù)保存在緩沖器里。在存儲了若干個采樣周期的數(shù)據(jù)后,向主機發(fā)出中斷,讓PC104總線讀走數(shù)據(jù),輸出因子則指定每次中斷間采樣周期的個數(shù)。板卡提供八個ISA中斷,主機可以選擇其中一個。
??? AD7711每次采樣16位數(shù)據(jù),所以主機PC104總線從通道控制器讀取數(shù)據(jù)時,使用16位I/O訪問,因此/IOCS16和SBHE信號應(yīng)當(dāng)被驅(qū)動,而IOCHRDY則被用來插入等待周期。由于通道控制器和AD7711都采用10MHz時鐘,所以對于CPU主頻比較快的PC104總線,其ALE、/IOW、/IOR、AEN等信號的有效電平脈寬是與時鐘周期有關(guān)系的,此時它們的脈寬可能比板卡的時鐘周期100ns要小,故不能用它們直接作為時鐘使能,而應(yīng)當(dāng)利用它們的沿來鎖存" title="鎖存">鎖存地址,并觸發(fā)得到寬脈沖信號完成使能,鎖存數(shù)據(jù)。
??? AD7711采用自時鐘方式。SCLK提供串行時鐘輸出;SDATA是串行數(shù)據(jù)位;/DRDY的下降沿表明數(shù)據(jù)字準(zhǔn)備好,當(dāng)傳送完畢時恢復(fù)到高電平;/TFS、/RFS是發(fā)送和接收數(shù)據(jù)幀同步信號;A0是地址輸入,表明是對AD7711控制寄存器操作,還是對AD7711數(shù)據(jù)或校準(zhǔn)寄存器操作。
2 通道控制器的設(shè)計
2.1 邏輯框圖

??? 這里采用CPLD器件FLEX10K50QC240來實現(xiàn)通道控制器的所有邏輯。其內(nèi)部邏輯原理框圖如圖2所示。主要的功能有:①包含有若干個控制或狀態(tài)寄存器,主要用來設(shè)置工作參數(shù)和對AD7711通道進(jìn)行控制;②對AD7711的數(shù)字界面提供接口;③提供足夠的數(shù)據(jù)緩沖能力;④具有可編程的采樣時鐘發(fā)生器;⑤具有內(nèi)部RAM和控制讀取片外串口E2PROM的能力。

?


??? 當(dāng)主機的PC104總線地址被驅(qū)動時,則在ALE的下降沿鎖存地址。當(dāng)選中板卡地址時(這里以0x280~0x28f為例),則利用/IOW的上升沿鎖存數(shù)據(jù),并根據(jù)地址譯碼的不同,鎖存到不同的寄存器里。這里有四個控制寄存器,即通道操作寄存器(CtlReg,0x282)、板卡命令寄存器(CmdReg,0x286)、用于串口E2PROM和內(nèi)部RAM的存儲器操作控制寄存器(EepReg,其中包括用于控制的16位寄存器0x288和數(shù)據(jù)寄存器0x289)及參數(shù)寄存器(ParaReg,ox280)。由于通道操作寄存器是32位,主機對同一個口地址(如0x282)連續(xù)進(jìn)行兩個16位寫操作,因此利用兩個連續(xù)的/IOW寫數(shù)據(jù)。通道操作寄存器低24位是寫入AD7711的數(shù)據(jù),即24位控制字或校準(zhǔn)數(shù)據(jù)。高8位的含義如下:

???
??? R/W:0表示寫,1表示讀。
??? F1,F0:00表示對AD7711控制寄存器操作,11表示對AD7711校準(zhǔn)寄存器操作,01則是讀取數(shù)據(jù)。
??? CHCH3CH2CH1CH0:1xxxx表示全通道操作,0xxxx表示某單通道操作。
??? 因為分配給每塊采集卡的I/O地址空間有限,所以利用板卡命令寄存器的低8位作為參數(shù)數(shù)據(jù),高8位作為命令/參數(shù)類型。為了穩(wěn)定可靠地鎖存數(shù)據(jù),參數(shù)寄存器的使能信號由板卡命令寄存器寫選中信號延時兩個時鐘周期得到。參數(shù)類型是指采樣速率、輸出因子、中斷號。板卡命令寄存器高8位提供的命令有啟動(START)、停止、同步(驅(qū)動AD7711的/sync線)、復(fù)位、FIFO清零等命令。
??? 圖2中的粗線表示數(shù)據(jù)的流向。通道主控器(ChnMaster)與AD7711數(shù)字界面接口,負(fù)責(zé)產(chǎn)生AD7711的所有讀寫時序。一共有12個通道主控器,可以并行地工作,由通道觸發(fā)電路(ChnTrigger)觸發(fā)和指定串/并工作方式。它將通道操作寄存器給出的并行24位控制字或校準(zhǔn)數(shù)據(jù)(由CtlReg.F1F0決定)轉(zhuǎn)換成串行數(shù)據(jù),由SDATA發(fā)送出去,或者讀取AD7711的數(shù)據(jù)寄存器和控制/校準(zhǔn)寄存器,將串行數(shù)據(jù)轉(zhuǎn)換成24位和16位的并行數(shù)據(jù)。當(dāng)通道主控器產(chǎn)生Rdy信號時表示接收完畢,新的數(shù)據(jù)已經(jīng)獲得。
??? 根據(jù)通道操作寄存器的24~28位,有全通道和單通道工作方式。
??? 當(dāng)CH=1時,為全通道的數(shù)據(jù)采集并行工作方式。如果板卡命令START有效,可編程時鐘發(fā)生器(ProgClkGen)則根據(jù)采樣速率輸出采樣時鐘。采樣時鐘直接或經(jīng)定時器(Timer)延時后產(chǎn)生Tpt信號輸入到通道觸發(fā)電路,產(chǎn)生通道使能信號Ena,從而觸發(fā)通道主控器開始工作。每個通道的通道主控器讀取AD7711的數(shù)據(jù),當(dāng)16位數(shù)據(jù)讀完時,輸出Rdy信號。控制分配器(Director)接收采樣時鐘和Rdy信號。當(dāng)所有通道的Rdy信號都收到時,輸出通道選擇信號到4~16多路選擇器,依次選通各個通道的數(shù)據(jù),并產(chǎn)生FIFO寫控制信號,將每個通道的數(shù)據(jù)寫入FIFO里。當(dāng)采樣次數(shù)達(dá)到輸出因子大小時,就通過中斷產(chǎn)生模塊(IntrGen)輸出一個指定的中斷脈沖。PC104主機接收到中斷后,讀取參數(shù)寄存器(0x280)的值,其大小即為輸出數(shù)據(jù)的個數(shù)。控制分配器還對主機連續(xù)讀取數(shù)據(jù)的/IOR信號進(jìn)行計數(shù),若該次中斷讀取的數(shù)據(jù)完畢,產(chǎn)生中斷處理結(jié)束信號,允許下次對FIFO進(jìn)行寫操作。
??? 當(dāng)CH=0時,由CH3CH2CH1CH0決定對哪個通道操作,一般對AD7711讀寫控制字和校準(zhǔn)字時使用單通道的操作。當(dāng)PC104主機寫控制寄存器時,內(nèi)部產(chǎn)生一個表示寫新控制字完畢的脈沖信號,觸發(fā)通道觸發(fā)電路使之產(chǎn)生一個通道使能信號Ena,使相應(yīng)的通道主控器開始工作。如果寫AD7711控制/校準(zhǔn)寄存器,則通道主控器將24位數(shù)據(jù)鎖存,進(jìn)行并-串轉(zhuǎn)換發(fā)送出去。如果讀AD7711控制/校準(zhǔn)寄存器,則通道主控器接收串行數(shù)據(jù)并轉(zhuǎn)換成24位并行數(shù)據(jù)。通道操作寄存器的通道號決定多路選擇器的輸出,將數(shù)據(jù)鎖存到通道寄存器數(shù)據(jù)鎖存器(0x284)里。操作完成后,狀態(tài)寄存器的busy位為0,主機就可以從地址0x284讀取到相應(yīng)AD7711控制/校準(zhǔn)寄存器里的數(shù)據(jù)。
??? 圖2里還包括了內(nèi)部RAM和對外部串口E2PROM。可以初始化RAM,使CPLD在上電時就保存有各通道校準(zhǔn)參數(shù),但是若修改固化參數(shù),必須重新編譯和對外部配置器件編程,用戶主機不能修改。若將參數(shù)保存在片外的串口E2PROM,則可以對其讀和寫,以方便用戶主機根據(jù)實際情況校準(zhǔn)各個通道,并保存新的校準(zhǔn)參數(shù)。
2.2? 通道主控器的設(shè)計
??? 通道主控器的主要結(jié)構(gòu)如圖3所示,包括左移移位寄存器、/RFS和/TFS生成模塊、SCLK計數(shù)器。發(fā)送時,內(nèi)部輸入數(shù)據(jù)通過LodSht鎖存,通過移位從Sdata_o輸出;接收時,串行數(shù)據(jù)從Sdata_i輸入,通過移位得到并行數(shù)據(jù)(24位)輸出到內(nèi)部。ClrSht和EnaSht分別是清零和使能信號。

?


2.3? FIFO和RAM
??? FIFO提供數(shù)據(jù)緩沖能力。FLEX10K50QC240能夠提供2880個邏輯單元、10個嵌入式陣列塊(EAB),總計20480個RAM位。根據(jù)板卡的要求,最大的輸出因子為32,它所需的最大RAM位為32×12×16=6144。每個EAB只能配置成256×8bit,深度為384、數(shù)據(jù)位寬為16的FIFO需要占用4個EAB。所以FIEX10K50QC240完全可以滿足要求,實際上它可以實現(xiàn)最大輸出因子為64所需要的FIFO緩沖。這里使用Altera公司提供的參數(shù)化模塊LPM_FIFO來實現(xiàn)所需的模塊。它是一個單時鐘同步FIFO,支持同時讀和寫。
2.4? 控制分配器
??? 控制分配器主要輸出通道選擇信號和FIFO的寫控制信號。當(dāng)條件滿足時,便輸出從1~12變化的通道選擇信號,同時輸出12個FIFO寫控制信號。這里采用狀態(tài)機實現(xiàn)這一過程。
2.5 可編程時鐘發(fā)生器
??? 采樣脈沖由10MHz時鐘計數(shù)分頻得到,其頻率由主機寫到參數(shù)寄存器的參數(shù)決定。計數(shù)器的預(yù)置值與參數(shù)存在一一對應(yīng)關(guān)系。方法一是采用譯碼器,由于輸出的預(yù)置值是24位,則邏輯復(fù)雜,需占用大量的邏輯單元資源。方法二是使用查找表,采用三段8位的ROM來實現(xiàn),僅占用若干RAM位,簡單有效。
??? 通道控制器內(nèi)部邏輯的原理設(shè)計完成后,所有的詳細(xì)設(shè)計都采用硬件描述語言VHDL實現(xiàn),并在MAX+PULSII集成環(huán)境下編譯、模擬、綜合,最后下載到外部配置器件EPC2中。首先規(guī)劃好每個子功能塊的模型,子功能模型可以使用狀態(tài)模型,也可以使用時序圖進(jìn)程模型來描繪。其次選擇適當(dāng)?shù)拿枋龇绞骄帉懘a。編寫代碼的方式非常重要,因為VHDL綜合工具將依據(jù)設(shè)計代碼方式映射成相應(yīng)的器件邏輯,VHDL代碼的編寫方式將直接影響到設(shè)計的結(jié)果。
??? 本文介紹的PC104溫度采集卡不僅完成了代碼設(shè)計和功能仿真驗證,最后還在實際系統(tǒng)中得到成功應(yīng)用。結(jié)果表明,這款PC104溫度采集卡不僅設(shè)計緊湊、功能強大而且非常靈活,很適合用于過程控制、智能傳感器、便攜式工業(yè)設(shè)備、分布式工業(yè)測量等場合。其中通道控制器是采集卡的設(shè)計核心,它的詳細(xì)設(shè)計過程對其它類似的采集卡控制器設(shè)計也有一定的借鑒意義。
參考文獻(xiàn)
1 宋萬杰,羅 豐,吳順君. CPLD技術(shù)及其應(yīng)用[M]. 西安:西安電子科技大學(xué)出版社, 1999
2 AD7711 DataSheet-LC2MOS Signal Condition ADC. Analog?Devices Inc. 1998
3 侯伯亨. VHDL硬件描述語言與數(shù)字邏輯電路設(shè)計[M].? 西安: 西安電子科技大學(xué)出版社, 1999
4 SysCentreModule/SuperDx Technical Handbook. SBS?Science & Technology Co.,Ltd. 1999

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲精品你懂的| 99在线精品视频| 亚洲国产视频a| 国产综合18久久久久久| 欧美三级网页| 欧美成人精品不卡视频在线观看| 性欧美xxxx大乳国产app| 一本色道久久综合亚洲精品小说| 亚洲激情成人在线| 欧美在线国产| 欧美一区二区三区视频免费| 亚洲一区亚洲| 一本色道久久综合亚洲精品按摩| 亚洲经典视频在线观看| ●精品国产综合乱码久久久久| 国产精品自拍在线| 国产精品久久久一区麻豆最新章节| 欧美激情一区在线观看| 亚洲私人影院| 先锋资源久久| 欧美亚洲日本一区| 性欧美办公室18xxxxhd| 亚洲一区二区高清| 亚洲视频你懂的| 亚洲手机在线| 亚洲视频在线一区| 亚洲少妇在线| 亚洲与欧洲av电影| 亚洲欧美日韩国产| 欧美一区二区三区在线观看| 亚洲欧美三级在线| 羞羞答答国产精品www一本| 亚洲欧美日韩综合一区| 亚洲欧洲一区二区在线观看| 亚洲精品国产精品乱码不99按摩 | 另类专区欧美制服同性| 久久精品卡一| 久久久午夜精品| 鲁鲁狠狠狠7777一区二区| 麻豆成人91精品二区三区| 裸体素人女欧美日韩| 免费成人性网站| 欧美成人一区二区| 午夜精品国产| 久久精品成人欧美大片古装| 久久久久久国产精品mv| 久久久人成影片一区二区三区观看 | 亚洲国产高清aⅴ视频| 在线免费观看视频一区| 亚洲丰满在线| 亚洲精选在线观看| 99这里有精品| 亚洲在线视频| 欧美一区观看| 亚洲乱码国产乱码精品精可以看| 一本一本久久a久久精品牛牛影视| 亚洲激情影视| 久久精品国产精品亚洲精品| 久久爱91午夜羞羞| 亚洲欧美一区二区精品久久久| 亚洲国产精品一区二区三区| 亚洲精品免费观看| 最新日韩欧美| 亚洲欧美日韩综合一区| 亚洲国产精品久久久久婷婷老年| 亚洲人成网站精品片在线观看| 亚洲乱码日产精品bd| 亚洲丝袜av一区| 久久成人综合视频| 免费日韩成人| 欧美三级电影精品| 国产精品永久免费| 国产一区二区观看| 亚洲伦理网站| 午夜免费日韩视频| 亚洲人在线视频| 亚洲欧美第一页| 久久不见久久见免费视频1| 欧美va天堂| 国产精品欧美日韩一区二区| 狠狠色丁香婷婷综合| 亚洲免费av观看| 亚洲视频一区| 亚洲黄色天堂| 亚洲欧美日韩精品| 蜜臀a∨国产成人精品| 欧美日韩在线影院| 国产一区在线播放| 日韩视频亚洲视频| 欧美在线视频观看免费网站| 亚洲理论在线观看| 久久国产欧美| 欧美日韩视频在线第一区| 国产一区二区精品久久| 亚洲日本中文字幕| 亚洲一区视频| 亚洲精品字幕| 蜜桃av一区二区在线观看| 国产精品盗摄一区二区三区| 欧美在线国产精品| 欧美精品电影| 午夜在线视频一区二区区别| 男人的天堂亚洲| 久久人人爽爽爽人久久久| 国产精品美女久久久久av超清| 亚洲国产黄色片| 午夜久久一区| 亚洲精品精选| 性欧美在线看片a免费观看| 久久麻豆一区二区| 国产精品美女久久福利网站| 亚洲精品久久久久久一区二区| 欧美一级片一区| 99视频热这里只有精品免费| 欧美中文在线字幕| 国产精品成人免费| 亚洲人成网站在线播| 亚洲国产成人一区| 久久久99爱| 国产精品影视天天线| 妖精视频成人观看www| 亚洲精品美女在线观看| 久久久久久久久伊人| 国产精品区一区| 99国产精品久久久久久久久久| 久久国产精品久久w女人spa| 亚洲免费电影在线观看| 亚洲日本va午夜在线影院| 宅男噜噜噜66一区二区| 欧美黄色大片网站| 亚洲高清久久久| 最新中文字幕亚洲| 老巨人导航500精品| 欧美日韩一区免费| 夜夜嗨av色综合久久久综合网| 亚洲美洲欧洲综合国产一区| 美女在线一区二区| 激情丁香综合| 亚洲第一主播视频| 久久夜色精品国产| 国产麻豆综合| 99国产精品国产精品毛片| 亚洲伦理在线| 午夜久久一区| 亚洲国产精选| 老牛国产精品一区的观看方式| 国产精品高清在线| 亚洲一区二区免费视频| 一级日韩一区在线观看| 欧美日韩国产丝袜另类| 国产日韩专区| 久久精品国产清高在天天线| 久久久久久久波多野高潮日日 | 欧美午夜三级| 亚洲欧美欧美一区二区三区| 亚洲精品久久久蜜桃| 久久夜色精品亚洲噜噜国产mv| 国模精品一区二区三区| 亚洲伊人观看| 午夜激情亚洲| 国产女主播在线一区二区| 91久久精品一区| 9国产精品视频| 欧美视频中文一区二区三区在线观看| 欧美日韩国产在线一区| 1000部精品久久久久久久久 | 亚洲高清在线| 亚洲免费精彩视频| 欧美视频网站| 亚洲国产视频a| 亚洲娇小video精品| 久久久亚洲影院你懂的| 曰本成人黄色| 99精品国产一区二区青青牛奶| 欧美日韩一级视频| 亚洲午夜一二三区视频| 欧美一区二区三区男人的天堂| 国产一区二区三区在线观看精品 | 激情综合网激情| 亚洲三级影院| 欧美午夜久久久| 欧美一级视频| 欧美精品久久天天躁| 亚洲另类自拍| 亚洲中午字幕| 狠狠色狠狠色综合日日小说| 国产九色精品成人porny| 日韩亚洲不卡在线| 欧美日韩国产在线一区| 亚洲视频一区在线观看| 一本一本久久| 欧美日韩在线观看一区二区| 亚洲欧美激情诱惑| 美女精品在线观看| av不卡在线观看| 欧美中文在线字幕| 国产欧美日本一区视频| 亚洲欧洲日本国产| 欧美日韩美女| 亚洲欧美电影院|