999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于STD總線的多路數字I/O設計

2010-04-12 00:00:00孫德田
現代電子技術 2010年11期

摘 要:隨著人們生活水平的日益提高,工業控制的對象數量也與日俱增,對I/O模塊的開發需進一步加強。為了滿足工業控制方面的I/O數量多,操作方便,使用靈活,可靠性高等方面的較高要求,實現了一種基于STD總線,以工業控制計算機為主控制器,應用Xilinx公司的CPLD開發平臺,面向工業控制的多路數字I/O設計。工業控制計算機通過多路數字I/O板,實現了多達 128 位I/O被控對象的讀、寫控制,并且速度快、性能穩,能夠充分滿足工業控制的要求。

關鍵詞:STD總線; I/O; CPLD; 工業控制

中圖分類號:TP316 文獻標識碼:A

文章編號:1004-373X(2010)11-0200-03

Design of Multi-channel Digital I/O Based on STD Bus

SUN De-tian

(Shenyang Ligong University, Shenyang 110168, China)

Abstract: A design of multi-channel digital I/O interface module for industrial control is completed to meet the requirements of industrial control charactristics such as large number of multi-channel I/O interfaces, easy operation, flexible application, high reliability, which is based on STD bus, industrial control computer-based controller and CPLD(complex programmable logic device)development platform of Xilinx Corporation. The reading and writing control of 128-bit I/O controlled object was achieved with the technology by an industrial control computer.

Keywords: STD bus; I/O; CPLD; industrial control

在工業控制領域,數字I/O以其簡單、靈活的特性,得到了廣泛的應用。以往對于數字I/O的應用和數量增加的方法通常用GAL和專用I/O芯片采用譯碼擴展等方式來實現[1],這種方式盡管能夠滿足一定程度上的要求,但對于更大數量的I/O應用,比如幾十甚至上百路的數字I/O,就勉為其難了。為了滿足這種要求,并且進一步提高數字I/O的使用效率,專門針對多路數字I/O進行了基于STD總線的設計,應用Xilinx公司的CPLD進行編程開發,實現了64位數字輸入DIN 0~DIN 31和 64 位數字輸出DOUT 0~DOUT 31,同時每一路I/O可以獨立編程,既可以作為輸入又可以作為輸出。

1 STD總線

目前,STD標準[3]總線已成為工業控制領域內最流行的標準總線之一[4],主要用于8位微處理機和單片機工業控制系統。STD總線的典型結構如圖1所示。

在工業控制系統的實際應用中,上位機、主控模塊等往往需要通過STD總線,根據STD總線的協議、特性[5]訪問其他的單片機系統[1]。例如,在某測量設備中,上位機、主控模塊可以通過總線上的I/O模塊、A/D模塊接口,采集傳感器的量值,通過STD總線訪問RAM模塊,以及通過STD總線進行主控模塊與總線上其他控制器之間,主控模塊與上位機之間的通信與數據交換等,構成了一個微型的工業控制網絡[6]。本文的多路數字I/O就是STD總線中的一個模塊。

圖1 STD總線典型結構圖

2 多路數字I/O的硬件設計

2.1 電路組成

主要由可編程邏輯電路、電平調理電路、總線接口電路以及電源電路等組成。可編程邏輯硬件采用Xilinx公司的CPLD器件XC95288,應用Xilinx公司的Project Navigator(ISE)集成開發環境進行編程開發;電平調理電路采用74LS245,具有輸入輸出電平轉換的功能,還可以通過接繼電器或者光電隔離器與外設接口;總線接口電路采用 74LS245,對74LS245 的DIR(方向)進行讀寫編程,實現了與STD總線的數據通信,電源電路為CPLD以及電平轉換電路等提供必需的電源系統。

硬件實現框圖如圖2所示,虛線框內為多路數字I/O的硬件電路部分。

圖2 硬件實現框圖

2.2 性能特點

數量多 CPLD芯片XC95288具有208個管腳,其中用戶I/O管腳數量達到168個,除了地址總線、數據總線以及片選信號等所占用40個I/O之外,其余的128個I/O完全可以作為通用I/O編程使用;

面積小 如此眾多數量的I/O,完全由一片CPLD來實現,簡化了電路設計程序,減少了PCB的設計面積,又提高了數字I/O的穩定性;

靈活性高 由于每一個I/O都可獨立編程,因此在使用過程中變得非常靈活,可以根據現場需求隨時改變其輸入、輸出,在工業控制應用領域為產品的增強與升級提供了極大的靈活性。

此外,該設計還具有傳輸速度高(由CPLD的傳輸特性決定)及電平兼容性好等特點,可滿足用戶在測試、控制及設計應用中的多種需求。

