999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

異構CAN 總線節點通信系統設計

2022-08-15 06:36:08李樹鳳王志琳劉新月
天津職業技術師范大學學報 2022年2期
關鍵詞:單片機設置系統

郝 彬,李樹鳳,王志琳,劉新月

(1.天津職業技術師范大學電子工程學院,天津 300222;2.科信達通(天津) 科技發展有限公司,天津 300101)

CAN(controller area network)[1]總線獲得了業界的認可,其應用場景也從汽車領域[2-3]延伸至工業自動化[4]、船舶、醫療設備[5]、工業設備[6-7]等領域,用途十分廣泛。在我國北方,大棚種植瓜果、蔬菜是廣大農民發展多種經營、增加經濟收入的重要手段。在大棚技術[8]管理方面涉及的內容很多,主要有光照、溫度、病蟲害、防霜凍等。在北方的冬季,氣溫較低,為了保持大棚內的溫度,防止凍害,往往要在塑料薄膜上覆蓋一層或多層草苫,這樣雖可起到保溫的作用,但會影響光照作用。而有時雖然不需要覆蓋草苫,但是受到北方霧霾、陰雪天氣的影響,也會影響大棚內作物的采光種植,所以為大棚內植物提供充足的光照是一項重要的技術問題。為實現大棚內照明,目前大多采用LED 照明光源[9],在大棚內進行多點布設。針對各LED照明節點,本文研究了基于CAN 總線互聯的多照明節點的連接和控制方式,并分析了采用不同控制芯片的CAN 照明節點的互聯問題。

1 系統設計

CAN 總線的物理連接只需2 根線,常記為CAN_H和CAN_L,通過差分信號進行傳輸。CAN 總線網絡是一種真正的多主機網絡,其網絡拓撲如圖1 所示。

圖1 CAN 通信系統拓撲圖

在總線處于空閑狀態時,任何一個節點單元都可以申請成為主機,向總線發送消息。最先訪問總線的節點單元可以獲得總線的控制權;多個節點單元同時嘗試獲取總線的控制權時,將發生仲裁事件,只有優先級高的節點單元能獲得總線的控制權。

CAN 總線的通信速率和總線長度有關,在總線長度小于40 m 的場合中,數據傳輸速率可以達到1 Mbps,而即使總線長度達到1 000 m,數據傳輸速度仍可達到50 kbps,明顯優于RS232 和RS485 等通信方式。CAN 總線上的節點數理論上沒有上限,但在實際中受到總線上的時延以及電氣負載的限制,這種傳輸距離完全可以滿足大棚內的布線要求。

由圖1 可知,每個通信節點由微控制器、CAN 控制器、CAN 收發器3 部分組成。在構造CAN 總線通信節點時,可以選擇不同廠家的微控制器、CAN 控制器和CAN 收發器。目前,市場上具有代表性的CAN 控制器有恩智浦公司的SJA1000,在CAN 收發器方面,有恩智浦公司的PCA82C250 和TJA1050。為提升產品的綜合性能,很多微控制器廠商提供集成了CAN 控制器的MCU 產品,如意法半導體(ST)公司的STM32F103系列的32 位微控制器,恩智浦公司的P87C591 系列的8 位單片機等。

在一個CAN 總線網絡中采用完全一致的CAN 節點設計無疑是最為方便的方案,但由于功能、成本或其他方面因素的考慮,在同一個CAN 總線網絡上,各CAN 節點會采用不同的實現方案。這時就必須解決異構CAN 節點的互聯互通問題。本文以照明控制應用為案例,從實用角度出發,闡述異構CAN 節點間實現互聯互通時所涉及的主要技術問題。

2 節點電路實現方式

在本文設計的照明控制系統中,CAN 網絡由一個主節點和多個從節點組成。主節點負責多點數據采集和信息顯示,采用意法半導體(ST)的32 位STM32F103作為控制器[10-11],STM32F103 微控制器內置了bx(basic extended)CAN 控制器,集成度高。各從節點主要功能是負責區域內的照度信號檢測,以及控制一組LED 照明燈的光照強度調節。出于項目的繼承性和成本方面的考慮,各子節點采用宏晶科技(STC)的STC89C52RC的8 位51 單片機作為節點控制器,實現節點控制和CAN 通信功能。相應的節點框圖如圖2 所示。

