<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>
關(guān) 閉

新聞中心

EEPW首頁(yè) > 工控自動(dòng)化 > 設計應用 > 基于芯片CH375的USB總線(xiàn)和ISA總線(xiàn)轉接的實(shí)現

基于芯片CH375的USB總線(xiàn)和ISA總線(xiàn)轉接的實(shí)現

作者: 時(shí)間:2016-10-10 來(lái)源:網(wǎng)絡(luò ) 收藏

摘要:因其便捷的特性使得其應用越來(lái)越廣泛,電子市場(chǎng)上帶有USB接口的設備也越來(lái)越多,取代傳統的老式接口必將成為一種趨勢。而是工業(yè)標準總線(xiàn)架構,在工控領(lǐng)域中歷史悠久,是最早的系統級總線(xiàn)。如今在工業(yè)控制領(lǐng)域的主要作用就是擴展中低速設備接口,因為工控領(lǐng)域中要控制的設備往往非常多,所以在工業(yè)領(lǐng)域中仍然起著(zhù)非常重要的作用。本文的主要目的是利用芯片完成到ISA總線(xiàn)的轉接。

本文引用地址:http://dyxdggzs.com/article/201610/306640.htm

ISA總線(xiàn)最早作為一種系統總線(xiàn),主要用在IBM-PC、IBM-PC/XT系列計算機當中,后來(lái)成為工業(yè)總線(xiàn)標準,并且產(chǎn)生了深遠的影響。由于技術(shù)的不斷發(fā)展,ISA總線(xiàn)的傳輸速率跟不上處理器的速度,從而被其他總線(xiàn)所取代。

然而正是由于ISA總線(xiàn)的低速使得其與現在的外設速率十分匹配,適合作為一種外圍設備總線(xiàn),用于擴展設備接口。并且ISA總線(xiàn)的地址線(xiàn)是非常多的,可以連接數量龐大的設備。綜合這兩點(diǎn)原因,ISA總線(xiàn)在工業(yè)控制領(lǐng)域仍然占有一席之地,并且ISA總線(xiàn)工業(yè)領(lǐng)域中的應用還會(huì )持續一段很長(cháng)的時(shí)間。

USB外設普及之后,將會(huì )使得PC機箱后面的各式各樣繁雜的連接線(xiàn)變得簡(jiǎn)單,大多數老式的接口將被淘汰,如ISA接口、PS/2接口、串并行接口等,取而代之的是各種USB接口的外設。但有些接口是USB無(wú)法取代的,如顯示器接口、SCSI接口和IEEE1394接口等。不過(guò)這還是不能阻擋USB接口的發(fā)展。

其實(shí)除了如顯卡這種數據傳輸量極高和一些對實(shí)時(shí)性要求特別高的控制設備外,幾乎所有的PC外設都可以移植到USB上來(lái),因此USB的PC外設有不可限量的發(fā)展空間。正是基于這個(gè)原因,本文提出了一種設計方案,通過(guò)芯片實(shí)現兩者之間的轉接。

1 整體方案的設計

本方案中采用芯片實(shí)現ISA總線(xiàn)到USB總線(xiàn)的轉接。CH375是一個(gè)USB總線(xiàn)的通用接口芯片,支持USB-HOST主機方式和USB- DEVICE/SLAVE設備方式。在本地端,CH375具有8位數據總線(xiàn)和讀、寫(xiě)、片選控制線(xiàn)以及中斷輸出,可以方便地掛接到單片機、DSP、MCU、 MPU等控制器的系統總線(xiàn)上。它內置了USB通訊中的底層協(xié)議,屏蔽了復雜的底層驅動(dòng);通過(guò)Windows驅動(dòng)程序提供設備級接口,通過(guò)DLL提供API 應用層接口。下圖是轉接板的整體模塊圖,板卡通過(guò)USB接頭和上位計算機連接,通過(guò)ISA接口插接在下位機的ISA插槽上。

基于芯片CH375的USB總線(xiàn)和ISA總線(xiàn)轉接的實(shí)現

1.1 CH375模塊的設計

CH375芯片與外圍芯片連接電路如圖2所示。

基于芯片CH375的USB總線(xiàn)和ISA總線(xiàn)轉接的實(shí)現

UD+、UD-引腳分別連接USB總線(xiàn)的D+、D-數據線(xiàn)。

ACT#是CH375設備狀態(tài)輸出端,當CH375作為USB設備配置完成后,該引腳輸出低電平,可以用來(lái)指示CH375的狀態(tài)。

INT#引腳為中斷請求輸出,將其連接到單片機的中斷0引腳。

CS#片選控制輸入引腳,將其接到單片機P2.7管腳。

A0是CH375數據端口和命令端口的選擇引腳,A0接到單片機的P2.6管腳。

RD#和WR#分別接到單片機的讀寫(xiě)信號引腳。

D0~D7是數據總線(xiàn),分別與單片機的P0.0~P0.7連接。

1.2 ISA模塊的設計

本設計中用了兩個(gè)74HC245,分別將數據信號、地址信號和讀寫(xiě)控制信號引入到下位機中。采用74LS573芯片作為鎖存器。1)74LS573的使能端0E#引腳接地使其一直有效。2)LE為鎖存使能輸入端,當其從高電平轉為低電平時(shí)鎖存輸入的數據(即為鎖存P0口的數據)。由于單片機是在A(yíng)LE的下降沿送出穩定的地址信號,因此可將芯片的LE引腳直接與單片機的ALE連接。3)其他對應連接即可。