3 多路數字I/O的程序設計

該系統使用業界領先的 FPGA 設計環境Xilinx ISE,其將先進的技術與靈活性、易使用性的圖形界面結合在一起,可以在最短的時間,獲得最佳的硬件設計。XC95288 CPLD是低功耗3.3 V器件,288個宏單元,6 400個可用邏輯門,168個用戶I/O,再加上靈活、高度優化的VHDL硬件描述語言,實現了128位數字I/O的程序化設計。

3.1 部分程序代碼

部分程序代碼如下:

if iorq=′0′and wr=′0′ then

case addr is

when ″0110000000″=>en_245<=′0′;dir_245<=′1′; temp0<=bd;out0<=bd;

when ″0110000001″=>en_245<=′0′;dir_245<=′1′; temp1<=bd;out1<=bd;

when ″0110000010″=>en_245<=′0′;dir_245<=′1′; temp2<=bd;out2<=bd;

when ″0110000011″=>en_245<=′0′;dir_245<=′1′; temp3<=bd;out3<=bd;

when ″0110000100″=>en_245<=′0′;dir_245<=′1′; temp4<=bd;out4<=bd;

when ″0110000101″=>en_245<=′0′;dir_245<=′1′; temp5<=bd;out5<=bd;

when ″0110000110″=>en_245<=′0′;dir_245<=′1′; temp6<=bd;out6<=bd;

when ″0110001101″=>en_245<=′0′;dir_245<=′1′; temp7<=bd;out7<=bd;

when others=>en_245<=′0′;dir_245<=′1′;bd<=″ZZZZZZZZ″;

end case;

elsif iorq=′0′ and rd=′0′ then

case addr is

when ″0110000000″=>en_245<=′0′;dir_245<=′0′;bd<=temp0;

when ″0110000001″=>en_245<=′0′;dir_245<=′0′;bd<=temp1;

when ″0110000010″=>en_245<=′0′;dir_245<=′0′;bd<=temp2;

when ″0110000011″=>en_245<=′0′;dir_245<=′0′;bd<=temp3;

when ″0110000100″=>en_245<=′0′;dir_245<=′0′;bd<=temp4;

when ″0110000101″=>en_245<=′0′;dir_245<=′0′;bd<=temp5;

when ″0110000110″=>en_245<=′0′;dir_245<=′0′;bd<=temp6;

when ″0110001101″=>en_245<=′0′;dir_245<=′0′;bd<=temp7;

when ″0110001000″=>en_245<=′0′;dir_245<=′0′;bd<=io_in0 ;

when ″0110001001″=>en_245<=′0′;dir_245<=′0′;bd<=io_in1 ;

when ″0110001010″=>en_245<=′0′;dir_245<=′0′;bd<=io_in2 ;

when ″0110001011″=>en_245<=′0′;dir_245<=′0′;bd<=io_in3 ;

when ″0110001100″=>en_245<=′0′;dir_245<=′0′;bd<=io_in4 ;

when ″0110000111″=>en_245<=′0′;dir_245<=′0′;bd<=io_in5 ;

when ″0110001110″=>en_245<=′0′;dir_245<=′0′;bd<=io_in6 ;

when ″0110001111″=>en_245<=′0′;dir_245<=′0′;bd<=io_in7 ;

when others=>en_245<=′0′;dir_245<=′1′;bd<=″ZZZZZZZZ″;

end case;

else

out0<=temp0;out1<=temp1;out2<=temp2;

out3<=temp3;out4<=temp4;out5<=temp5;

out6<=temp6;out7<=temp7;bd<=″ZZZZZZZZ″;

en_245<=′1′;dir_245<=′1′;

end if;

其中:addr是10位地址總線;bd是8位數據總線;en_245和dir_245分別是STD總線接口芯片74LS245的片選使能與方向信號;tempx是片內寄存器;io_inx和outx分別是8位輸入、8位輸出I/O口。

3.2 性能描述

多路數字I/O口的選擇由10位地址決定,不同的地址操作不同的I/O端口,在I/O非動態情況下,數據總線處于高阻狀態,避免了總線沖突,同時也提高了I/O端口的穩定性,減少了高速數據傳輸條件下引起不必要的錯誤[7],根據現場對I/O輸入、輸出的需要,可以修改程序,靈活改變端口的功能,另外,對于輸出端口,加入了數據寫出后讀回的功能,使得上位機能夠隨時驗證寫出數據的正確性,對于外設信號,通過信號調理板實現電平匹配[8],進一步增加了本設計的功能可靠性。

4 結 語