圖2 CAN 通信系統拓撲圖

2.1 STM32控制的CAN節點

在硬件上,STM32F103 內部集成一個bxCAN 控制器。bxCAN 控制器支持2.0A 和2.0B 的CAN 協議,只需外接1 個CAN 收發器TJA1050,即可滿足CAN 通信的硬件要求。硬件電路如圖3 所示。

圖3 STM32F103 控制的CAN 節點電路圖

由圖3 可知,STM32F103 的bxCAN 協議控制器的發送引腳(CAN_TX)為PA12,接收引腳(CAN_RX)為PA11,與CAN 收發器TJA1050 對應的串行數據輸出TXD 和串行數據輸入RXD 相連。TJA1050 通過其2 個有差動接收和發送能力的總線終端CANH 和CANL 連接到CAN 總線網絡。

2.2 STC89C52RC控制的CAN節點

STC89C52RC 是一款功能單一的傳統8 位51單片機,如要實現CAN 總線通信功能需外擴獨立的CAN 總線控制器和收發器,如圖2 所示。在實際應用中,CAN 控制器選用SJA1000[12],收發器采用PCA82C250,二者均為恩智浦公司的產品。SJA1000 是一款獨立的CAN 控制器,支持CAN2.0 協議的新特性。其地址/數據復用總線AD0-AD7 與STSTC89C52RC的P0 口相連,做為單片機的外部存儲器擴展應用。ALE、RD、WR 引腳與單片機的對應引腳連接,控制讀寫數據操作,完成數據和地址通信。片選端CS 連接到單片機的P2.0,片選信號低電平有效。復位端RST 由單片機的P2.3 控制。SJA1000 的16 腳MODE 端接高電平選擇INTEL 模式。SJA1000 的16 腳是中斷信號輸出,接到STSTC89C52RC 的INT1,使單片機以中斷方式接收CAN 總線的數據。XTAL1 和XTAL2 共2 個引腳接16 MHz 的晶體,為SJA1000 數據的發送以及校驗等功能提供時鐘。

SJA1000 的TX0、RX0 連接到CAN 收發器PCA82-C250 的對應引腳,數據幀就可以傳送到總線上。由于控制器和收發器都需要外擴,故與STM32 相比,STC89C52RC 實現的CAN 節點硬件電路要復雜一些。

3 節點波特率

在完成了硬件設計后,具體通信功能要依靠軟件來實現。同其他串行通信方式一樣,CAN 總線在通信時,各節點要具有相同的波特率。

3.1 STM32控制的CAN節點波特率設置

CAN 總線的數據傳輸速率由波特率決定,它是指發送單元在非同步狀態下發送的每秒位數,也稱為位速率。標準的CAN 協議的一個位可分為4 個段:同步段(SS)、傳播時間段(PTS)、相位緩沖段1(PBS1)和相位緩沖段2(PBS2)。而每個段又由若干個被稱為最小時間單位tq構成。STM32 將傳播時間段和相位緩沖段1 合并為1 個PSB1。同步段的時長為1 個tq,相位緩沖段1 和相位緩沖段2 的時長為tq的整數倍。正常的位時間是上述3 段的時長之和。STM32 的位時序如圖4所示。

圖4 bxCAN 的位時序圖

通信波特率是正常位時間的倒數。參見文獻[6],正常位時間=1×tq+tBS1+tBS2,其中,tq=(BRP[9 ∶0]+1)×tPCLK,tBS1=tq×(TS1[3 ∶1]+1),tBS2=tq×(TS2[2 ∶0]+1),tPCLK是APB1 總線的時鐘周期。BRP [9 ∶0],TS1[3 ∶1],TS2[2 ∶0]均在CAN 位時間寄存器(CAN_BTR)中定義。通信波特率計算式為

若取APB1 的時鐘頻率為36 MHz,BRP[9 ∶0] =47,TS1[3 ∶1]=2,TS2[2 ∶0]=1,則可計算出波特率為125 kbps,即為應用實例使用的波特率。

