女人被狂躁到高潮视频免费无遮挡,内射人妻骚骚骚,免费人成小说在线观看网站,九九影院午夜理论片少妇,免费av永久免费网址

當(dāng)前位置:首頁 > 通信技術(shù) > 通信技術(shù)
[導(dǎo)讀]引言 在嵌入式系統(tǒng)中,多個孤立節(jié)點之間的通信越來越重要,尤其是物聯(lián)網(wǎng)時代的到來,多節(jié)點間通信已經(jīng)成為必不可少的功能。由此出現(xiàn)了許多通信手段,如RS-232、RS-485、CAN總線、ZigBee等,綜合考慮性能和成本,

引言
    在嵌入式系統(tǒng)中,多個孤立節(jié)點之間的通信越來越重要,尤其是物聯(lián)網(wǎng)時代的到來,多節(jié)點間通信已經(jīng)成為必不可少的功能。由此出現(xiàn)了許多通信手段,如RS-232、RS-485、CAN總線、ZigBee等,綜合考慮性能和成本,RS-485通信無疑是性價比最高的通信方式。因此探究高效、實用的多機通信方案具有重大的意義。

1 系統(tǒng)框圖
   
RS-485多機通信結(jié)構(gòu)圖如圖1所示。若干個RS-485節(jié)點通過總線連接,由網(wǎng)關(guān)節(jié)點輪詢訪問索要數(shù)據(jù),每個網(wǎng)關(guān)節(jié)點可以動態(tài)地配置IP地址,以便上位機可以通過以太網(wǎng)控制網(wǎng)關(guān)節(jié)點,從而獲得每個RS-485終端節(jié)點的數(shù)據(jù)。圖1中C節(jié)點為控制節(jié)點,具有RS-485通信功能,T節(jié)點為網(wǎng)關(guān)節(jié)點,除了RS-485功能外,還具有以太網(wǎng)功能,其作用就是將C節(jié)點的數(shù)據(jù)通過以太網(wǎng)功能傳送給上位機。



2 硬件設(shè)計
   
本文采用新唐科技公司的Cortex-M054探究RS-485多機通信協(xié)議。Cortex-M054有兩個UART,均可以配置成RS-485模式,此時Cortex-M054通過RTSX引腳自動控制RS-485通信方向。
    RS-485通過差分傳輸,A和B兩根信號線鉸鏈在一起來抵消各自的干擾。當(dāng)A、B信號的電壓差大于200mV時,視為邏輯1;當(dāng)B、A信號的電壓差大于200 mV時,視為邏輯0。
    RS-485硬件原理圖如圖2所示。整套RS-485電路獨立供電,通過光電耦合器TLP781B+,與系統(tǒng)其他部件分開,以此來隔離干擾。和CAN總線相同,在機群的兩端(第一個節(jié)點和最后一個節(jié)點),必須加上匹配電阻,吸收反射信號,大小為75 Ω左右。中間節(jié)點則不需要如此,因此留出了R1的位置,當(dāng)節(jié)點位于機群兩端的時候,則焊接上R1,這種方式大大地增強了電路的靈活性。


    考慮電路的安全性,添加了TVS管,從而達(dá)到抗雷擊的效果。熱敏電阻相當(dāng)于自恢復(fù)的保險絲,當(dāng)電流過大時,它的阻值會變大,起到保護電路的作用。

3 軟件協(xié)議
3.1 協(xié)議格式
    Modbus協(xié)議按功能可以劃分為:地址碼、功能碼、數(shù)據(jù)碼、CRC校驗碼。而在RTU方式下,采用CRC循環(huán)冗余校驗,具體格式如圖3所示。


    Modbus協(xié)議長度根據(jù)用戶需求自己設(shè)定,地址碼標(biāo)識終端地址,即和網(wǎng)關(guān)節(jié)點通信的從機地址。功能碼則是主機告訴從機要執(zhí)行什么功能。數(shù)據(jù)碼長度由用戶自己確定,最后根據(jù)前3個功能字段,生成兩個字節(jié)的CRC校驗碼,用來驗證前面的字段是否存在傳輸錯誤。
