freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于rs485接口的數(shù)據(jù)傳輸電路設(shè)計(jì)(編輯修改稿)

2024-10-04 10:07 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 時(shí), R 仍為低電平, CPU 認(rèn)為此時(shí)無(wú)起始位,直到出現(xiàn)第一個(gè)下降沿, CPU才開(kāi)始接收第一個(gè)數(shù)據(jù),這將導(dǎo)致接收錯(cuò)誤。由接收方式轉(zhuǎn)入發(fā)送方式后,D變化前,若 A與 B之間為低電壓,發(fā)送第一個(gè)數(shù)據(jù)起始位時(shí), A與 B之間仍為低電壓, A、B引腳無(wú)起始位,同樣會(huì)導(dǎo)致發(fā)送錯(cuò)誤??朔@種后果的方案是:主機(jī)連續(xù)發(fā)送兩個(gè)同步字,同步字要包含多次邊沿變化 (如 55H , 0AAH),并發(fā)送兩次 (第一次可能接收錯(cuò)誤而忽略 ) ,接收端收到同步字后,就可以傳送數(shù)據(jù)了,從而保證正確通信。 為了 更可靠地工作,在 RS485總線狀態(tài)切換時(shí)需要適當(dāng)延時(shí),再進(jìn)行數(shù)據(jù)的收發(fā)。具體的做法是在數(shù)據(jù)發(fā)送狀態(tài)下,先將控制端置“ 1”,延時(shí) ms左右的時(shí)間,再發(fā)送有效的數(shù)據(jù),數(shù)據(jù)發(fā)送結(jié)束后,再延時(shí) ms,將控制端置“ 0”。這樣的處理會(huì)使總線在狀態(tài)切換時(shí),有一個(gè)穩(wěn)定的工作過(guò)程。 單片機(jī)通信節(jié)點(diǎn)的程序基本上可以分為 6個(gè)主要部分,分別為預(yù)定義部分、初始化部分、主程序部分、設(shè)備狀態(tài)檢測(cè)部分、幀接收部分和幀發(fā)送部分。預(yù)定義部分主要定義了通信中使用的握手信號(hào),用于保存設(shè)備信息的緩沖區(qū)和保存本節(jié)點(diǎn)設(shè)備號(hào)的變量。設(shè)備狀 態(tài)檢測(cè)部分應(yīng)能在程序初始化后,當(dāng)硬件發(fā)生故障時(shí),作出相應(yīng)的反應(yīng)。主程序部分應(yīng)能接收命令幀,并根據(jù)命令的內(nèi)容作出相應(yīng)的回應(yīng)。為縮短篇幅,這里僅給出主程序部分的代碼。如下所示: /* 主程序流程 */ while(1) { //主循環(huán) if(recv_cmd(amp。type)==0) //發(fā)生幀錯(cuò)誤或幀地址與本機(jī) //地址不符,丟棄當(dāng)前幀后返回 continue。 switch(type) { case __ACTIVE_: //主 機(jī)詢(xún)問(wèn)從機(jī)是否存在 send_data(__OK_, 0,dbuf)。//發(fā)送應(yīng)答信息 break。 case __GETDATA_: len = strlen(dbuf)。 send_data(__STATUS_, len,dbuf)。//發(fā)送狀態(tài)信息 break。 default: break。 //命令類(lèi)型錯(cuò)誤,丟棄當(dāng)前幀后返回 } } 結(jié)論 RS485由于使用了差分電平傳輸 信號(hào),傳輸距離比 RS232更長(zhǎng),最多可以達(dá)到 3000 m,因此很適合工業(yè)環(huán)境下的應(yīng)用。但與 CAN總線等更為先進(jìn)的現(xiàn)場(chǎng)工業(yè)總線相比,其處理錯(cuò)誤 基于 RS485 接口的數(shù)據(jù)傳輸電路設(shè)計(jì) (2020) 7 的能力還稍顯遜色,所以在軟件部分還需要進(jìn)行特別的設(shè)計(jì),以避免數(shù)據(jù)錯(cuò)誤等情況發(fā)生。另外,系統(tǒng)的數(shù)據(jù)冗余量較大,對(duì)于速度要求高的應(yīng)用場(chǎng)所不適宜用 RS485 總線。雖然RS485 總線存在一些缺點(diǎn),但由于它的線路設(shè)計(jì)簡(jiǎn)單、價(jià)格低廉、控制方便,只要處理好細(xì)節(jié),在某些工程應(yīng)用中仍然能發(fā)揮良好的作用。總之,解決可靠性的關(guān)鍵在于工程開(kāi)始施工前就要全盤(pán)考慮可采取的措施,這樣才能從根本 上解決問(wèn)題,而不要等到工程后期再去亡羊補(bǔ)牢。 基于 RS485 接口的數(shù)據(jù)傳輸電路設(shè)計(jì) (2020) 6 二、 硬件設(shè)計(jì) RS485 RS- 485 標(biāo)準(zhǔn)接口是單片機(jī)系統(tǒng)種常用的一種串行總線之一。 RS485 通信方式 RS485 標(biāo)準(zhǔn)是由 EIA(電子工業(yè)協(xié)會(huì) )和 TIA(通訊工業(yè)協(xié)會(huì) )共同制訂和開(kāi)發(fā)的。 RS485 作為一種多點(diǎn)差分?jǐn)?shù)據(jù)傳輸?shù)碾姎庖?guī)范 ,已成為業(yè)界最廣泛應(yīng)用的標(biāo)準(zhǔn)通信接口之一。理論上 ,RS485 標(biāo)準(zhǔn)最多接入 32個(gè)設(shè)備 (受芯片驅(qū)動(dòng)能力的影響 ),可以工作在半雙工或全雙工模式下 ,最大傳輸距離約為 1219 米 ,最大傳輸速率約為 10Mbps[1]。然而通常 RS485 網(wǎng)絡(luò)采用平衡雙絞線作為傳輸媒體 ,平衡雙絞線的長(zhǎng)度與傳輸速率成反比 ,只有在 20Kbps 的傳輸速率下 ,才可能達(dá)到最大傳輸距離。一般 15 米長(zhǎng)的雙絞線最大傳輸速率僅為 1Mbps。不過(guò)對(duì)于速率要求不是很高的控制系統(tǒng)來(lái)說(shuō)已經(jīng)足夠了。 RS485 采用平衡發(fā)送和差分接收方式來(lái)實(shí)現(xiàn)通信:在發(fā)送端 TXD 將串行口的 TTL電平信號(hào)轉(zhuǎn)換成差分信號(hào) A、 B 兩路輸出,經(jīng)傳輸后在接收端將差分信號(hào)還原成TTL電平信號(hào)。兩條傳輸線通常使用雙絞線,又是差分傳輸,因此有極強(qiáng)的抗共模干擾的能力,接收靈敏度也相當(dāng)高。同時(shí),最大傳輸速率和最 大傳輸距離也大大提高。如果以 10Kbps 速率傳輸數(shù)據(jù)時(shí)傳輸距離可達(dá) 12m,而用 100Kbps 時(shí)傳輸距離可達(dá) 。如果降低波特率,傳輸距離還可進(jìn)一步提高。另外 RS485實(shí)現(xiàn)了多點(diǎn)互連,最多可達(dá) 256 臺(tái)驅(qū)動(dòng)器和 256臺(tái)接收器,非常便于多器件的連接。不僅可以實(shí)現(xiàn)半雙工通信,而且可以實(shí)現(xiàn)全雙工通信。 多機(jī)通原理 在多機(jī)通信中,每臺(tái)從機(jī)均分配有一個(gè)從機(jī)地址,主機(jī)與從機(jī)之間進(jìn)行串行通信時(shí),通常是主機(jī)先呼叫某從機(jī)地址,喚醒被叫從機(jī)后,主、從兩機(jī)之間進(jìn)行數(shù)據(jù)交換。而未被呼叫的從機(jī)則繼續(xù)進(jìn)行各自的工 作??墒牵绻谥鳈C(jī)與某被呼叫從機(jī)進(jìn)行數(shù)據(jù)交換過(guò)程中,其他從機(jī)如果不采取相應(yīng)的數(shù)據(jù)識(shí)別技術(shù),則這些從機(jī)就會(huì)因?yàn)榇型ㄐ啪€上有數(shù)據(jù)傳輸而時(shí)時(shí)被打斷,影響正常的工作。利用單片機(jī)的串口工作方式 方式 3 可以很好解決上述問(wèn)題。在多機(jī)通信過(guò)程中,從機(jī)首先要解決的是如何識(shí)別主機(jī)發(fā)送的是地址信息還是數(shù)據(jù)信息。當(dāng)發(fā)送的是地址信息時(shí),各從機(jī)都響應(yīng)串口中斷,接收主機(jī)下發(fā)的一幀地址數(shù)據(jù)。而當(dāng)主機(jī)發(fā)送數(shù)據(jù)幀時(shí),無(wú)關(guān)從機(jī)可不響應(yīng)串口中斷。解決的方法是:當(dāng)主機(jī)發(fā)送一幀地址信息時(shí),應(yīng)保持這幀數(shù)據(jù)的第 9 位為 1(即 TB8=1)。從機(jī)按照工作 方式 2或工作方式 3 運(yùn)行時(shí),將串口寄存器 SCON 中的控制位 SM2 置為 1,當(dāng)所接收的一幀數(shù)據(jù)的第 9位為 1,所有從機(jī)都產(chǎn)生串口中斷,接收這一幀地址數(shù)據(jù)并與各自的 基于 RS485 接口的數(shù)據(jù)傳輸電路設(shè)計(jì) (2020) 7 從機(jī)地址進(jìn)行比較,以判斷主機(jī)是否要與本機(jī)通信。接收到的地址數(shù)據(jù)與從機(jī)地址相等達(dá)到為被呼叫從機(jī),該從機(jī)將串口控制寄存器 SCON 中的控制位 SM2 清為0,去接收主機(jī)發(fā)送來(lái)的數(shù)據(jù)幀(數(shù)據(jù)幀的第 9 位為 0),此時(shí)不管接收到的第 9位數(shù)據(jù)是否為 1或 0,都要產(chǎn)生串口中斷,這就保證了主機(jī)與被呼叫從機(jī)間的正常數(shù)據(jù)通信。數(shù)據(jù)通信結(jié)束后,該從機(jī)又重新將串行口控制寄存器 SCON 中的控制位 SM2 置為 1,為下一次與主機(jī)進(jìn)行通信做好準(zhǔn)備。其他從機(jī)則一直在 SM2=1下繼續(xù)自己的工作,不會(huì)因?yàn)橹?、從機(jī)之間的數(shù)據(jù)通信而被打斷。 多機(jī)通信的實(shí)現(xiàn),主要靠主、從機(jī)正確地設(shè)置與判斷多機(jī)通信控制位 SM2 和發(fā)送或接收的第 9位數(shù)據(jù)( TB8 或 RB8)。當(dāng)主機(jī)給從機(jī)發(fā)送信息時(shí),要根據(jù)發(fā)送信息的性質(zhì)來(lái)設(shè)置 TB8,發(fā)送地址信號(hào)時(shí),設(shè)置 TB8=1;發(fā)送數(shù)據(jù)或命令時(shí),設(shè)置 TB8=0。當(dāng)從機(jī)的 SM2為 1時(shí),該從機(jī)只接收地址幀( RB8 位為 1),對(duì)數(shù)據(jù)幀( RB8 位為0)將不予理睬。而當(dāng) SM2 為 0 時(shí),該從機(jī)接收所有發(fā)送來(lái)的信息。多 機(jī)通信過(guò)程如下: 使所有從機(jī)的 SM2置 1,處于只接收地址幀的狀態(tài)(即從機(jī)復(fù)位); 主機(jī)發(fā)送一地址幀信息,其中包含 8位地址,第 9位為地址、數(shù)據(jù)標(biāo)志位,第 9位置 1表示發(fā)送的是地址; 從機(jī)接收到地址幀后,各自中斷 CPU,把接收到的地址與本地址作比較; 地址相符的從機(jī),使 SM2 清零以接收主機(jī)隨后發(fā)來(lái)的所有信息,對(duì)于地址不相符的從機(jī),仍保持 SM2=1 狀態(tài),對(duì)主機(jī)隨后發(fā)送的數(shù)據(jù)不予理睬,直到主機(jī)發(fā)送來(lái)新的地址幀; 主機(jī)發(fā)送數(shù)據(jù)或控制信息給被尋址的從機(jī); 被尋址的從機(jī),因 SM2=0,可以接收主機(jī)發(fā)送過(guò)來(lái)的所有數(shù)據(jù),當(dāng)從機(jī) 接收數(shù)據(jù)結(jié)束時(shí),置位 SM2,返回接收地址幀狀態(tài)(復(fù)位狀態(tài)); 當(dāng)主機(jī)改為與另外從機(jī)聯(lián)系時(shí),可再發(fā)地址幀尋址其從機(jī),而先前被尋址過(guò)的從機(jī)恢復(fù) SM2=1。 基于 RS485 接口的數(shù)據(jù)傳輸電路設(shè)計(jì) (2020) 7 單片機(jī)通信功能 單片機(jī) 計(jì)算機(jī)與外界的信息交換稱(chēng)為通信,常用的通信方式有兩種:并行通信和串行通信。 51 單片機(jī)用 4 個(gè)接口與外界進(jìn)行數(shù)據(jù)輸入與數(shù)據(jù)輸出就是并行通信,并行通信的特點(diǎn)是傳輸信號(hào)的速度快,但所用的信號(hào)線較多,成本高,傳輸?shù)木嚯x較近。串行通信的特點(diǎn)是只用兩條信號(hào)線(一條信號(hào)線,再加一條地線作為信號(hào)回路)即可完成通信,成本低,傳輸?shù)木嚯x較遠(yuǎn)。 51 單片機(jī)的串行接口是一個(gè)全雙工的接口,它可以作為 UART(通用異步接受和發(fā)送器)用,也可以作為同步移位寄存器用。 51 單片機(jī)串行接口的結(jié)構(gòu)如下: ( 1)數(shù)據(jù)緩沖器( SBUF) 接受或發(fā)送的數(shù)據(jù)都要先送到 SBUF 緩存。有兩個(gè),一個(gè)緩存,另一個(gè)接受,用同一直接地址 99H,發(fā)送時(shí)用指令將數(shù)據(jù)送到 SBUF即可啟動(dòng)發(fā)送;接收時(shí)用指令將 SBUF 中接收到的數(shù)據(jù)取出。 ( 2)串行控制寄存器( PCON) SCON 用于串行通信方式的選擇,收發(fā)控制及狀態(tài)指示,各位含義如下: SM0 SM1 SM2 REN TB8 RB8 TI RI SM0,SM1:串行接口工作方式選擇位,這兩位組合成 00, 01, 10, 11 對(duì)應(yīng)于工作方式 0、 3。串行接口工作方式特點(diǎn)見(jiàn)下表 SM0
點(diǎn)擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1