浓毛老太交欧美老妇热爱乱,蜜臀性色av免费,妺妺窝人体色www看美女,久久久久久久久久久大尺度免费视频,麻豆人妻无码性色av专区

位置:51電子網(wǎng) » 技術(shù)資料 » 控制技術(shù)

ARM7與FPGA在工業(yè)控制的結(jié)合

發(fā)布時(shí)間:2008/8/20 0:00:00 訪問(wèn)次數(shù):509

  工業(yè)控制中往往需要完成多通道故障檢測(cè)及多通道命令控制(這種多任務(wù)設(shè)置非常普遍),單獨(dú)的cpu芯片由于其外部控制接口數(shù)量有限而難以直接完成多路檢控任務(wù),故利用arm芯片與fpga相結(jié)合來(lái)擴(kuò)展檢控通道是一個(gè)非常好的選擇。這里介紹用atmel公司arm7處理器(at91fr40162)和altera公司的低成本fpga芯片(cyclone2)結(jié)合使用完成多通道檢控任務(wù)的一種實(shí)現(xiàn)方法。

各部分功能簡(jiǎn)介

  圖1為此系統(tǒng)的結(jié)構(gòu)連接框圖。如圖所示,arm芯片與fpga芯片之間通過(guò)數(shù)據(jù)總線、地址總線及讀寫(xiě)控制線相連,而與終端pc則通過(guò)串口通信;fpga與目標(biāo)設(shè)備通過(guò)命令控制總線和故障檢測(cè)總線相連。


圖1 系統(tǒng)結(jié)構(gòu)框圖


1 故障檢測(cè)和命令控制部分

  故障檢測(cè):檢測(cè)通道的故障(正常)信號(hào)以高(低)電平方式指示,其一旦有故障產(chǎn)生就會(huì)保持高電平不變直到故障排除。針對(duì)這種特征,在arm控制器端采用定時(shí)中斷循環(huán)查詢方式來(lái)判斷故障通道的狀態(tài)。定時(shí)中斷程序通過(guò)對(duì)arm 地址總線在fpga中進(jìn)行譯碼而順序鎖定被檢測(cè)通道的電平值,然后再經(jīng)數(shù)據(jù)總線傳回arm進(jìn)行判斷,最后將判斷結(jié)果送至遠(yuǎn)程終端。采用主機(jī)查詢方式而不采用故障中斷方式出于兩個(gè)原因:一方面是通常控制芯片外部中斷源有限(多數(shù)為4個(gè)外部中斷源),對(duì)于多目標(biāo)中斷信號(hào)檢測(cè)顯然是困難的;另一方面,由于檢測(cè)通道或設(shè)備受到短時(shí)干擾而產(chǎn)生電平隨機(jī)反轉(zhuǎn),造成故障中斷觸發(fā),而中斷觸發(fā)后又無(wú)法在通道電平恢復(fù)正常時(shí)撤銷故障信號(hào),故而形成虛假報(bào)警。

  命令控制:arm芯片先判斷主控端發(fā)來(lái)的控制命令,然后通過(guò)地址總線和數(shù)據(jù)總線將命令狀態(tài)發(fā)送至經(jīng)fpga地址譯碼鎖定的控制通道上。

2 arm芯片與遠(yuǎn)程檢測(cè)控制終端通信  

  由于只存在命令和故障狀態(tài)信號(hào)的收發(fā),所以利用arm的串口實(shí)現(xiàn)與遠(yuǎn)程pc的通信,通信標(biāo)準(zhǔn)選為rs232標(biāo)準(zhǔn)。不過(guò),在arm芯片上要先將ttl電平通過(guò)max232芯片轉(zhuǎn)換為rs232電平標(biāo)準(zhǔn),對(duì)于距離超過(guò)15m的全雙工通信,在發(fā)送接收兩端還要各加一對(duì)rs232轉(zhuǎn)rs422電平的轉(zhuǎn)換模塊,以增加通信距離。

3 fpga內(nèi)部功能模塊說(shuō)明

  fpga內(nèi)部檢測(cè)及控制電路結(jié)構(gòu)關(guān)系如圖2所示。