3.2 CRC生成算法
    CRC算法分為靜態(tài)和動態(tài)兩種,靜態(tài)的適合片內(nèi)RAM非常有限的MCU,而動態(tài)的適合RAM空間相對比較寬裕的MCU。CRC校驗碼生成步驟如下:
    ①初始化寄存器內(nèi)容為0xffff。
    ②提取第一個字節(jié)數(shù)據(jù)和寄存器內(nèi)容相異或。
    ③檢測最低有效位(LSB),如果LSB為1,寄存器單獨和預(yù)置值異或;如果LSB為0,則不進(jìn)行任何操作,然后將結(jié)果向LSB方向移動,最高有效位以0填充。
    ④重復(fù)第③步8次,直到最后一位(第8位)完成。
    ⑤提取下一個8位字節(jié),重復(fù)步驟③、④的操作,等待所有字段都執(zhí)行完,最終寄存器中的值就是所求的CRC校驗碼。
    上述步驟中,如果預(yù)置值在整個過程中不變,則為靜態(tài)的CRC校驗;在動態(tài)的CRC校驗中,存在一個動態(tài)表,預(yù)置值每次都根據(jù)動態(tài)表變化,所以準(zhǔn)確性更高,而動態(tài)表要開辟一個較大的空間來存儲。所以,根據(jù)MCU的RAM大小決定使用動態(tài)校驗還是靜態(tài)校驗。算法結(jié)束后,寄存器中存人的就是前N個字節(jié)的CRC校驗碼,運用該算法,不需要事先知道協(xié)議的整體長度,最后都同樣生成兩個字節(jié)長度的校驗碼,故可移植性好、通用性強。
3.3 自動地址識別模式通信
   
自動地址識別模式是RS-485經(jīng)典模式,通過設(shè)置Cortex-M054的狀態(tài)寄存器,可使UART工作在此模式下。節(jié)點在接收到地址字節(jié)時,判斷地址字節(jié)數(shù)據(jù)是否與UA_ALT_CSR[ADDR_MATCH]值相匹配,如果匹配,表示網(wǎng)關(guān)節(jié)點要與此終端通信,故接收下面網(wǎng)關(guān)節(jié)點發(fā)送的所有數(shù)據(jù)字節(jié)。同時,地址字節(jié)和數(shù)據(jù)字節(jié)都會被存入UART的FIFO中,否則忽略所有字節(jié),既不產(chǎn)生中斷,也不存入FIFO,直到匹配。
    串口通信中由起始位、數(shù)據(jù)位、奇偶校驗位、停止位4部分組成。當(dāng)奇偶校驗位為0時,表示傳輸?shù)氖菙?shù)據(jù)字節(jié);當(dāng)它為1時,表示傳輸?shù)氖堑刂纷止?jié)。Cortex—M054的UA_ALT_CSR是一個32位的寄存器,其ADDR_MATCH用8位來表示,故自動地址識別模式最大從機數(shù)只支持256個節(jié)點。它的優(yōu)點是:由于RS-485所有從機掛載在一根總線上,故網(wǎng)關(guān)節(jié)點發(fā)送數(shù)據(jù)時,只有地址與自己匹配的節(jié)點才會響應(yīng),其他節(jié)點可以正常執(zhí)行自己原先的任務(wù)而不被打擾,系統(tǒng)整體效率高。缺點是從機只能被主機輪詢時才能發(fā)送信息,不能主動和主機通信;一個總線上只能掛載256個節(jié)點。
3.4 普通模式通信
   
普通模式可以配置為接收所有數(shù)據(jù),也可以選擇性地忽略數(shù)據(jù),直到接收到地址字節(jié)。為了更加靈活地利用協(xié)議通信,將其設(shè)置為接收所有數(shù)據(jù),即只要網(wǎng)關(guān)節(jié)點向總線發(fā)送數(shù)據(jù),那么總線上的所有節(jié)點都會收到數(shù)據(jù),再根據(jù)協(xié)議解析內(nèi)容執(zhí)行相應(yīng)的動作,接地流程圖如圖4所示。


    Cortex—M054內(nèi)部有4 KB的Data Flash給用戶存儲數(shù)據(jù),故將節(jié)點的地址存入Flash中。當(dāng)系統(tǒng)上電復(fù)位后,先從Flash中讀出節(jié)點的地址,存入全局變量address中。當(dāng)收到數(shù)據(jù)包之后,進(jìn)行CRC校驗,如果正確就接收,再根據(jù)協(xié)議解析地址地段,其值與address比較,以此判定此包是否屬于自己。
    自動地址識別模式是由芯片自動篩選地址,而此處需要軟件判斷。因此,地址長度可以由用戶自己設(shè)定。
3.4.1 數(shù)據(jù)混亂
   
