www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 通信技術(shù) > 通信技術(shù)
[導(dǎo)讀]CAN總線是當(dāng)前應(yīng)用最為廣泛的現(xiàn)場總線之一,而RS-485總線則是常用的串行總線,兩者之間的相互轉(zhuǎn)換具有很高的實用價值。本文設(shè)計的CAN-RS485通信接口電路能夠很好地解決這兩種串行數(shù)據(jù)總線之間的相互轉(zhuǎn)換問題,并已成功應(yīng)用于某地區(qū)的智能交通控制系統(tǒng)。

1  CAN總線RS-485總線簡介
  CAN總線(Controller Area Network)是由德國Bosch公司于20世紀(jì)80年代專門為汽車電子控制系統(tǒng)開發(fā)的一種串行數(shù)據(jù)通信協(xié)議,特別適合應(yīng)用于分布式控制或?qū)崟r控制領(lǐng)域。它的應(yīng)用范圍遍及高速網(wǎng)絡(luò)和低成本的分布式控制系統(tǒng)。CAN具有以下特點:
  (1) 無破壞的依據(jù)優(yōu)先權(quán)的仲裁;
  (2) 多主站點依據(jù)優(yōu)先級進(jìn)行總線訪問;
  (3) 嚴(yán)格的錯誤檢測和界定;
  (4) 支持遠(yuǎn)程數(shù)據(jù)請求;
  (5) 借助接收濾波的多地址幀傳送;
  (6) 通信介質(zhì)多樣,組合方式靈活;
  (7) 全系統(tǒng)數(shù)據(jù)兼容,系統(tǒng)靈活;
  (8) 最遠(yuǎn)傳輸距離為10Km(總線傳輸速率為5kbps), 最大傳輸速率為1Mbps(總線傳輸距離為40m)。
  RS-485標(biāo)準(zhǔn)是美國EIA(電子工業(yè)聯(lián)合會)公布的串行通信協(xié)議。它比RS-232C標(biāo)準(zhǔn)信號傳輸距離長、速度快、抗干擾性能好,廣泛應(yīng)用于各種工業(yè)、樓宇、能源等領(lǐng)域。在實際應(yīng)用中,許多工業(yè)控制設(shè)備(如PLC)都帶有RS-485接口。因此,有必要設(shè)計CAN總線與 RS-485總線的通信接口電路。
  2  硬件設(shè)計
  整個通信接口電路由單片機(jī)AT89C52、CAN控制器SJA1000、CAN收發(fā)器82C250、高速光電耦合器6N137和RS-485收發(fā)器MAX485組成。如圖1所示。單片機(jī)AT89C52主要完成SJA1000的初始化,及CAN總線 和RS-485總線之間的數(shù)據(jù)通信任務(wù)。SJA1000是CAN控制器82C200的替代產(chǎn)品。它主要由下列功能模塊構(gòu)成:接口管理邏輯、發(fā)送緩沖器、接收緩沖器、接收過濾器、位流處理器、位時序邏輯和錯誤管理邏輯。除了與82C200兼容之外,它增加了許多新功能:PeliCAN工作模式、讀/寫訪問的錯誤計數(shù)器、標(biāo)準(zhǔn)和擴(kuò)展結(jié)構(gòu)信息的接收和發(fā)送、可編程的錯誤限制報警、只聽模式和仲裁丟失中斷。單片機(jī)對SJA1000內(nèi)部寄存器的控制是以訪問外部寄存器的方式進(jìn)行的。CAN收發(fā)器82C250是CAN總線控制器和物理總線之間的接口,主要負(fù)責(zé)提供對總線的差分發(fā)送能力和對CAN控制器的差分接收能力。它的引腳8(RS)控制3種不同的工作方式的選擇:待機(jī)、斜率控制和高速。
  (1) 給RS接上高電平,則82C250以低電流待機(jī)方式工作;
  (2) 若RS通過連接電阻接地,則進(jìn)入斜率控制方式,該方式可以通過改變電阻的阻值來調(diào)節(jié)斜率,適用于低速和較短的總線長度的應(yīng)用場合;
  (3) 如果RS接地,就選擇了高速工作方式。高速光電耦合器6N137實現(xiàn)了CAN控制器和收發(fā)器之間的電氣隔離,增強(qiáng)了系統(tǒng)的穩(wěn)定性和抗干擾能力。RS-485收發(fā)器MAX485是一種差分平衡型的小功率收發(fā)器,包含一個驅(qū)動器和一個接收器,使用單+5V電源供電,專門用于TTL協(xié)議(即通用于各型CPU的通信協(xié)議)和485標(biāo)準(zhǔn)之間的相互轉(zhuǎn)換,使微控制器可以利用RS-485串行通信協(xié)議直接進(jìn)行串行通信。
  整個轉(zhuǎn)換過程可分為:CAN總線轉(zhuǎn)換到RS-485總線和RS-485總線轉(zhuǎn)換到CAN總線。CAN總線轉(zhuǎn)換到RS-485總線的流程如下:微控制器接收到CAN總線節(jié)點發(fā)送的報文,根據(jù)CAN總線規(guī)定的數(shù)據(jù)格式取出報文的有用信息,然后由微控制器通過MAX485將信息發(fā)送到RS-485總線。而RS-485總線轉(zhuǎn)換到CAN總線則是上述流程的逆過程。

 

 

