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

基于單片機的多路低速數據串行傳輸

2008-04-12 00:00:00李焱東王永斌
現代電子技術 2008年2期

摘 要:在數據采集和傳輸系統中,常需進行多路數據的傳送和處理。以單片機為核心,研究多路低速數據串行傳輸的一種實現方法,給出硬件連接圖,闡述各部分工作原理及軟件設計思路。該實現方法硬件簡單,所需芯片少,成本低,可實用于以單片機為核心的多路低速數據串行傳輸系統中。

關鍵詞:數據采集;多路低速數據;中斷;數據處理

中圖分類號:TP368.1 文獻標識碼:B 文章編號:1004-373X(2008)02-025-02

Multiplex Low Speed Data Serial Transmission Based on Single Chip

LI Yandong,WANG Yongbin,CHEN Bin

(Navy University of Engineering,Wuhan,430033,China)

[HJ*2]Abstract:The date collection and transmission system usually needs to transmit and process multiplex date.Using single chip as the core,the paper studies a way to realize multiplex low speed data serial transmission,presents hardware connection chart,expounds work principle and software design idea.The method is simple in hardware,needs fewer chips and is low cost,so it could be applied to the multiplex low speed data serial transmission systems which uses single chip as the core.

Keywords:single chip;multiplex low speed data;interrupt;data processing

常用的標準51單片機內部僅含有1或2個可編程全雙工串行通信接口,其具有UART的全部功能,該接口可同時進行數據的發送和接收。在工程中,往往需要多個串口進行整個系統的通信。在如圖1所示的多路數據采集和傳輸系統中,其要實現的功能為:將3個終端的數據傳輸給上位機,其傳輸速率不同,終端1和終端2每0.5 s傳1次,數據速率為1 200 b/s,終端3每2 s傳1次,數據速率為600 b/s。上位機控制電源使3終端開關機。單片機既要和上位機通信,又要接收來自終端的數據并控制電源,這時就需要擴展串行通道。

1 串口擴展方案比較

單片機串口擴展一般有3種方法,一是選用多串口單片機;二是用串口擴展器如16C554,SP2328等進行擴展,三是用單片機豐富的I/O口模擬多個串口。前2種方法性能穩定,編程簡單,第3種方法硬件簡單,但編程復雜。此設計中數據傳輸速率較低,故選用第3種方法。

2 硬件設計

2.1 芯片介紹

8031芯片為典型的MCS-51系列單片機,采用40引腳的雙列直插封裝(DIP)或方形封裝,配置256 B的數據存儲器,32條I/O線,1個全雙工UART。

2.2 電路圖

電路圖如圖2所示。

圖2中,單片機引腳P1.0,P1.1,P1.2分別與3個終端相連,用其接收從終端往上位機傳輸的數據。P1.3,P1.4,P1.5為3個終端的中斷標志,為“1”時表示對應終端有中斷請求。P1.6,P1.7,P3.7為中斷控制位,當單片機響應中斷后由單片機控制將對應終端中斷請求屏蔽,以避免中斷請求的錯誤。P3.6為電源控制位。RXD和TXD與上位機相連,實現單片機與上位機之間的數據傳輸。P0和P2口用作單片機外部數據存儲器擴展的地址線。

2.3 工作原理

在上位機控制終端開機后,終端采集數據并向單片機傳輸。單片機循環等待,若接收到中斷請求,單片機查詢中斷源并響應此中斷,對P1口采樣開始接收數據并將數據存儲在片外存儲器中,接收過程中若有其他中斷到來,則進行多中斷處理。數據傳輸完畢后單片機結束此次中斷,對采樣數據進行判斷和重組,并將處理后的數據送串口傳給上位機。工作完畢,上位機控制終端關機。

2.3.1 數據接收