以CPLD器件為核心,選用Xilinx公司的ISE作為硬件開發平臺,并采用VHDL編程語言,充分應用了可編程邏輯器件的特點,發揮了VHDL硬件描述語言的編程優點。減少了芯片數量,既做到了系統小型化又降低了成本[9]。程序已通過綜合實驗,應用了STD總線的通訊特點,與總線上的其他板卡、設備通訊也極為方便,既解決了工業通信網絡的一般問題[10],又達到了工業通用I/O的較高要求。總之,該多路數字I/O設計容量高、功耗低、速度快,不僅具有通用性、實用性,而且具有靈活性和移植性,便于調試,為高速I/O開發設計提供了一種很好的嘗試[11],相信在很多行業都會有廣闊的應用前景。

參考文獻

[1]胡漢才.單片機原理及其接口技術[M].北京:清華大學出版社,1996.

[2]姚駿.STD總線技術現狀及發展趨勢[J].計算機應用,1990(2):20-22.

[3]楊森,孟晨,王成.基于STD標準的ATS運行時系統設計與應用[J].儀表技術,2009(7):30-32.

[4]楊慧,楊英,王平.雙端口RAM在STD總線與單片機通訊中的應用[J].機械管理開發,2008(2):166-167.

[5]王禎,王慧蓉.STD總線技術[J].無線電工程,1990(2):67-71.

[6]李保林,劉繼光.基于單片機的工業控制網絡模塊的研制[J].實驗技術與管理,2009(1):59-62,65.

[7]牟華,劉勛章,陳亞駿.光纖數據傳輸板中ROCKET I/O設計[J].電子技術,2009,34(6):64-67.

[8]黃樹毅.采用STD總線技術的伺服機構測試儀[J].測控技術,1993,12(3):24-26.

[9]Matt Klein.Xilinx FPGA的功耗優化設計[J].世界電子元器件,2009(4):18-20.

[10]何芳,李紅信.無線擴展Profibus DP 和Profinet I/O的設計[J].微計算機信息,2009,25(12):119-121.

[11]王濤,張德源,郭建軍.Compact PCI/PCI總線高速數字I/O的設計[J].中國測試技術,2005(6):110-112.

主站蜘蛛池模板: 中文字幕人成人乱码亚洲电影| 无码久看视频| 中文无码精品A∨在线观看不卡 | 国产精品主播| 欧美日韩高清在线| 一边摸一边做爽的视频17国产| 国语少妇高潮| 在线免费不卡视频| 成人午夜天| 播五月综合| 99视频精品在线观看| 妇女自拍偷自拍亚洲精品| 欧美日韩中文字幕在线| 中文字幕无线码一区| 丝袜国产一区| 国产欧美视频在线观看| 99久久国产精品无码| 亚洲无线国产观看| 国产白丝av| 免费人成网站在线观看欧美| 国产区91| 99re免费视频| 久久人与动人物A级毛片| 91精品国产丝袜| 99这里只有精品免费视频| 亚洲无码高清一区| 亚洲一区色| 中文字幕自拍偷拍| 日韩免费成人| 国产在线观看第二页| 一级毛片免费的| 亚洲精品视频免费观看| 国产在线视频二区| 热伊人99re久久精品最新地| 日日碰狠狠添天天爽| 天堂av综合网| 欧美日韩精品在线播放| 国产网站在线看| 国产综合亚洲欧洲区精品无码| 亚洲日本精品一区二区| 国产精品天干天干在线观看| 国产成人免费视频精品一区二区| 亚洲视频二| AV网站中文| 国产日韩欧美黄色片免费观看| 久久久国产精品免费视频| 久久综合色天堂av| 91精品国产麻豆国产自产在线| 伊人丁香五月天久久综合| 国产一级片网址| 亚洲精品视频在线观看视频| 国产菊爆视频在线观看| 国产一区二区免费播放| 色综合久久久久8天国| 欧美日韩在线成人| 欧洲一区二区三区无码| 国产精品免费露脸视频| 色成人亚洲| 久久99精品久久久久久不卡| 国产高清免费午夜在线视频| 免费国产一级 片内射老| 麻豆精品在线| 欧美成人精品一级在线观看| 久久中文字幕2021精品| 国产香蕉国产精品偷在线观看| 性欧美久久| 青青网在线国产| 中文字幕不卡免费高清视频| 在线观看91香蕉国产免费| 亚洲av日韩av制服丝袜| 亚洲精品人成网线在线| 青青久视频| 99久久免费精品特色大片| 亚洲第一天堂无码专区| 丰满人妻被猛烈进入无码| 午夜国产不卡在线观看视频| 欧美综合在线观看| 丁香五月亚洲综合在线| 无码一区二区波多野结衣播放搜索| 少妇人妻无码首页| 亚洲成人网在线播放| 精品国产免费观看|