3  軟件設(shè)計
  軟件設(shè)計的主要任務(wù)是實現(xiàn)數(shù)據(jù)和控制命令在CAN總線網(wǎng)絡(luò)和RS-485總線之間的傳輸。它主要包括RS-485和CAN接口的初始化程序、報文發(fā)送和接收程序、中斷服務(wù)程序和錯誤處理程序等。其中,SJA1000的初始化程序是軟件設(shè)計中的難點,需要完成各種工作參數(shù)的設(shè)置。其中,控制寄存器用來改變CAN控制器的行為,包括進(jìn)入復(fù)位狀態(tài),激活不同類型的中斷源,如接收中斷、發(fā)送中斷和數(shù)據(jù)溢出中斷等。驗收代碼寄存器和驗收屏蔽寄存器共同作用定義了能被節(jié)點所接收報文的條件:所收信息的標(biāo)識符的相應(yīng)位與驗收代碼寄存器驗收碼的相應(yīng)位相等。 驗收屏蔽寄存器的作用是確定驗收碼的哪些位對于驗收濾波是相關(guān)的或不相關(guān)的??偩€時序寄存器0定義了波特率的預(yù)設(shè)值及同步跳轉(zhuǎn)寬度;總線時序寄存器1則定義了位周期的長度、采樣點的位置和采樣數(shù)目。輸出控制寄存器可以設(shè)置不同的輸出模式(如正常輸出模式、雙相輸出模式和時鐘輸出模式等)。時鐘分頻寄存器不僅可以控制SJA1000的輸出頻率及屏蔽CLKOUT引腳,而且還能夠?qū)asic CAN和Peli CAN模式進(jìn)行選擇。具體的SJA1000初始化程序流程如圖2所示。
  CAN總線轉(zhuǎn)換到RS-485總線的程序如下:

CAN-RS485_TR

ANSITION: 
  MOV DPTR, #SR; 狀態(tài)寄存器
  MOVX A, @DPTR;
  JNB ACC.0, CAN_QUIT; 
  是否接收到信息,無數(shù)據(jù)則退出轉(zhuǎn)換程序
  CAN-RS485_HANDLE:
  MOV DPTR, #CANR ;接收緩沖區(qū)首地址 
  MOVX A , @DPTR   ;接收幀的格式
  JNB ACC.6 , RECEIVE _ FRAME
  ;RTR=1則報文是遠(yuǎn)程請求幀 
  LCALL TRANSMIT_ DATA  
  ;發(fā)送對方請求的數(shù)據(jù)
  LJMP  CAN_QUIT  ;退出轉(zhuǎn)換程序
  RECEIVE_ FRAME: MOVX A, @DPTR; 
  ANL A, #0FH;
  ADD A, #05H
  ;獲得接收數(shù)據(jù)的長度
  MOV R7, A
  MOV R0,#43H
  ;設(shè)定MCU接收數(shù)據(jù)緩沖區(qū)
  DATAFRAME:  MOVX A, @DPTR
  
 ;接收數(shù)據(jù)
  MOV @R0, A   
  LCALL  RS485_SEND ;將有效信息通過MAX485轉(zhuǎn)發(fā)到RS-485總線     
  INC DPTR
  INC R0
  DJNZ R7, DATAFRAME ;判斷接收是否結(jié)束
  RECOUT:      MOV DPTR, #CMR
  MOV A, #04H
  ;釋放接收緩沖區(qū)
  MOVX @DPTR, A
  CAN_QUIT:  RET ;退出轉(zhuǎn)換程序


 

4  結(jié)束語
  CAN總線是當(dāng)前應(yīng)用最為廣泛的現(xiàn)場總線之一,而RS-485總線則是常用的串行總線,兩者之間的相互轉(zhuǎn)換具有很高的實用價值。本文設(shè)計的CAN-RS485通信接口電路能夠很好地解決這兩種串行數(shù)據(jù)總線之間的相互轉(zhuǎn)換問題,并已成功應(yīng)用于某地區(qū)的智能交通控制系統(tǒng)。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

