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

        ?

        基于單片機(jī)的多路低速數(shù)據(jù)串行傳輸

        2008-04-12 00:00:00李焱東王永斌
        現(xiàn)代電子技術(shù) 2008年2期

        摘 要:在數(shù)據(jù)采集和傳輸系統(tǒng)中,常需進(jìn)行多路數(shù)據(jù)的傳送和處理。以單片機(jī)為核心,研究多路低速數(shù)據(jù)串行傳輸?shù)囊环N實(shí)現(xiàn)方法,給出硬件連接圖,闡述各部分工作原理及軟件設(shè)計(jì)思路。該實(shí)現(xiàn)方法硬件簡單,所需芯片少,成本低,可實(shí)用于以單片機(jī)為核心的多路低速數(shù)據(jù)串行傳輸系統(tǒng)中。

        關(guān)鍵詞:數(shù)據(jù)采集;多路低速數(shù)據(jù);中斷;數(shù)據(jù)處理

        中圖分類號(hào):TP368.1 文獻(xiàn)標(biāo)識(shí)碼:B 文章編號(hào):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

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

        1 串口擴(kuò)展方案比較

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

        2 硬件設(shè)計(jì)

        2.1 芯片介紹

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

        2.2 電路圖

        電路圖如圖2所示。

        圖2中,單片機(jī)引腳P1.0,P1.1,P1.2分別與3個(gè)終端相連,用其接收從終端往上位機(jī)傳輸?shù)臄?shù)據(jù)。P1.3,P1.4,P1.5為3個(gè)終端的中斷標(biāo)志,為“1”時(shí)表示對(duì)應(yīng)終端有中斷請(qǐng)求。P1.6,P1.7,P3.7為中斷控制位,當(dāng)單片機(jī)響應(yīng)中斷后由單片機(jī)控制將對(duì)應(yīng)終端中斷請(qǐng)求屏蔽,以避免中斷請(qǐng)求的錯(cuò)誤。P3.6為電源控制位。RXD和TXD與上位機(jī)相連,實(shí)現(xiàn)單片機(jī)與上位機(jī)之間的數(shù)據(jù)傳輸。P0和P2口用作單片機(jī)外部數(shù)據(jù)存儲(chǔ)器擴(kuò)展的地址線。

        2.3 工作原理

        在上位機(jī)控制終端開機(jī)后,終端采集數(shù)據(jù)并向單片機(jī)傳輸。單片機(jī)循環(huán)等待,若接收到中斷請(qǐng)求,單片機(jī)查詢中斷源并響應(yīng)此中斷,對(duì)P1口采樣開始接收數(shù)據(jù)并將數(shù)據(jù)存儲(chǔ)在片外存儲(chǔ)器中,接收過程中若有其他中斷到來,則進(jìn)行多中斷處理。數(shù)據(jù)傳輸完畢后單片機(jī)結(jié)束此次中斷,對(duì)采樣數(shù)據(jù)進(jìn)行判斷和重組,并將處理后的數(shù)據(jù)送串口傳給上位機(jī)。工作完畢,上位機(jī)控制終端關(guān)機(jī)。

        2.3.1 數(shù)據(jù)接收

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

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

        2.3.2 多中斷處理

        在終端1傳輸數(shù)據(jù)時(shí),單片機(jī)實(shí)時(shí)檢測(cè)終端2或終端3是否有請(qǐng)求中斷,若有,則單片機(jī)響應(yīng)中斷,接收來自終端2或終端3采集的數(shù)據(jù),反之亦然。各終端之間不影響,因?yàn)閱纹瑱C(jī)讀一次P1口,是同時(shí)對(duì)P1.0~P1.7八個(gè)引腳進(jìn)行采樣,而不管此時(shí)某終端是否有向上位機(jī)的數(shù)據(jù)傳輸;故采樣數(shù)據(jù)中會(huì)有許多無用數(shù)據(jù),這些將在數(shù)據(jù)處理程序中處理。單片機(jī)接收完終端1的數(shù)據(jù)后,查詢終端2和終端3是否在進(jìn)行數(shù)據(jù)傳輸,若是,繼續(xù)對(duì)P1口采樣;若三終端皆無數(shù)據(jù)傳輸,則結(jié)束中斷,轉(zhuǎn)入數(shù)據(jù)處理程序。

        2.3.3 數(shù)據(jù)處理

        從外部存儲(chǔ)器中讀第1字節(jié)數(shù)據(jù),查詢低3位中任意一位是否為1,若不是,讀下一字節(jié);若是,表明對(duì)應(yīng)終端數(shù)據(jù)由此開始,讀3個(gè)字節(jié)取出對(duì)應(yīng)比特并將原位置清零,對(duì)取出比特進(jìn)行判斷;以終端1為例,3個(gè)字節(jié)最低比特有2個(gè)或3個(gè)比特為1則此比特判定為1,否則判為0,判斷所得數(shù)據(jù)存入片內(nèi)指定存儲(chǔ)區(qū),繼續(xù)取三個(gè)字節(jié)數(shù)據(jù)并判斷直至對(duì)應(yīng)終端本次數(shù)據(jù)處理完?;厣弦徊樵凕c(diǎn)繼續(xù)查詢。在終端1數(shù)據(jù)流長度內(nèi)若查詢到某字節(jié)低3位為1,重復(fù)上述處理,若無,數(shù)據(jù)處理結(jié)束,將處理后數(shù)據(jù)送串口。

        3 軟件設(shè)計(jì)

        3.1 系統(tǒng)流程

        系統(tǒng)流程如圖4所示。

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

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

        3.3 串口通信

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

        3.4 部分程序

        ;終端1接收數(shù)據(jù)

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

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

        ACALL DELAY[JY];采樣延時(shí),控制1 b內(nèi)采樣次數(shù)

        DJNZ R1,READ[JY];終端1數(shù)據(jù)傳完否,未完繼續(xù)

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

        …

        ;終端1數(shù)據(jù)處理

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

        MOV R3,#8[JY];循環(huán)次數(shù),8字節(jié)數(shù)據(jù)[ZK)]

        S1:[ZK(]DJNZ R3,S2

        AJMP EXIT[ZK)]

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

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

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

        ACALL LW[JY];移位設(shè)定,將8比特?cái)?shù)據(jù)組成1字節(jié)

        ADD @R2,A[JY];存儲(chǔ)1 b數(shù)據(jù)

        INC R1

        CJNE R1,#8,S3[JY];存儲(chǔ)1 B數(shù)據(jù)

        INC R2

        AJMP S1[ZK)]

        EXIT:…

        4 結(jié) 語

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

        參 考 文 獻(xiàn)

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

        [2]李華.MCS-51系列單片機(jī)實(shí)用接口技術(shù)[M].北京:北京航空航天大學(xué)出版社,1993.

        [3]南建輝,熊鳴,王軍茹.MCS-51單片機(jī)原理及應(yīng)用實(shí)例[M].北京:清華大學(xué)出版社,2004.

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

        注:本文中所涉及到的圖表、注解、公式等內(nèi)容請(qǐng)以PDF格式閱讀原文。

        天天综合天天爱天天做| 又粗又粗又黄又硬又深色的| 毛茸茸的中国女bbw| 91精品国产免费青青碰在线观看 | 色一情一乱一伦一区二区三区| 日日干夜夜操高清视频| 男女好痛好深好爽视频一区| 一区二区三区黄色一级片| 日本最新一区二区三区视频观看| 欧美黑人又大又粗xxxxx| 一本久道综合在线无码人妻| 精品久久久久久国产| 精品无吗国产一区二区三区av| 在线视频精品少白免费观看| 亚洲人成在线播放网站| 无码人妻精品一区二区三区下载 | 国产免费一区二区三区最新不卡| 精品人妻少妇一区二区中文字幕| 国产精品一品二区三区| 国产高清在线精品一区app| 韩国19禁无遮挡啪啪无码网站| 欧美激情中文字幕在线一区二区| 中文无字幕一本码专区| 午夜精品久久久久久久| 人人妻人人爽人人澡欧美一区| 亚洲精品欧美二区三区中文字幕| 国产一区二区丰满熟女人妻| 日本在线免费不卡一区二区三区| 国产精品久久久久一区二区三区 | 永久免费的av在线电影网无码| 国产真实乱对白在线观看| 亚洲av一二三又爽又爽又色| 隔壁的日本人妻bd高清中字| 国产极品裸体av在线激情网| 粉嫩虎白女毛片人体| 午夜精品一区二区三区无码不卡| 亚洲av区一区二区三区| 欧美成人秋霞久久aa片| 大地资源中文在线观看官网第二页 | 日本综合视频一区二区| 插插射啊爱视频日a级|