3.2 STC89C52RC節點波特率設置

由51 單片機控制的CAN 節點是通過STC89C52RC設置CAN 控制器SJA1000 的相應寄存器來實現的。在SJA1000 中CAN 總線的位時間采用了與STM32 相類似的描述方式,因是不同廠家的產品,故使用了不同的稱謂。在SJA1000 中,位時間的最小單位稱為CAN 系統時鐘周期,用Tscl表示,對應STM32 中的tq。每一位也是由同步段、時間段1、時間段2 組成,分別用Tsyncseg、Tseg1、Tseg2表示,與STM32 中的同步段、相位緩沖段1 和相位緩沖段2 對應。

由于CPU 的架構不同,具體的寄存器設置方式也不同,這是實現CAN 總線通信的關鍵技術細節。CAN系統時鐘周期為

式中:BRP.5 是總線定時器(BTR0)中BRP.5 位的設置狀態,只有0 或1 這2 種可能;第BRP.4 位、BRP.3 位、BRP.2 位、BRP.1 位和BRP.0 位的設置狀態一并代入式(2)計算;Tclk是SJA1000 外部晶振的頻率周期,使用16 M 外部晶振。

在SJA1000 中,3 個段的計算式為

式(4)中,Tseg1.3、Tseg1.2、Tseg1.1、Tseg1.0 是總線定時器(BTR1)中對應的位設置,式(5)中Tseg2.2、Tseg2.1、Tseg2.0也是總線定時器(BTR1)中對應的位設置。

在SJA1000 中

在應用實例中,設置總線定時器0 預設值0x03,即BRP0=0x03,即BRP.1 和BRP.0 為1,其余位為0。由式(2)可計算出CAN 系統時鐘周期Tscl=2×(2+1+1)/16 M。

總線定時器(BTR1)的設置值0x1C,即BTR1 =0x1C,即Tseg1.3=1,Tseg1.2=1,Tseg2.0=1,其他位為0,相應可以計算出Tseg1= Tscl×(8 + 4 + 1)=13Tscl,Tseg2=Tscl×(1+1)=2Tscl,將其代入式(6)得

位時間=Tsyncseg+Tseg1+Tseg2=16×Tscl

波特率=1/(16×Tscl)=125 kbps

與前述STM32 設置的通信速率保持一致。

STC89C52RC 對SJA1000 的訪問是按照外部存儲器方式來實現的,所以訪問的基地址即為0xFE00,地址范圍0xFE00~0xFFFF,采用宏定義語句#define SJA_BASE_ADR0xFE00,定義該基地址后,對SJA1000 的存儲器的方式就是在該基地址基礎上加上相應的偏移量,如發送緩沖區的第1 個字節位于第17 個寄存器,其地址為#defineSJA_RBSR0XBYTE[SJA_BASE_ADR+0x10]。

針對STC89C52RC 控制節點按照上述波特率設置方式對SJA1000 進行軟件編程,保證主、從節點使用的波特率相同,即可實現51 單片機控制的各個從節點與STM32 控制的主節點的數據通信,從而構建基于CAN 總線的多節點照明系統。

4 驗證系統搭建

依據上述方案,項目組搭建了1 個主節點和3 個從節點的演示驗證系統。主控節點采用STM32F103RBT6芯片,如圖5(a)所示,從節點采用STC89C52RC 單片機控制,由于與從節點配套的CAN 控制器SJA1000是一個單獨芯片,故采用了模塊化設計,單獨設計了一個小印制板,采用插卡式安裝,如圖5(b)所示。

圖5 演示驗證系統

這種設計方案既方便維修,又利于系統的升級換代。如在系統小型化設計時,需要將插裝的單片機芯片改為貼片設計,只需重新設計上部的主控板。演示驗證系統中,主、從節點CAN 總線通信波特率均設置為125 kbps,可實現主節點對從節點的光照強度控制及各從節點的狀態輪詢。為降低節點成本,照明節點采用價格較低的LED 燈頭作為照明光源,LED 燈頭的供電驅動為自主設計的LED 驅動板,驅動芯片使用AMC7150,而照明燈頭直接采購市場上現成的產品。

