基于C167的PROFlBUS-DP智能從站的設(shè)計(jì)
2.2 SPC3智能通訊芯片
SPC3是用于從站開發(fā)的智能通訊芯片,它支持PROFIBUS-DP協(xié)議。SPC3內(nèi)部集成了1.5 kB的雙口RAM,其地址空間為00H~5FFH。以功能區(qū)分,可分為3個(gè)區(qū)域。
內(nèi)部鎖存器/寄存器位于前21個(gè)地址。主要包括:方式寄存器1和寄存器O,中斷控制寄存器,狀態(tài)寄存器,以及輸入緩沖器、輸出緩沖器和診斷緩沖器各自的狀態(tài)寄存器。從016H~03FH為配置參數(shù)區(qū)域,各種BUF的指針與長度(包括本站地址、地址允許改變變量、用戶看門狗值和設(shè)備標(biāo)識(shí)號(hào))在此區(qū)域設(shè)置。整個(gè)緩沖器結(jié)構(gòu)就是基于這些參數(shù)寫的。用戶緩沖器區(qū)域位于從40H開始的單元,用來接收來自IO應(yīng)用和主站的數(shù)據(jù)。
SPC3有14個(gè)中斷源,各個(gè)中斷源沒有優(yōu)先級(jí),而是通過中斷屏蔽寄存器和中斷響應(yīng)寄存器實(shí)現(xiàn)中斷。診斷分為外部診斷和狀態(tài)診斷,從站地址可以是固定的,也可以由主站設(shè)置。用戶看門狗計(jì)數(shù)器是一個(gè)16位的內(nèi)部存儲(chǔ)器單元。初始值由“RUserWdValue”單元給定,每接收一個(gè)數(shù)據(jù)報(bào)文,計(jì)數(shù)器減1。當(dāng)減到0000H時(shí),SPC3進(jìn)入“等待參數(shù)化”狀態(tài),DP狀態(tài)機(jī)制執(zhí)行“離開主站”命令。另外,SPC3內(nèi)部還集成了一個(gè)看門狗計(jì)數(shù)器,可工作于3種不同的狀態(tài):波特率監(jiān)測、波特率控制和DP控制。SPC3還能自動(dòng)標(biāo)識(shí)總線波特率,范圍為0.009 6~12 MHz。本文引用地址:http://www.ex-cimer.com/article/163043.htm
3 PROFIBUS-DP智能從站設(shè)計(jì)
3.1 系統(tǒng)設(shè)計(jì)
從站與主站之間的通信連接示意圖,如圖2所示。圖2描述了主站與從站的連接??梢钥闯鯯PC3作為一個(gè)重要的媒介連接主站與從站,其數(shù)據(jù)交換的標(biāo)準(zhǔn)為RS485。
3.2 硬件電路設(shè)計(jì)
圖3為C167與SPC3的接口電路。SPC3通過一塊內(nèi)置1.5 kB雙口RAM與CPU接口,它支持多種CPU。SPC3中雙口RAM的地址為1000H~15FFH。
SPC3的AB7~AB0管腳為地址總線,DB7~DB0管腳為數(shù)據(jù)總線,ALE管腳是地址鎖存使能,XWR管腳為寫信號(hào),XRD管腳為讀信號(hào),XINT管腳用于進(jìn)行中斷控制,RESET管腳的功能是接CPU RESET輸入,CLK管腳為時(shí)鐘脈沖輸入,所接的時(shí)鐘頻率為48 MHz。SPC3的右側(cè)XCS管腳的作用是進(jìn)行片選,XTEST0和XTEST1管腳必須接5 V電源,DIVIDER管腳是用來設(shè)置CLKOUT的分頻系數(shù),AB8~AB10管腳為地址總線,VDD接5 V電源,VSS接地,CLKOUT管腳為分頻時(shí)鐘脈沖輸出,XDATAEXCH管腳為PROFIBUS-DP的數(shù)據(jù)交換狀態(tài),XREADY/XDTACK管腳為外部CPU的準(zhǔn)備好信號(hào),TXD管腳是串行發(fā)送端口,RXD管腳為串行接收端口。
C167的P27~P20管腳為地址總線,P07~P00管腳為數(shù)據(jù)總線,ALE管腳的功能是地址鎖存使能;WR管腳的用途是外部數(shù)據(jù)存儲(chǔ)器寫信號(hào),低電平有效;RD管腳的用途是外部數(shù)據(jù)存儲(chǔ)器讀信號(hào),低電平有效;INT0管腳為外部中斷0,低電平有效;RST管腳的用途是復(fù)位,當(dāng)晶振在運(yùn)行中,只要復(fù)位管腳出現(xiàn)2個(gè)機(jī)器周期高電平即可復(fù)位,內(nèi)部有擴(kuò)散電阻連接到VSS,僅需要外接一個(gè)電容到VCC即可實(shí)現(xiàn)上電復(fù)位。
圖3中的模塊1為光電隔離,模塊2為驅(qū)動(dòng)器,SPC3過光電隔離后與總線驅(qū)動(dòng)器相連,具體的連接電路,如圖4所示。
評(píng)論