亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        單片機(jī)雙機(jī)串行通信多數(shù)據(jù)傳輸匯編語言編程實(shí)現(xiàn)

        2021-03-16 10:08:36北京交通大學(xué)海濱學(xué)院電子與電氣工程學(xué)院王東振
        電子世界 2021年4期
        關(guān)鍵詞:接收數(shù)據(jù)發(fā)送數(shù)據(jù)雙機(jī)

        北京交通大學(xué)海濱學(xué)院電子與電氣工程學(xué)院 沈 敏 張 靜 王東振 金 鈺

        串口是單片機(jī)與其他單片機(jī)或計(jì)算機(jī)系統(tǒng)進(jìn)行異步串行通信的標(biāo)準(zhǔn)I/O接口,在系統(tǒng)設(shè)計(jì)中應(yīng)用非常廣泛。以教學(xué)中使用的CPU字長(zhǎng)是8位的51單片機(jī)為例,實(shí)現(xiàn)雙機(jī)間多數(shù)據(jù)串行傳輸,在多數(shù)據(jù)發(fā)送時(shí)為每個(gè)數(shù)據(jù)增加特征值,接收的時(shí)候通過特征值判斷接收的數(shù)據(jù),此方法最多可以實(shí)現(xiàn)雙機(jī)間16個(gè)數(shù)據(jù)的傳送,適用于5-8個(gè)通道的數(shù)據(jù)采集系統(tǒng)。將此設(shè)計(jì)思想應(yīng)用在0-999s的秒表系統(tǒng)設(shè)計(jì)中,系統(tǒng)運(yùn)行穩(wěn)定,實(shí)現(xiàn)預(yù)期效果。

        單片機(jī)串口是異步串行通信,發(fā)送方發(fā)送數(shù)據(jù)并不考慮接收方什么時(shí)候接收,如果是傳送1個(gè)數(shù)據(jù)比較好處理,串口無論工作在查詢方式下還是中斷方式下,接收方的CPU只要檢測(cè)RI=1,就可以接收數(shù)據(jù)。

        如果發(fā)送方發(fā)送的是多個(gè)數(shù)據(jù),接收方接收的是發(fā)送方發(fā)送的多個(gè)數(shù)據(jù)的哪一個(gè)?發(fā)送方發(fā)送的多個(gè)數(shù)據(jù)是動(dòng)態(tài)變化的,盡管發(fā)送方發(fā)送多個(gè)數(shù)據(jù)的順序在編程中是固定不變的,但是串口通信是異步的,接收方接收時(shí),無法知道此次接收的數(shù)據(jù)是發(fā)送方發(fā)送的哪一個(gè)數(shù)據(jù),所以接收方必須有能力判斷接收到的是哪一個(gè)數(shù)據(jù)才能真正實(shí)現(xiàn)異步串行通信多數(shù)據(jù)的正確傳送。

        1 發(fā)送數(shù)據(jù)的加密原理及編程實(shí)現(xiàn)

        要想讓接收方有能力判斷接收的數(shù)據(jù)是哪一個(gè)數(shù)據(jù),可以對(duì)要發(fā)送的數(shù)據(jù)做加密處理,數(shù)據(jù)加密技術(shù)是網(wǎng)絡(luò)中最基本的安全技術(shù),主要是通過對(duì)網(wǎng)絡(luò)中傳輸?shù)男畔⑦M(jìn)行數(shù)據(jù)加密來保障其安全性。本設(shè)計(jì)借用數(shù)據(jù)加密的思想,對(duì)要發(fā)送的數(shù)據(jù)采用增加特征值的加密處理方法,乙機(jī)接收數(shù)據(jù)后,通過解密獲取特征值,就可以知道接收的是哪一個(gè)數(shù)據(jù)了。特征值的選取要視發(fā)送數(shù)據(jù)的范圍,本文以發(fā)送壓縮BCD碼說明數(shù)據(jù)加密的原理及編程實(shí)現(xiàn)。

        1.1 發(fā)送數(shù)據(jù)的加密原理

        壓縮BCD碼是用4位二進(jìn)制表示1位十進(jìn)制,由于設(shè)計(jì)中使用的單片機(jī)CPU的字長(zhǎng)是8位的,所以一次可以處理1個(gè)字節(jié)數(shù)據(jù),用字節(jié)表示1位BCD碼的時(shí)候,高4位一定是“0”,低4位是”0-9”中的1個(gè)數(shù)字,這樣用高4位的“0”就可以實(shí)現(xiàn)對(duì)數(shù)據(jù)加密處理。使用邏輯或指令,對(duì)傳送數(shù)據(jù)的高4位用1-4個(gè)“1”做邏輯或的運(yùn)算,增加一個(gè)特征值。從0001一直到1111,一共可以加密15個(gè)數(shù)據(jù),如果加上0000,則可以實(shí)現(xiàn)對(duì)16個(gè)BCD碼數(shù)據(jù)的高4位做加密處理。在實(shí)際雙機(jī)通信系統(tǒng)中,下位機(jī)在現(xiàn)場(chǎng)檢測(cè)數(shù)據(jù),并把檢測(cè)的數(shù)據(jù)做二進(jìn)制到十進(jìn)制的轉(zhuǎn)換,將轉(zhuǎn)換的結(jié)果通過串口發(fā)送給上位機(jī)進(jìn)行顯示,如果檢測(cè)數(shù)據(jù)范圍在0-999的范圍,則上述加密方法可以對(duì)5個(gè)數(shù)據(jù)采集通道的數(shù)據(jù)做加密處理;如果檢測(cè)數(shù)據(jù)范圍在0-99的范圍,則可以對(duì)8個(gè)數(shù)據(jù)采集通道的數(shù)據(jù)加密,該加密方法可以滿足大部分雙機(jī)通信系統(tǒng)設(shè)計(jì)中。

        圖1 數(shù)據(jù)加密及發(fā)送流程圖

        1.2 數(shù)據(jù)加密的匯編編程實(shí)現(xiàn)

        本文以0-999秒的秒表作為應(yīng)用背景,發(fā)送方相當(dāng)于下位機(jī)檢測(cè)數(shù)據(jù),發(fā)送方使用51單片機(jī)的定時(shí)器0工作在方式1、12MHZ晶振下,再利用“軟計(jì)數(shù)”做1S定時(shí),定時(shí)秒數(shù)的個(gè)位、十位和百位分別用R1、R2、R3分別存放,數(shù)據(jù)發(fā)送時(shí)串口工作方式2下,以查詢的方式發(fā)送數(shù)據(jù),對(duì)這3個(gè)數(shù)據(jù)做加密和發(fā)送的流程圖如圖1所示。

        如果要發(fā)送的數(shù)據(jù)比較多,可以使用單片機(jī)集成的片內(nèi)RAM來存放要發(fā)送的數(shù)據(jù),具體的處理過程是一樣的,只是可以使用寄存器間接尋址,通過循環(huán)的方式來加密、發(fā)送多個(gè)數(shù)據(jù)。

        對(duì)圖1流程圖的匯編語言編程實(shí)現(xiàn)如下:

        圖2 數(shù)據(jù)接收算法流程圖

        MOV A,R1;取要發(fā)送的第1個(gè)數(shù)據(jù)

        ORL A,#80H;加密,特征值是80H

        MOV SBUF,A;發(fā)送

        JNB TI,$;等待發(fā)送完成

        CLR TI;清發(fā)送標(biāo)志位,準(zhǔn)備發(fā)送第2個(gè)數(shù)據(jù)

        MOV A,R2;取要發(fā)送的第2個(gè)數(shù)

        ORL A,#40H;加密,特征值是40H

        MOV SBUF,A;發(fā)送

        JNB TI,$;等待發(fā)送完成

        CLR TI;清發(fā)送標(biāo)志位,準(zhǔn)備發(fā)送第3個(gè)數(shù)據(jù)

        MOV A,R3;取第3個(gè)數(shù)據(jù)

        ORL A,#20H;加密,特征值是20H

        MOV SBUF,A;發(fā)送

        JNB TI,$;等待發(fā)送完成

        CLR TI;清發(fā)送標(biāo)志位

        2 接收數(shù)據(jù)的解密及編程實(shí)現(xiàn)

        51單片機(jī)的串口是異步通信,發(fā)送方與接收方工作時(shí)序不同步,所以當(dāng)發(fā)送方發(fā)送多個(gè)數(shù)據(jù)時(shí),接收方需要能判斷接收的是哪一個(gè)數(shù)據(jù),后續(xù)才能做出正確的處理。

        2.1 接收數(shù)據(jù)的解密

        接收數(shù)據(jù)的解密要根據(jù)發(fā)送方加密數(shù)據(jù)的方法進(jìn)行,由于數(shù)據(jù)加密是利用壓縮BCD碼的高4位全是“0”,通過給高4位補(bǔ)充0-4個(gè)“1”的特征值的方法進(jìn)行的,接收方接收的數(shù)據(jù)通過提取特征值的方法,就可以判斷當(dāng)前接收的數(shù)據(jù)是哪一個(gè)數(shù)據(jù),接收方接收數(shù)據(jù)也是工作在查詢方式下,具體的算法流程圖如圖2所示。

        2.2 接收數(shù)據(jù)的編程實(shí)現(xiàn)

        LP:JNB RI,$;等待接收完成

        CLR RI;接收完成,清接收標(biāo)志位,準(zhǔn)備接收下一個(gè)數(shù)據(jù)

        MOV A,SBUF;接收數(shù)據(jù)

        MOV 30H,A;保存

        ANL A,#0F0H;提取特征值

        CJNE A,#80H,NEXT;與特征值80H比較,不相等繼續(xù)比較,否則是第1個(gè)數(shù)據(jù)

        MOV A,30H;取回保存在30H中的數(shù)據(jù)

        ANL A,#0FH;提取第1個(gè)數(shù)據(jù)

        MOV R1,A;保存第1個(gè)數(shù)據(jù)

        SJMP XIAN

        NEXT:CJNE A,#40H,NEXT1;與特征值40H比較,不相等繼續(xù)比較,否則是第2個(gè)數(shù)據(jù)

        MOV A,30H;取回保存在30H中的數(shù)據(jù)

        ANL A,#0FH;提取第2個(gè)數(shù)據(jù)

        MOV R2,A;保存第2個(gè)數(shù)據(jù)

        SJMP XIAN

        NEXT1:CJNE A,#20H,AGAIN;與特征值20H比較,不相等等待接收數(shù)據(jù),否則是第3個(gè)數(shù)據(jù)

        MOV A,30H;取回保存在30H中的數(shù)據(jù)

        ANL A,#0FH;提取第3個(gè)數(shù)據(jù)

        MOV R3,A;保存第3個(gè)數(shù)據(jù)

        XIAN:ACALL DISP

        AGAIN:SJMP LP

        接收方在識(shí)別出接收的是哪一個(gè)數(shù)據(jù)后,通過調(diào)用顯示子程序可以把識(shí)別的數(shù)據(jù)送到乙機(jī)數(shù)碼管上顯示,這樣乙機(jī)上0-999s的秒數(shù)可以穩(wěn)定的顯示。

        總結(jié):保證雙機(jī)通信多數(shù)據(jù)正確傳輸?shù)年P(guān)鍵是對(duì)發(fā)送的多個(gè)數(shù)據(jù)“加密”,具體的處理方法可以是對(duì)每個(gè)發(fā)送數(shù)據(jù)分別“加密”,然后接收方對(duì)接收的數(shù)據(jù)解密后根據(jù)加密特征值逐一對(duì)比,也可以只對(duì)發(fā)送一組數(shù)據(jù)的首個(gè)數(shù)據(jù)做特征值的“加密”處理,接收時(shí)只在接收到包含特征值的數(shù)據(jù)后才開始逐一接收,這樣對(duì)發(fā)送數(shù)據(jù)的個(gè)數(shù)就沒有限制了。

        猜你喜歡
        接收數(shù)據(jù)發(fā)送數(shù)據(jù)雙機(jī)
        移動(dòng)自組網(wǎng)中MAC層協(xié)議研究
        沖激噪聲背景下基于幅度預(yù)處理的測(cè)向新方法*
        雙機(jī)、雙槳軸系下水前的安裝工藝
        低復(fù)雜度多輸入多輸出雷達(dá)目標(biāo)角度估計(jì)方法
        基于馬爾科夫鏈的LoRaWAN網(wǎng)絡(luò)節(jié)點(diǎn)性能分析
        帶標(biāo)記方式的CRDSA++協(xié)議性能分析*
        雙機(jī)牽引ZDJ9道岔不同步問題的處理
        Loader軸在雙機(jī)桁架機(jī)械手上的應(yīng)用
        使用IPSec安全傳輸數(shù)據(jù)
        單片機(jī)模擬串口數(shù)據(jù)接收程序的實(shí)現(xiàn)及優(yōu)化
        国产久色在线拍揄自揄拍| 久久一区av蜜桃人妻| 中文字幕一区二区网址| 国产av在线观看久久| 日日高潮夜夜爽高清视频| 亚洲国产精品综合久久网络 | 日韩精品在线一二三四区| 亚洲图片日本视频免费| 亚洲无码精品免费片| 国产免费激情小视频在线观看| 国产精品亚洲一级av第二区| 巨爆中文字幕巨爆区爆乳| 少妇无码吹潮| 亚洲AV综合久久九九| 国产色婷亚洲99精品av网站 | 精品国产av色一区二区深夜久久| 两个人看的www中文在线观看| 一区二区丝袜美腿视频| av日韩高清一区二区| 狠狠综合久久av一区二区| 99福利网| 狠狠久久av一区二区三区| 男女肉粗暴进来动态图| 在线观看国产成人av片| 一区二区三区国产美女在线播放| 精品国产乱子伦一区二区三| 麻豆婷婷狠狠色18禁久久| 欧美午夜刺激影院| 亚洲黄色一插一抽动态图在线看| 久久久精品国产亚洲av网深田 | 亚洲人成综合第一网站| 日本一卡2卡3卡四卡精品网站| 国产一级在线现免费观看| 国产一区二区三区在线观看黄| 伊人大杳焦在线| 免费无码一区二区三区蜜桃大| 中文字幕在线久热精品| 网红尤物泛滥白浆正在播放| 人妻丰满熟妇岳av无码区hd| 国产福利免费看| 亚洲视频观看一区二区|