圖2 fpga內(nèi)部邏輯結(jié)構(gòu)


  arm芯片的addr2~0位地址線和片選使能信號(hào)一同進(jìn)入譯碼器decode1進(jìn)行地址譯碼后產(chǎn)生8路輸出(fpga內(nèi)部可設(shè)置一個(gè)最大輸出為256路的譯碼模塊,所以在實(shí)際應(yīng)用中可擴(kuò)展為更多通道),低4路用于命令發(fā)送通道,高4路用于故障檢測(cè)通道,讀寫(xiě)使能信號(hào)控制數(shù)據(jù)總線。

  arm芯片接收到發(fā)送信號(hào)編碼命令時(shí),立即在串口接收中斷服務(wù)子程序中并送相應(yīng)地址(通道編號(hào))和數(shù)據(jù)(命令狀態(tài))到fpga中。譯碼器有效輸出作為相應(yīng)通道d觸發(fā)器的鎖存時(shí)鐘,而數(shù)據(jù)狀態(tài)則被觸發(fā)器鎖定后作為所選通道的輸出完成相應(yīng)控制。

  arm芯片在定時(shí)中斷產(chǎn)生進(jìn)入服務(wù)程序后對(duì)所有檢測(cè)通道輪流查詢,查詢到有通道故障時(shí),故障信號(hào)結(jié)合選中通路信號(hào)經(jīng)與非運(yùn)算送往數(shù)據(jù)端口被讀取。

fpga程序設(shè)計(jì)注意問(wèn)題

1延時(shí)的配置

  通過(guò)地址總線和數(shù)據(jù)總線進(jìn)行命令傳輸和故障檢測(cè)時(shí),fpga是作為arm芯片的普通外設(shè)來(lái)使用的。而arm芯片對(duì)外設(shè)訪問(wèn)的速度要遠(yuǎn)低于片內(nèi)存儲(chǔ)器,所以要在arm中設(shè)置訪問(wèn)的正確等待周期。arm中提供的延時(shí)周期為0~7個(gè),通過(guò)調(diào)試即可找到外設(shè)合適的等待周期,此系統(tǒng)的等待周期根據(jù)實(shí)際測(cè)試設(shè)置為5個(gè),具體的配置方法見(jiàn)arm程序說(shuō)明。

2 讀寫(xiě)使能信號(hào)的連接

  從圖2中可以看出,寫(xiě)使能信號(hào)nwe及讀使能信號(hào)nrd應(yīng)作為數(shù)據(jù)線(data0~5)的三態(tài)控制信號(hào)連接,即使在arm芯片無(wú)其他外設(shè)時(shí)也不能缺省。因?yàn)閍rm的上電加載程序時(shí)間要長(zhǎng)于同一系統(tǒng)上fpga的程序配置時(shí)間,而fpga的檢測(cè)及控制通道與arm芯片的數(shù)據(jù)總線相連,fpga加載完成后數(shù)據(jù)總線會(huì)存有相應(yīng)通道的邏輯電平值(不為三態(tài)),這就會(huì)導(dǎo)致arm芯片在對(duì)片內(nèi)flash芯片燒寫(xiě)程序或上電加載程序時(shí)與fpga沖突(數(shù)據(jù)被邏輯鎖定),造成無(wú)法正確定位操作對(duì)象而使讀寫(xiě)失敗。

arm配置及應(yīng)用程序說(shuō)明

1 處理器的資源分配

存儲(chǔ)器

  at91fr40162內(nèi)嵌一個(gè)256kb的sram,1024k個(gè)16位字組成的flash存儲(chǔ)器。sram通過(guò)內(nèi)部32位數(shù)據(jù)總線與arm核相連,單周期訪問(wèn),flash存儲(chǔ)器則通過(guò)外部總線訪問(wèn)。

系統(tǒng)外圍

  ebi:外部總線控制接口,ebi可尋址64mb的空間,通過(guò)8個(gè)片選線(ncs0~ncs3獨(dú)立)和24位地址線訪問(wèn)外設(shè),地址線高4位與片選線(ncs4~7)復(fù)用,數(shù)據(jù)總線可配置成8/16位兩種模式與外設(shè)接口。

  pio:并口控制器,pio控制32根i/o線,多數(shù)為復(fù)用引腳,可通過(guò)編程選擇為通用或?qū)?

  工業(yè)控制中往往需要完成多通道故障檢測(cè)及多通道命令控制(這種多任務(wù)設(shè)置非常普遍),單獨(dú)的cpu芯片由于其外部控制接口數(shù)量有限而難以直接完成多路檢控任務(wù),故利用arm芯片與fpga相結(jié)合來(lái)擴(kuò)展檢控通道是一個(gè)非常好的選擇。這里介紹用atmel公司arm7處理器(at91fr40162)和altera公司的低成本fpga芯片(cyclone2)結(jié)合使用完成多通道檢控任務(wù)的一種實(shí)現(xiàn)方法。