ISA總線(xiàn)的地址總線(xiàn)和數據總線(xiàn)是分開(kāi)的,控制線(xiàn)也比較簡(jiǎn)單,因而和單片機接口非常方便,可以直接接到ISA總線(xiàn)上。

2 軟件設計

本設計要完成的軟件程序設計主要是:上位機用戶(hù)界面應用程序和下位單片機程序。

上位機的數據通過(guò)USB總線(xiàn),由USB主機發(fā)送給CH375,CH375將接收的數據放入端點(diǎn)緩沖區,接收完后通過(guò)中斷告知單片機數據接收完畢,然后單片機響應中斷,在中斷中做

相應的處理,即在中斷中將數據轉換和發(fā)送到ISA總線(xiàn)。因此單片機的主要任務(wù)是與CH375通訊,接收CH375數據緩沖區中的數據,然后再將數據經(jīng)過(guò)處理轉換成ISA總線(xiàn)信號后發(fā)送到ISA總線(xiàn)。圖3為主程序的流程圖。

基于芯片CH375的USB總線(xiàn)和ISA總線(xiàn)轉接的實(shí)現

圖4為CH375初始化子程序,其主要是測試和單片機的通訊是否正常,以及設置CH375的工作方式等。本文將CH375的工作方式設置為方式2,即內置固件模式。

圖5是單片機中斷子程序,這是下位單片機程序最重要的部分,所有上位機程序發(fā)送的數據都是由中斷子程序響應、接收和處理的。

中斷子程序如下:

基于芯片CH375的USB總線(xiàn)和ISA總線(xiàn)轉接的實(shí)現

3 系統調試

3.1 調試方法

本文采用了先部分后整體的調試方法,這樣可以節省時(shí)間,最快的速度發(fā)現問(wèn)題。

把整個(gè)調試系統分成了兩部分,第一部分為上位機程序與單片機的通訊;第二部分為單片機與ISA總線(xiàn)的通訊。分別對此兩部分進(jìn)行調試,調試成功之后再將這兩部分組合成整體,最后進(jìn)行整體調試。

3.2 調試過(guò)程與調試記錄

1)上位機與單片機數據傳送的調試

上位機部分由程序“調試程序V1.0.EXE”來(lái)完成控制,由他可以輸入I/O輸出板卡的地址以及要發(fā)送給ISA總線(xiàn)的數據。其主界面如圖6所示。

基于芯片CH375的USB總線(xiàn)和ISA總線(xiàn)轉接的實(shí)現

單片機部分由Keil C編程軟件、仿真器以及USB-ISA轉接卡組成。將仿真器的仿真頭連接到USB-ISA轉接卡單片機位置,由Keil C編程軟件、仿真器共同完成仿真功能。Keil C軟件的編程和調試界面如圖7。

基于芯片CH375的USB總線(xiàn)和ISA總線(xiàn)轉接的實(shí)現

利用仿真器就可以查看數據是否成功到達,調試記錄如表1所示。

基于芯片CH375的USB總線(xiàn)和ISA總線(xiàn)轉接的實(shí)現

2)單片機與ISA總線(xiàn)數據傳送的調試

單片機部分即可用仿真器仿真,也可以直接用通過(guò)編程器燒寫(xiě)了程序的單片機,但相比較而言用仿真調試會(huì )比較方便。這部分調試主要是看由單片機發(fā)送的ISA總線(xiàn)數據能否被I/O輸出卡接收到。數據是否接收到可由顯示板來(lái)指示,顯示卡LED燈的亮滅狀態(tài)可以指示I/O輸出卡是否被選中,以及是否接收到單片機的控制信號。

程序控制向ISA總線(xiàn)的某個(gè)地址發(fā)送數據,如果顯示板能夠顯示程序中發(fā)送的數據信息,則表明單片機與ISA總線(xiàn)通訊成功。

3)系統整體調試

當上述兩個(gè)部分都調試成功之后,就可以開(kāi)始系統的整體調試了。上面兩步的調試成功說(shuō)明硬件原理和硬件連接正確,上位機調試程序也沒(méi)問(wèn)題,接下來(lái)就只剩下單片機對接收到的數據的處理的軟件程序調試了。這個(gè)部分也相對比較簡(jiǎn)單,單片機對ISA總線(xiàn)數據的處理跟對擴展存儲器的操作一樣;指向某個(gè)地址然后發(fā)送數據。

4 結束語(yǔ)

本文將USB和ISA這兩種總線(xiàn)的特點(diǎn)融合在一起,設計并制作了USB-ISA轉接卡,適應于各種工控系統,在有ISA總線(xiàn)的場(chǎng)合基本上都可以應用此轉接卡。ISA總線(xiàn)是一種適合于中低速I(mǎi)/O設備的總線(xiàn),因其多地址線(xiàn)和較慢的傳輸速率,ISA總線(xiàn)在工業(yè)領(lǐng)域中仍然應用得非常廣泛。而USB總線(xiàn)又是一種非常方便的總線(xiàn),受到越來(lái)越多的使用者的喜愛(ài),USB的優(yōu)越的特性將會(huì )使其具有不可抵擋的發(fā)展勢頭。因此USB總線(xiàn)和ISA總線(xiàn)的結合必將會(huì )在工業(yè)領(lǐng)域產(chǎn)生深遠的影響,可以預期USB-ISA轉接卡在工業(yè)領(lǐng)域中會(huì )有非常廣泛的應用前景。



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>