上述方法存在數(shù)據(jù)混亂的隱患。如果網(wǎng)關(guān)節(jié)點與終端節(jié)點通信過程都是用N個字節(jié)進(jìn)行,那么不會出現(xiàn)數(shù)據(jù)紊亂問題。但若假設(shè)網(wǎng)關(guān)節(jié)點發(fā)送命令用N個字節(jié),而終端節(jié)點向網(wǎng)關(guān)節(jié)點回復(fù)數(shù)據(jù)時,用M(M>N)個字節(jié),此時總線上的其他終端節(jié)點都會收到這M個字節(jié)。此時,會認(rèn)為是網(wǎng)關(guān)節(jié)點發(fā)出的,所以只解析前N個字節(jié)的數(shù)據(jù),那么在FIFO中就剩下了(M—N)個字節(jié),即此時FIFO中并不為空。若網(wǎng)關(guān)節(jié)點此時再與其他任意一個終端節(jié)點通信時,程序會默認(rèn)先讀出殘留的(M—N)個字節(jié)數(shù)據(jù),就會造成數(shù)據(jù)紊亂,網(wǎng)關(guān)節(jié)點再難與其他節(jié)點正常通信。
    解決方法是在每次有數(shù)據(jù)進(jìn)入FIFO中后,觸發(fā)中斷,將所有的數(shù)據(jù)都讀出,而只解析前N個字節(jié)。因為在整個RS-485系統(tǒng)中,只有網(wǎng)關(guān)節(jié)點才能與終端節(jié)點通信,各個終端節(jié)點之間不可以通信,而網(wǎng)關(guān)節(jié)點與終端節(jié)點通信是N個字節(jié)。一次讀空FIFO的目的就是清空FIFO中的無效數(shù)據(jù)。
3.4.2 改進(jìn)型RS-485協(xié)議
   
RS-485通信的最大缺點就是主從式的通信方式,從機只有在收到主機的命令后才可以與之通信。而CAN總線的每個節(jié)點可以在任意時刻接收和發(fā)送數(shù)據(jù),通過其仲裁體制,避免數(shù)據(jù)沖突,但是CAN總線的成本相對較高,對于實時性和安全性要求不高的場合,不適宜用CAN總線通信。
    借鑒CSMA/CD協(xié)議,本文提出改進(jìn)型的通信方式。設(shè)置全局變量nesting,如果進(jìn)入一次RS-485中斷,則nesting加1。在終端需要向網(wǎng)關(guān)節(jié)點發(fā)送數(shù)據(jù)時,置nesting為0,延遲(address×10)ms;如果總線上沒有數(shù)據(jù)通信,nesting為0,此時節(jié)點可以主動向網(wǎng)關(guān)節(jié)點發(fā)送數(shù)據(jù);否則,表示總線上繁忙,則繼續(xù)延遲(address)ms。
    嘗試K次,K的大小根據(jù)用戶需求設(shè)定。若此終端節(jié)點已經(jīng)在網(wǎng)關(guān)節(jié)點的輪詢范圍之內(nèi),終端向網(wǎng)關(guān)發(fā)送的數(shù)據(jù)為緊急事件包,則K的值應(yīng)該盡量?。蝗糁鲃影l(fā)送失敗,可以等待節(jié)點被輪詢之時,再將此數(shù)據(jù)發(fā)送出去。若此終端節(jié)點不在網(wǎng)關(guān)節(jié)點的輪詢范圍之內(nèi),是新加入的節(jié)點,則主動發(fā)送信息的目的是告訴網(wǎng)關(guān),自己是新節(jié)點,需要加入總線系統(tǒng)中,此時K值應(yīng)該盡量大,以保證新節(jié)點能夠不在上位機的協(xié)助下,自動地加入總線系統(tǒng)中,提高系統(tǒng)的靈活性。終端發(fā)送流程圖如5所示。


    網(wǎng)關(guān)節(jié)點不能輪循完一遍之后,又立即進(jìn)行下一次輪詢。這樣,總線上一直都會是忙碌狀態(tài)。網(wǎng)關(guān)節(jié)點必須在輪詢完一次之后,暫停L秒,這個空隙時間就是留給終端主動向網(wǎng)關(guān)發(fā)送數(shù)據(jù)。L不宜過大,否則會大大降低系統(tǒng)整體效率,L的選取與系統(tǒng)共有多少終端節(jié)點且每個終端節(jié)點與網(wǎng)關(guān)節(jié)點通信時間有關(guān)。
    使用普通模式進(jìn)行通信,優(yōu)點是RS-485通信應(yīng)用靈活,可以支持更多的節(jié)點掛載在總線上;可以改進(jìn)RS-485通信方式,自動地址識別模式無法監(jiān)聽總線是否繁忙。缺點是各個節(jié)點的工作量增大,將頻繁解析指令,系統(tǒng)整體效率降低。

結(jié)語
   