以終端1為例,無數據傳輸時,P1.0接收為低電平;當P1.0接收到高電平,即數據傳輸標志時,表示終端1將向上位機發送數據,此時INT0有效,終端1向單片機請求中斷,終端1中斷標志P1.3=1。單片機接收到中斷請求,對P1.3,P1.4,P1.5進行查詢,查詢到P1.3=1,確定此中斷請求來自終端1,響應此中斷,并將P1.6置0,使INT0無效,防止終端1傳輸數據時反復中斷,同時讀P1口,最低位比特P1.0即為終端1傳送的數據。接收終端1傳來的數據直至數據傳輸結束,所接收數據放外部存儲器,期間有其他中斷則進行多中斷處理。不同工作階段與終端1相連各引腳狀態如表1所示。

由于數據傳輸速率較小,傳輸1 b數據時間內單片機可多次讀P1口,此時可根據需要編寫延時程序,用以控制單片機對P1口的采樣次數。每傳輸1 b數據,對終端3的采樣次數是對終端1或終端2采樣次數的2倍。例如,若終端1或終端2傳輸1 b數據被采樣3次,則終端3傳輸1 b數據被采樣6次。如圖3所示,故接收終端1或2一比特信息需讀P1口3次,終端3為6次。

2.3.2 多中斷處理

在終端1傳輸數據時,單片機實時檢測終端2或終端3是否有請求中斷,若有,則單片機響應中斷,接收來自終端2或終端3采集的數據,反之亦然。各終端之間不影響,因為單片機讀一次P1口,是同時對P1.0~P1.7八個引腳進行采樣,而不管此時某終端是否有向上位機的數據傳輸;故采樣數據中會有許多無用數據,這些將在數據處理程序中處理。單片機接收完終端1的數據后,查詢終端2和終端3是否在進行數據傳輸,若是,繼續對P1口采樣;若三終端皆無數據傳輸,則結束中斷,轉入數據處理程序。

2.3.3 數據處理

從外部存儲器中讀第1字節數據,查詢低3位中任意一位是否為1,若不是,讀下一字節;若是,表明對應終端數據由此開始,讀3個字節取出對應比特并將原位置清零,對取出比特進行判斷;以終端1為例,3個字節最低比特有2個或3個比特為1則此比特判定為1,否則判為0,判斷所得數據存入片內指定存儲區,繼續取三個字節數據并判斷直至對應終端本次數據處理完。回上一查詢點繼續查詢。在終端1數據流長度內若查詢到某字節低3位為1,重復上述處理,若無,數據處理結束,將處理后數據送串口。

3 軟件設計

3.1 系統流程

系統流程如圖4所示。

三終端向單片機傳送的數據幀由10位數據組成:1位起始位,8位數據位,1位停止位。終端向單片機發送1次數據,即要發送8個字節的數據位,其中第一字節為終端發送數據標志,接收到此字節數據表示終端有數據發送;后7個字節為以約定格式傳輸的數據,其中包含此次數據來自哪一終端的信息。

編程時,根據終端發送數據的波特率計算出數據位周期,而后根據單片機晶振頻率和1 b內采樣次數編寫延遲程序。單片機接收到中斷后即按固定延遲采樣P1口。數據傳送結束后,對每比特內采樣的數據采用3中取2(終端1或2)或6中取4(終端3)的規則判斷。

3.3 串口通信

單片機與上位機通過串行口通信,串行口工作于方式1,數據幀也為10位:1位起始位、8位數據位、1位停止位。串口波特率由編程給定,單片機將處理后數據按約定波特率傳給上位機,并隨時接收上位機的控制指令以控制電源。

3.4 部分程序

;終端1接收數據

READ:[ZK(]MOV A,P1[JY];讀P1口

MOVX @DPTR,A[JY];送外部存儲空間

ACALL DELAY[JY];采樣延時,控制1 b內采樣次數

DJNZ R1,READ[JY];終端1數據傳完否,未完繼續

SETB P1.6[JY];傳完開終端1中斷,等待下次接收[ZK)]

…

;終端1數據處理

