<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于AT89C52的CAN總線分布式測(cè)控系統(tǒng)的研制

          基于AT89C52的CAN總線分布式測(cè)控系統(tǒng)的研制

          作者: 時(shí)間:2012-02-20 來源:網(wǎng)絡(luò) 收藏


          收發(fā)器

          收發(fā)器選用PCA82C250作為總線收發(fā)器。PCA82C250是CAN協(xié)議控制器和物理總線之間的接口。82C250可以為總線提供不同的發(fā)送性能,為CAN控制器提供不同的接收性能。而且它與“ISO11898”標(biāo)準(zhǔn)完全兼容。PCA82C250的目的是為了增大通信距離,提高系統(tǒng)的瞬間抗干擾能力,保護(hù)總線,降低射頻干擾(RFI)實(shí)現(xiàn)熱防護(hù)等。為了進(jìn)一步提高抗干擾措施,在兩個(gè)CAN器件之間使用了由高速隔離器件6N137構(gòu)成的隔離電路。CAN器件與微處理器的硬件連接如圖2所示。

          硬件電路的設(shè)計(jì)并不太困難,但有幾點(diǎn)應(yīng)引起注意:

          總線兩端兩個(gè)120Ω的電阻,對(duì)于匹配總線阻擾,起著相當(dāng)重要的作用。忽略掉它們,會(huì)使數(shù)據(jù)通信的抗干擾性及可靠性大大降低,甚至無法通信。

          82C50第8腳與地之間的電阻Rs稱為斜率電阻,它的取值決定了系統(tǒng)處于高速工作方式還是斜率控制方式。把該引腳直接與地相連,系統(tǒng)將處于高速工作方式,在這種方式下,為避免射頻干擾,建議使用屏蔽電纜作總線;而在波特率較低、總線較短時(shí),一般采用斜率控制方式,上升及下降的斜率取決于民的阻值,實(shí)驗(yàn)數(shù)據(jù)表明15~200kΩ為Rs較理想的取值范圍,在該方式下,可以使用平行線或雙絞線作總線。

          SJA1000的TX1腳懸空,RX1引腳的電位必須維持在約0.5Vcc上,否則,將不能形成CAN協(xié)議所要求的電平邏輯。如果系統(tǒng)傳輸距離近,環(huán)境干擾小,可以不用電流隔離,這樣可直接把82C250的VREF端(約為0.5Vcc)與RX1腳相連,從而簡(jiǎn)化了電路。

          在系統(tǒng)中,SJA1000的片選信號(hào)一般由地址總線經(jīng)譯碼獲得,并由此決定出CAN控制器各寄存器的地址。實(shí)際應(yīng)用中,采用單片機(jī)的P2.7為片選信號(hào)。所以,SJA1000的地址為:7F00~7F32H。

          當(dāng)上電復(fù)位時(shí),的上電復(fù)位,需要從低到高的電平變化來激活,而SJA1000的17腳RST被激活,需要出現(xiàn)一個(gè)由高電平到低電平的跳變,因此,這必須加一個(gè)反相器。

          (2)數(shù)據(jù)采集模塊

          數(shù)據(jù)采集模塊用來將各類傳感器的數(shù)據(jù)傳送到上。整個(gè)電路包括:看門狗X5045,單片機(jī)89C52,鎖存器74LS373,A/D轉(zhuǎn)換器ADC0809以及CAN控制器SJA1000和收發(fā)器82C250。電路板如圖3。



          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();