汽車電子系統(tǒng)架構(gòu)發(fā)生了顛覆性變化。它已經(jīng)持續(xù)了近十年,現(xiàn)在正在加快速度。這主要發(fā)生在 BEV 初創(chuàng)公司中,因為它們沒有歷史限制或根深蒂固的喜愛設(shè)計,并且可以從電子架構(gòu)的零基礎(chǔ)開始。

關(guān)鍵字: CAN總線 電動汽車

在電子產(chǎn)品的設(shè)計中,電磁兼容EMC性能對系統(tǒng)的影響非常大,關(guān)系到其能正常穩(wěn)定運(yùn)轉(zhuǎn)。世界上已經(jīng)開始對電子產(chǎn)品的電磁兼容性做強(qiáng)制性限制,電磁兼容性能已經(jīng)成為產(chǎn)品性能的一個重要指標(biāo)。 電磁兼容主要有兩方面的內(nèi)容,一個是產(chǎn)...

關(guān)鍵字: CAN總線 電磁兼容EMC

CAN 是Controller Area Network 的縮寫(以下稱為CAN),是ISO國際標(biāo)準(zhǔn)化的串行通信協(xié)議。在汽車產(chǎn)業(yè)中,出于對安全性、舒適性、方便性、低功耗、低成本的要求,各種各樣的電子控制系統(tǒng)被開發(fā)了出來。...

關(guān)鍵字: CAN總線 CAN 抗噪

CAN總線首先在汽車上得到了廣泛應(yīng)用,之后又在工業(yè)生產(chǎn)領(lǐng)域有了很大發(fā)展,那么面對不同的應(yīng)用場景和工況,如何選擇合適的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)慢慢成為一個讓人頭疼的問題。在這篇文章中,我將重點介紹用于驅(qū)動這些總線電壓的 CAN 驅(qū)動器...

關(guān)鍵字: CAN總線 CAN總線拓?fù)?/a>

今天,小編將在這篇文章中為大家?guī)碇悄軅鞲衅鞯挠嘘P(guān)報道,通過閱讀這篇文章,大家可以對智能傳感器具備清晰的認(rèn)識,主要內(nèi)容如下。

關(guān)鍵字: 智能傳感器 物聯(lián)網(wǎng) 通信接口

智能傳感器將是下述內(nèi)容的主要介紹對象,通過這篇文章,小編希望大家可以對它的相關(guān)情況以及信息有所認(rèn)識和了解,詳細(xì)內(nèi)容如下。

關(guān)鍵字: 智能傳感器 通信接口 傳感器

在進(jìn)行CAN總線通信前,應(yīng)保證正確的總線配置,比如終端電阻。它是影響總線通信的重要組件,下面我們不考慮信號的完整性,只從信號幅度和時間常數(shù)方面分析不加終端電阻時的影響。??終端電阻添加要求根據(jù)ISO11898-2對終端電...

關(guān)鍵字: 電阻 終端 CAN總線 電平

大家好,我是小麥。最近在調(diào)試一個CAN總線的設(shè)備遇到一些問題,簡單總結(jié)一下。本文會對CAN總線進(jìn)行簡單介紹,CAN的硬件鏈路層,協(xié)議層,以及調(diào)試的一些心得。目錄什么是CAN總線?物理層差分信號連接方式CAN節(jié)點CAN協(xié)議...

關(guān)鍵字: CAN總線

大家好,我是小麥。最近在調(diào)試一個CAN總線的設(shè)備時遇到了一些問題,在此簡單總結(jié)一下。本文將對CAN總線進(jìn)行簡單介紹,包括CAN的硬件鏈路層、協(xié)議層,以及調(diào)試的一些心得。目錄什么是CAN總線?物理層差分信號連接方式CAN節(jié)...

關(guān)鍵字: CAN總線

摘 要 :視頻監(jiān)控系統(tǒng)是計算機(jī)應(yīng)用中的重要領(lǐng)域之一。數(shù)字化攝像頭網(wǎng)絡(luò)化之后,監(jiān)控系統(tǒng)正在不斷引入新的功能,為使現(xiàn)有監(jiān)控系統(tǒng)能更好地應(yīng)對復(fù)雜環(huán)境,滿足不同監(jiān)控要求,就需要追加新功能,在系統(tǒng)架構(gòu)與設(shè)計上進(jìn)行調(diào)整。因此,如何將...

關(guān)鍵字: 智能監(jiān)控 系統(tǒng)架構(gòu) 模塊化設(shè)計 接口設(shè)計 數(shù)據(jù)傳輸 深度相機(jī)

通信技術(shù)

120595 篇文章

關(guān)注

發(fā)布文章

編輯精選

技術(shù)子站

關(guān)閉