DEAL1:[ZK(]MOV R2,#30H[JY];終端1數據存儲首址

MOV R3,#8[JY];循環次數,8字節數據[ZK)]

S1:[ZK(]DJNZ R3,S2

AJMP EXIT[ZK)]

S2:MOV R1,#0[JY];移位次數

S3:[ZK(]ACALL DQ[JY];讀3個字節最低位置于寄存器B低3位

ACALL SEV1[JY];B低3位判斷,3中取2

ACALL LW[JY];移位設定,將8比特數據組成1字節

ADD @R2,A[JY];存儲1 b數據

INC R1

CJNE R1,#8,S3[JY];存儲1 B數據

INC R2

AJMP S1[ZK)]

EXIT:…

4 結 語

上述實現方法硬件簡單,所需芯片少、成本低,可實用于以單片機為核心的多路低速數據串行傳輸系統中,但此實現占用軟件開銷較大,適合于波特率較低的情況。

參 考 文 獻

[1]曹巧媛.單片機原理及應用[M].北京:電子工業出版社,2002.

[2]李華.MCS-51系列單片機實用接口技術[M].北京:北京航空航天大學出版社,1993.

[3]南建輝,熊鳴,王軍茹.MCS-51單片機原理及應用實例[M].北京:清華大學出版社,2004.

[4]黃漢兵.Protel DXP電路設計制版入門與提高[M].北京:人民郵電出版社,2004.

注:本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文。

主站蜘蛛池模板: 国产理论一区| 一级成人a毛片免费播放| 国产精品欧美在线观看| 亚洲国产清纯| 亚洲无码精品在线播放| 国产在线第二页| 日本欧美中文字幕精品亚洲| 人人爱天天做夜夜爽| 永久免费无码成人网站| 亚洲日韩精品欧美中文字幕| 国产丝袜91| 国产精品一区二区在线播放| 久久久亚洲色| 九九九精品成人免费视频7| 另类欧美日韩| 激情亚洲天堂| 欧美激情,国产精品| 国产精品尹人在线观看| 日韩无码真实干出血视频| 老司机aⅴ在线精品导航| 青青草原国产免费av观看| 精品撒尿视频一区二区三区| 中文字幕人成人乱码亚洲电影| 五月天婷婷网亚洲综合在线| 中文字幕日韩视频欧美一区| 伊人久久大香线蕉综合影视| 国产欧美视频一区二区三区| 欧美日韩福利| 色综合天天综合| 国产精品蜜臀| 国产成人综合网在线观看| 亚洲精品视频在线观看视频| 久久人搡人人玩人妻精品| 国产精品人人做人人爽人人添| 无码国产伊人| 亚洲精品视频在线观看视频| 亚洲午夜国产精品无卡| 国产女主播一区| 18禁不卡免费网站| 最新国产成人剧情在线播放| 色婷婷啪啪| 国产剧情伊人| 亚洲精品在线91| 国产va免费精品观看| 另类重口100页在线播放| 日韩色图区| 中国国产A一级毛片| 69国产精品视频免费| 久久久91人妻无码精品蜜桃HD| 亚洲人成色77777在线观看| 91精品免费久久久| 欧美不卡视频在线观看| 亚洲国产综合精品一区| 亚洲天堂久久| 国产第八页| 91色综合综合热五月激情| 国产香蕉一区二区在线网站| 日韩二区三区| 中文无码精品A∨在线观看不卡 | 一级不卡毛片| 中文字幕丝袜一区二区| 久久男人视频| 亚洲一区二区三区在线视频| 精品一区二区无码av| 亚洲精品国产首次亮相| 亚洲天堂区| 久久精品国产国语对白| 无码人中文字幕| 毛片一级在线| 国内精品久久人妻无码大片高| 这里只有精品在线| 91精品国产一区自在线拍| 亚洲一级色| 欧美在线中文字幕| 中文字幕 欧美日韩| 亚洲无线一二三四区男男| 2019年国产精品自拍不卡| 亚洲另类国产欧美一区二区| 91久久夜色精品国产网站 | 国产成人h在线观看网站站| 国产麻豆va精品视频| 免费A级毛片无码免费视频|