各部分功能簡(jiǎn)介

  圖1為此系統(tǒng)的結(jié)構(gòu)連接框圖。如圖所示,arm芯片與fpga芯片之間通過(guò)數(shù)據(jù)總線、地址總線及讀寫(xiě)控制線相連,而與終端pc則通過(guò)串口通信;fpga與目標(biāo)設(shè)備通過(guò)命令控制總線和故障檢測(cè)總線相連。


圖1 系統(tǒng)結(jié)構(gòu)框圖


1 故障檢測(cè)和命令控制部分

  故障檢測(cè):檢測(cè)通道的故障(正常)信號(hào)以高(低)電平方式指示,其一旦有故障產(chǎn)生就會(huì)保持高電平不變直到故障排除。針對(duì)這種特征,在arm控制器端采用定時(shí)中斷循環(huán)查詢方式來(lái)判斷故障通道的狀態(tài)。定時(shí)中斷程序通過(guò)對(duì)arm 地址總線在fpga中進(jìn)行譯碼而順序鎖定被檢測(cè)通道的電平值,然后再經(jīng)數(shù)據(jù)總線傳回arm進(jìn)行判斷,最后將判斷結(jié)果送至遠(yuǎn)程終端。采用主機(jī)查詢方式而不采用故障中斷方式出于兩個(gè)原因:一方面是通常控制芯片外部中斷源有限(多數(shù)為4個(gè)外部中斷源),對(duì)于多目標(biāo)中斷信號(hào)檢測(cè)顯然是困難的;另一方面,由于檢測(cè)通道或設(shè)備受到短時(shí)干擾而產(chǎn)生電平隨機(jī)反轉(zhuǎn),造成故障中斷觸發(fā),而中斷觸發(fā)后又無(wú)法在通道電平恢復(fù)正常時(shí)撤銷故障信號(hào),故而形成虛假報(bào)警。

  命令控制:arm芯片先判斷主控端發(fā)來(lái)的控制命令,然后通過(guò)地址總線和數(shù)據(jù)總線將命令狀態(tài)發(fā)送至經(jīng)fpga地址譯碼鎖定的控制通道上。

2 arm芯片與遠(yuǎn)程檢測(cè)控制終端通信  

  由于只存在命令和故障狀態(tài)信號(hào)的收發(fā),所以利用arm的串口實(shí)現(xiàn)與遠(yuǎn)程pc的通信,通信標(biāo)準(zhǔn)選為rs232標(biāo)準(zhǔn)。不過(guò),在arm芯片上要先將ttl電平通過(guò)max232芯片轉(zhuǎn)換為rs232電平標(biāo)準(zhǔn),對(duì)于距離超過(guò)15m的全雙工通信,在發(fā)送接收兩端還要各加一對(duì)rs232轉(zhuǎn)rs422電平的轉(zhuǎn)換模塊,以增加通信距離。

3 fpga內(nèi)部功能模塊說(shuō)明

  fpga內(nèi)部檢測(cè)及控制電路結(jié)構(gòu)關(guān)系如圖2所示。


