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

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

2021-03-16 10:08:36北京交通大學(xué)海濱學(xué)院電子與電氣工程學(xué)院王東振
電子世界 2021年4期
關(guān)鍵詞:單片機(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字長是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只要檢測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ù),可以對要發(fā)送的數(shù)據(jù)做加密處理,數(shù)據(jù)加密技術(shù)是網(wǎng)絡(luò)中最基本的安全技術(shù),主要是通過對網(wǎng)絡(luò)中傳輸?shù)男畔⑦M(jìn)行數(shù)據(jù)加密來保障其安全性。本設(shè)計(jì)借用數(shù)據(jù)加密的思想,對要發(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的字長是8位的,所以一次可以處理1個(gè)字節(jié)數(shù)據(jù),用字節(jié)表示1位BCD碼的時(shí)候,高4位一定是“0”,低4位是”0-9”中的1個(gè)數(shù)字,這樣用高4位的“0”就可以實(shí)現(xiàn)對數(shù)據(jù)加密處理。使用邏輯或指令,對傳送數(shù)據(jù)的高4位用1-4個(gè)“1”做邏輯或的運(yùn)算,增加一個(gè)特征值。從0001一直到1111,一共可以加密15個(gè)數(shù)據(jù),如果加上0000,則可以實(shí)現(xiàn)對16個(gè)BCD碼數(shù)據(jù)的高4位做加密處理。在實(shí)際雙機(jī)通信系統(tǒng)中,下位機(jī)在現(xiàn)場檢測數(shù)據(jù),并把檢測的數(shù)據(jù)做二進(jìn)制到十進(jìn)制的轉(zhuǎn)換,將轉(zhuǎn)換的結(jié)果通過串口發(fā)送給上位機(jī)進(jìn)行顯示,如果檢測數(shù)據(jù)范圍在0-999的范圍,則上述加密方法可以對5個(gè)數(shù)據(jù)采集通道的數(shù)據(jù)做加密處理;如果檢測數(shù)據(jù)范圍在0-99的范圍,則可以對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ī)檢測數(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ù),對這3個(gè)數(shù)據(jù)做加密和發(fā)送的流程圖如圖1所示。

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

對圖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

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

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

猜你喜歡
單片機(jī)
基于單片機(jī)的SPWM控制逆變器的設(shè)計(jì)與實(shí)現(xiàn)
電子制作(2019年13期)2020-01-14 03:15:28
基于單片機(jī)的層次漸變暖燈的研究
電子制作(2019年15期)2019-08-27 01:12:10
基于單片機(jī)的多功能智能插排
電子制作(2019年11期)2019-07-04 00:34:48
基于單片機(jī)的便捷式LCF測量儀
電子制作(2019年9期)2019-05-30 09:42:02
小議PLC與單片機(jī)之間的串行通信及應(yīng)用
電子制作(2018年12期)2018-08-01 00:48:04
MSP430單片機(jī)在仿真中要注意的幾點(diǎn)問題
電子制作(2017年9期)2017-04-17 03:00:53
基于單片機(jī)的平衡控制系統(tǒng)設(shè)計(jì)
電子制作(2017年19期)2017-02-02 07:08:27
基于單片機(jī)的三維LED點(diǎn)陣設(shè)計(jì)
電子制作(2016年21期)2016-05-17 03:52:51
Microchip推出兩個(gè)全新PIC單片機(jī)系列
基于Proteus的單片機(jī)控制系統(tǒng)的仿真設(shè)計(jì)
主站蜘蛛池模板: 人妻21p大胆| 爱色欧美亚洲综合图区| 亚洲精品第一在线观看视频| 性激烈欧美三级在线播放| 2019国产在线| 日韩欧美在线观看| 欧美日韩国产在线观看一区二区三区 | 欧美成人a∨视频免费观看 | 欧美黄网在线| 国产免费一级精品视频| 久久女人网| 伊人久久婷婷| 国产成人乱码一区二区三区在线| 久热中文字幕在线| 视频一区视频二区中文精品| 男人天堂伊人网| 亚洲一区二区三区麻豆| 91成人试看福利体验区| 中文国产成人久久精品小说| 国产一级无码不卡视频| 人人看人人鲁狠狠高清| 日韩欧美中文字幕在线精品| 狠狠色噜噜狠狠狠狠奇米777| 欧美在线视频不卡| 欧美成人午夜在线全部免费| 人妻精品全国免费视频| 美女被操黄色视频网站| 99热这里只有精品久久免费| 亚洲日本中文字幕乱码中文| 亚洲精品视频免费观看| 手机在线国产精品| 青青热久麻豆精品视频在线观看| 亚洲色图欧美激情| 理论片一区| 欧美日韩午夜| 国产综合日韩另类一区二区| 激情影院内射美女| 第九色区aⅴ天堂久久香| 亚洲欧洲日产国码无码av喷潮| 伊人精品成人久久综合| 国产精品30p| 伊人91在线| 2021国产v亚洲v天堂无码| 2021国产精品自产拍在线| 蝴蝶伊人久久中文娱乐网| 在线网站18禁| 小说 亚洲 无码 精品| 怡春院欧美一区二区三区免费| 国产午夜一级毛片| 亚洲精品777| 精品人妻一区二区三区蜜桃AⅤ| 国产亚洲精品97AA片在线播放| 日韩精品亚洲精品第一页| 国模粉嫩小泬视频在线观看| 中文字幕中文字字幕码一二区| 欧美黄网站免费观看| AV天堂资源福利在线观看| 天堂成人av| 欧美丝袜高跟鞋一区二区| 亚洲性日韩精品一区二区| 国产浮力第一页永久地址| 成人年鲁鲁在线观看视频| 国产福利免费观看| 亚洲品质国产精品无码| 亚洲精品波多野结衣| 国产精品亚洲日韩AⅤ在线观看| 国产成人亚洲无码淙合青草| 一级毛片免费观看久| 午夜日b视频| 色老头综合网| 国产chinese男男gay视频网| 亚洲天堂首页| 国产精品夜夜嗨视频免费视频 | 久久久精品国产亚洲AV日韩| a国产精品| 久久婷婷色综合老司机| 视频在线观看一区二区| 日韩欧美中文在线| 亚洲精品欧美日韩在线| 性色一区| 亚洲性日韩精品一区二区| 亚洲毛片一级带毛片基地|