5 結 語

本文設計實現了采用不同主控芯片,通過CAN 總線通信,實現多LED 照明節點控制系統。主節點功能為多點數據采集和信息顯示,采用意法半導體(ST)的32 位STM32F103 作為控制器,內置了bxCAN 控制器。從節點采用低價的STC89C52RC 單片機,需外擴款獨立的CAN 控制器SJA1000。根據上述方案,本文搭建1 個主節點和3 個從節點的演示驗證系統。所有節點CAN 總線通信波特率均設置為125 kbps,可實現節點間通信控制。系統采用的異構CAN 節點通信技術,也可用于其他通信網絡中,具有一定的應用推廣價值。

猜你喜歡
單片機設置系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
中隊崗位該如何設置
少先隊活動(2021年4期)2021-07-23 01:46:22
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于單片機的SPWM控制逆變器的設計與實現
電子制作(2019年13期)2020-01-14 03:15:28
基于單片機的層次漸變暖燈的研究
電子制作(2019年15期)2019-08-27 01:12:10
基于單片機的便捷式LCF測量儀
電子制作(2019年9期)2019-05-30 09:42:02
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
本刊欄目設置說明
中俄臨床醫學專業課程設置的比較與思考
主站蜘蛛池模板: 无码'专区第一页| 中文字幕在线一区二区在线| 成人精品免费视频| 国产理论最新国产精品视频| 亚洲h视频在线| 国产区成人精品视频| 欧美午夜小视频| 国产成人精品在线| 欧美人人干| 国产精彩视频在线观看| 人妻中文久热无码丝袜| 亚洲国产精品无码AV| 国产成人喷潮在线观看| 超清无码一区二区三区| 欧美a√在线| 真人高潮娇喘嗯啊在线观看| 亚洲中文字幕av无码区| 视频在线观看一区二区| 免费看的一级毛片| 国产欧美专区在线观看| 国产一级毛片高清完整视频版| 欧美 亚洲 日韩 国产| 国产成人AV综合久久| 在线99视频| 国产高清又黄又嫩的免费视频网站| 亚洲欧美天堂网| 国产欧美日韩va另类在线播放 | 99er这里只有精品| 久久精品中文字幕少妇| 欧美成人午夜在线全部免费| 久久毛片网| 国产手机在线小视频免费观看 | 欧美国产精品不卡在线观看| 四虎成人精品| 国产国产人成免费视频77777| 国产肉感大码AV无码| 国产精品无码影视久久久久久久| 欧美精品色视频| 波多野结衣一区二区三视频| 国产成人AV男人的天堂| 国产成人精品2021欧美日韩| 日韩av无码精品专区| 日韩第一页在线| 看国产毛片| 国产欧美日韩一区二区视频在线| 午夜视频免费试看| 欧美一区二区自偷自拍视频| 亚洲视频a| 亚洲黄色高清| 国产69精品久久| 中文字幕在线播放不卡| 国产精品久久久久婷婷五月| 精品无码一区二区在线观看| 99热这里只有精品久久免费| 亚洲国产精品VA在线看黑人| 国产在线八区| 国产成人禁片在线观看| 99久久精品无码专区免费| 午夜性刺激在线观看免费| 69精品在线观看| 啪啪免费视频一区二区| 在线一级毛片| 成年免费在线观看| 亚洲国产日韩在线成人蜜芽| 日韩欧美综合在线制服| 亚洲国产日韩在线成人蜜芽| 午夜国产精品视频| 久久青草热| 国产在线麻豆波多野结衣| 久久香蕉国产线看观看亚洲片| 色综合色国产热无码一| 91久久性奴调教国产免费| 伊人丁香五月天久久综合| 99人妻碰碰碰久久久久禁片| 免费精品一区二区h| 国产一区二区三区免费| 亚洲中文在线视频| 精品国产香蕉在线播出| 欧美乱妇高清无乱码免费| 欧美日韩专区| 亚洲首页国产精品丝袜| 中文字幕免费在线视频|