圖2 fpga內(nèi)部邏輯結(jié)構(gòu)


  arm芯片的addr2~0位地址線和片選使能信號(hào)一同進(jìn)入譯碼器decode1進(jìn)行地址譯碼后產(chǎn)生8路輸出(fpga內(nèi)部可設(shè)置一個(gè)最大輸出為256路的譯碼模塊,所以在實(shí)際應(yīng)用中可擴(kuò)展為更多通道),低4路用于命令發(fā)送通道,高4路用于故障檢測(cè)通道,讀寫(xiě)使能信號(hào)控制數(shù)據(jù)總線。

  arm芯片接收到發(fā)送信號(hào)編碼命令時(shí),立即在串口接收中斷服務(wù)子程序中并送相應(yīng)地址(通道編號(hào))和數(shù)據(jù)(命令狀態(tài))到fpga中。譯碼器有效輸出作為相應(yīng)通道d觸發(fā)器的鎖存時(shí)鐘,而數(shù)據(jù)狀態(tài)則被觸發(fā)器鎖定后作為所選通道的輸出完成相應(yīng)控制。

  arm芯片在定時(shí)中斷產(chǎn)生進(jìn)入服務(wù)程序后對(duì)所有檢測(cè)通道輪流查詢,查詢到有通道故障時(shí),故障信號(hào)結(jié)合選中通路信號(hào)經(jīng)與非運(yùn)算送往數(shù)據(jù)端口被讀取。

fpga程序設(shè)計(jì)注意問(wèn)題

1延時(shí)的配置

  通過(guò)地址總線和數(shù)據(jù)總線進(jìn)行命令傳輸和故障檢測(cè)時(shí),fpga是作為arm芯片的普通外設(shè)來(lái)使用的。而arm芯片對(duì)外設(shè)訪問(wèn)的速度要遠(yuǎn)低于片內(nèi)存儲(chǔ)器,所以要在arm中設(shè)置訪問(wèn)的正確等待周期。arm中提供的延時(shí)周期為0~7個(gè),通過(guò)調(diào)試即可找到外設(shè)合適的等待周期,此系統(tǒng)的等待周期根據(jù)實(shí)際測(cè)試設(shè)置為5個(gè),具體的配置方法見(jiàn)arm程序說(shuō)明。

2 讀寫(xiě)使能信號(hào)的連接

  從圖2中可以看出,寫(xiě)使能信號(hào)nwe及讀使能信號(hào)nrd應(yīng)作為數(shù)據(jù)線(data0~5)的三態(tài)控制信號(hào)連接,即使在arm芯片無(wú)其他外設(shè)時(shí)也不能缺省。因?yàn)閍rm的上電加載程序時(shí)間要長(zhǎng)于同一系統(tǒng)上fpga的程序配置時(shí)間,而fpga的檢測(cè)及控制通道與arm芯片的數(shù)據(jù)總線相連,fpga加載完成后數(shù)據(jù)總線會(huì)存有相應(yīng)通道的邏輯電平值(不為三態(tài)),這就會(huì)導(dǎo)致arm芯片在對(duì)片內(nèi)flash芯片燒寫(xiě)程序或上電加載程序時(shí)與fpga沖突(數(shù)據(jù)被邏輯鎖定),造成無(wú)法正確定位操作對(duì)象而使讀寫(xiě)失敗。

arm配置及應(yīng)用程序說(shuō)明

1 處理器的資源分配

存儲(chǔ)器

  at91fr40162內(nèi)嵌一個(gè)256kb的sram,1024k個(gè)16位字組成的flash存儲(chǔ)器。sram通過(guò)內(nèi)部32位數(shù)據(jù)總線與arm核相連,單周期訪問(wèn),flash存儲(chǔ)器則通過(guò)外部總線訪問(wèn)。

系統(tǒng)外圍

  ebi:外部總線控制接口,ebi可尋址64mb的空間,通過(guò)8個(gè)片選線(ncs0~ncs3獨(dú)立)和24位地址線訪問(wèn)外設(shè),地址線高4位與片選線(ncs4~7)復(fù)用,數(shù)據(jù)總線可配置成8/16位兩種模式與外設(shè)接口。

  pio:并口控制器,pio控制32根i/o線,多數(shù)為復(fù)用引腳,可通過(guò)編程選擇為通用或?qū)?

相關(guān)IC型號(hào)

熱門點(diǎn)擊

 

推薦技術(shù)資料

自制經(jīng)典的1875功放
    平時(shí)我也經(jīng)常逛一些音響DIY論壇,發(fā)現(xiàn)有很多人喜歡LM... [詳細(xì)]
版權(quán)所有:51dzw.COM
深圳服務(wù)熱線:13692101218  13751165337
粵ICP備09112631號(hào)-6(miitbeian.gov.cn)
公網(wǎng)安備44030402000607
深圳市碧威特網(wǎng)絡(luò)技術(shù)有限公司
付款方式


 復(fù)制成功!