在使用RS-485方式通信時,選取哪種方式進(jìn)行通信,需要根據(jù)不同場合而定。傳統(tǒng)的自動地址識別模式,適用于嚴(yán)格的主從通信系統(tǒng),可靠性高,系統(tǒng)整體效率高;而普通模式靈活性較好,但是系統(tǒng)整體效率會降低。所以,要因地制宜,選擇當(dāng)前場合最適合的方式。

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

武漢2025年9月9日 /美通社/ -- 7月24日,2025慧聰跨業(yè)品牌巡展——湖北?武漢站在武漢中南花園酒店隆重舉辦!本次巡展由慧聰安防網(wǎng)、慧聰物聯(lián)網(wǎng)、慧聰音響燈光網(wǎng)、慧聰LED屏網(wǎng)、慧聰教育網(wǎng)聯(lián)合主辦,吸引了安防、...

關(guān)鍵字: AI 希捷 BSP 平板

上海2025年9月9日 /美通社/ -- 9月8日,移遠(yuǎn)通信宣布,其自研藍(lán)牙協(xié)議棧DynaBlue率先通過藍(lán)牙技術(shù)聯(lián)盟(SIG)BQB 6.1標(biāo)準(zhǔn)認(rèn)證。作為移遠(yuǎn)深耕短距離通信...

關(guān)鍵字: 藍(lán)牙協(xié)議棧 移遠(yuǎn)通信 COM BSP

上海2025年9月9日 /美通社/ -- 為全面落實黨中央、國務(wù)院和上海市委、市政府關(guān)于加快發(fā)展人力資源服務(wù)業(yè)的決策部署,更好發(fā)揮人力資源服務(wù)業(yè)賦能百業(yè)作用,8月29日,以"AI智領(lǐng) HR智鏈 靜候你來&quo...

關(guān)鍵字: 智能體 AI BSP 人工智能

北京2025年9月8日 /美通社/ -- 近日,易生支付與一汽出行達(dá)成合作,為其自主研發(fā)的"旗馭車管"車輛運營管理平臺提供全流程支付通道及技術(shù)支持。此次合作不僅提升了平臺對百余家企業(yè)客戶的運營管理效率...

關(guān)鍵字: 一汽 智能化 BSP SAAS

深圳2025年9月8日 /美通社/ -- 晶泰科技(2228.HK)今日宣布,由其助力智擎生技制藥(PharmaEngine, Inc.)發(fā)現(xiàn)的新一代PRMT5抑制劑PEP0...

關(guān)鍵字: 泰科 AI MT BSP

上海2025年9月5日 /美通社/ -- 由上海市經(jīng)濟和信息化委員會、上海市發(fā)展和改革委員會、上海市商務(wù)委員會、上海市教育委員會、上海市科學(xué)技術(shù)委員會指導(dǎo),東浩蘭生(集團)有限公司主辦,東浩蘭生會展集團上海工業(yè)商務(wù)展覽有...

關(guān)鍵字: 電子 BSP 芯片 自動駕駛

推進(jìn)卓越制造,擴大產(chǎn)能并優(yōu)化布局 蘇州2025年9月5日 /美通社/ --?耐世特汽車系統(tǒng)與蘇州工業(yè)園區(qū)管委會正式簽署備忘錄,以設(shè)立耐世特亞太總部蘇州智能制造項目。...

關(guān)鍵字: 智能制造 BSP 汽車系統(tǒng) 線控

慕尼黑和北京2025年9月4日 /美通社/ -- 寶馬集團宣布,新世代首款量產(chǎn)車型BMW iX3將于9月5日全球首發(fā),9月8日震撼亮相慕尼黑車展。中國專屬版車型也將在年內(nèi)與大家見面,2026年在國內(nèi)投產(chǎn)。 寶馬集團董事...

關(guān)鍵字: 寶馬 慕尼黑 BSP 數(shù)字化

北京2025年9月4日 /美通社/ --?在全球新一輪科技革命與產(chǎn)業(yè)變革的澎湃浪潮中,人工智能作為引領(lǐng)創(chuàng)新的核心驅(qū)動力,正以前所未有的深度與廣度重塑各行業(yè)發(fā)展格局。體育領(lǐng)域深度融入科技變革浪潮,駛?cè)霐?shù)字化、智能化轉(zhuǎn)型快車...

關(guān)鍵字: 人工智能 智能體 AI BSP

上海2025年9月2日 /美通社/ -- 近日,由 ABB、Moxa(摩莎科技)等八家企業(yè)在上海聯(lián)合發(fā)起并成功舉辦"2025 Ethernet-APL 技術(shù)應(yīng)用發(fā)展大會"。會議以"破界?融合...

關(guān)鍵字: ETHERNET 智能未來 BSP 工業(yè)通信
關(guān)閉