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

        ?

        單片機(jī)與PC機(jī)的串行通信系統(tǒng)

        2015-12-31 00:00:00李曉蕊呂朝萍
        中國新通信 2015年14期

        【摘要】 我們研究了單片機(jī)與PC機(jī)之間串行通信的方式,設(shè)計(jì)了一個(gè)串行通信系統(tǒng),該系統(tǒng)的上位機(jī)為PC機(jī),下位機(jī)為MCS—51單片機(jī),本文主要介紹了采取專用電平轉(zhuǎn)換芯片MAX232實(shí)現(xiàn)了上位機(jī)與MCS-51單片機(jī)間串行通信的有關(guān)技術(shù)方法。并對(duì)此進(jìn)行了具體實(shí)現(xiàn),給出了下位機(jī)基于Keil μ Vision4通信的核心控制代碼。

        【關(guān)鍵詞】 MAX232 串口通信 波特率 單片機(jī)

        一、前言

        隨著計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)與數(shù)據(jù)終端的普及,計(jì)算機(jī)的通信功能越來越重要。計(jì)算機(jī)通信是指計(jì)算機(jī)與外部設(shè)備或計(jì)算機(jī)與計(jì)算機(jī)之間的信息交換。通信有并行通信和串行通信兩種方式。在單片機(jī)系統(tǒng)以及現(xiàn)代測(cè)控系統(tǒng)中信息的交換多采用串行通信方式。

        本文介紹了在Windows環(huán)境下,利用串口調(diào)試助手實(shí)現(xiàn)PC機(jī)與MCS—51單片機(jī)之間串行通信的方法。

        二、硬件接口設(shè)計(jì)

        1、串行通信接口標(biāo)準(zhǔn):RS-232C是EIA(美國電子工業(yè)協(xié)會(huì))1969年修訂RS-232C標(biāo)準(zhǔn)。RS-232C定義了數(shù)據(jù)終端設(shè)備(DTE)與數(shù)據(jù)通信設(shè)備(DCE)之間的物理接口標(biāo)準(zhǔn)。目前PC機(jī)上均為RS-232C接口。單片機(jī)的邏輯電平(TTL電平)與RS-232C規(guī)定的邏輯電平不一致,因此需要使用專用電平轉(zhuǎn)換芯片MAX232芯片實(shí)現(xiàn)RS-232電平與TTL電平之間的轉(zhuǎn)換[1][2]。

        2、MAX232芯片實(shí)現(xiàn)RS-232電平與TTL電平之間的轉(zhuǎn)換。MAX232芯片是MAXIM公司生產(chǎn)的、包含兩路接收器和驅(qū)動(dòng)器的IC芯片,它的內(nèi)部有一個(gè)電源電壓變換器,可以把輸入的+5V/0V電源電壓變換成RS-232輸出電平所需的+10V/-10V電壓。所以,采用此芯片接口的串行通信系統(tǒng)只需要單一的+5V就可以了。在沒有+12V電源的場(chǎng)合,實(shí)用性更強(qiáng),并且價(jià)格適中,硬件接口簡單。

        三、波特率配置

        1、波特率。單片機(jī)或計(jì)算機(jī)在串口通信時(shí)的速率用波特率表示,它定義為每秒傳輸二進(jìn)制代碼的位數(shù),即1波特=1位/秒,單位bps(位/秒)。

        2、波特率配置。在串行通信中,通信雙方應(yīng)該采用相同的波特率以確保通信成功。PC機(jī)系統(tǒng)中配備有異步通信適配器,該板上有8250異步通信接口,PC機(jī)上波特率的設(shè)置是通過8250初始化而實(shí)現(xiàn)的.在COM2的8250寄存器中,2F8H、2F9H分別設(shè)置為波特率因子的低8位和高8位值.該因子(k)的取值范圍在1~65535之間,對(duì)輸入時(shí)鐘(1.8432)進(jìn)行分頻,產(chǎn)生16倍波特率的時(shí)鐘,波特率為1.843 2/(16k)。MCS-51單片機(jī)的串行接口(UART)是一個(gè)全雙工的接收緩沖式的串行通信接口,可以同時(shí)發(fā)送和接收數(shù)據(jù).波特率隨串行口工作方式選擇不同而異.它除了與系統(tǒng)的晶振、特殊控制寄存器PCON的SMOD位(D7位)有關(guān)外,還與定時(shí)器T1的設(shè)置有關(guān).當(dāng)采用外部時(shí)鐘電路時(shí),設(shè)置串口工作在方式3,便可以選擇使用不同的波特率。

        四、 系統(tǒng)軟件設(shè)計(jì)

        4.1 PC機(jī)部分

        上位機(jī)與單片機(jī)的通信,這里我們借助串口調(diào)試助手來實(shí)現(xiàn)串口通信的接口參數(shù)配置。串口調(diào)試助手就是相當(dāng)于PC機(jī),也就是上位機(jī)。通過串口和其它設(shè)備(比如單片機(jī)或儀器,甚至也可以是PC機(jī))通信。串口調(diào)試助手可以自動(dòng)識(shí)別串口,能設(shè)置校驗(yàn)、數(shù)據(jù)位和停止位,能以ASCII碼或十六進(jìn)制接收或發(fā)送任何數(shù)據(jù)或字符,可以任意設(shè)定自動(dòng)發(fā)送周期,并能將接收數(shù)據(jù)保存成文本文件,能發(fā)送任意大小的文本文件。

        4.2單片機(jī)部分

        51單片機(jī)的串行口是一個(gè)可編程全雙工的通信接口,具有UART(通用異步收發(fā)器)的全部功能,能同時(shí)進(jìn)行數(shù)據(jù)的收發(fā),也可以作為同步移位寄存器使用。它主要由兩個(gè)獨(dú)立的串行數(shù)據(jù)緩沖寄存器SBUF(一個(gè)發(fā)送緩沖寄存器,一個(gè)接收緩沖寄存器)和發(fā)送控制器、接收控制器、輸入移位寄存器及若干控制門電路組成。51單片機(jī)可以通過特殊功能寄存器SBUF對(duì)串口接收或串行發(fā)送寄存器進(jìn)行訪問,兩個(gè)寄存器共用一個(gè)地址99H,但在物理上是兩個(gè)獨(dú)立的寄存器,由指令操作決定訪問寄存器。

        串行口有4種工作方式,我們采用串口方式1是實(shí)現(xiàn)通信。方式1是10位數(shù)據(jù)的異步通信,其中1位起始位,8位數(shù)據(jù)位,1位停止位。TXD為數(shù)據(jù)發(fā)送引腳,RXD為數(shù)據(jù)接收引腳。波特率由定時(shí)器1的溢出率決定。

        控制代碼的主要部分為對(duì)單片機(jī)的一些與串口有關(guān)的特殊功能寄存器進(jìn)行初始化設(shè)置。具體包括:

        ①確定定時(shí)器T1的工作方式(編程設(shè)置TMOD寄存器);

        ②計(jì)算T1的初值,裝載TH1,TL1;

        ③啟動(dòng)T1(編程設(shè)置TCON寄存器中的TR1位);

        ④確定串行工作方式(編程設(shè)置SCON寄存器);

        ⑤串行口工作在哪種中斷方式,進(jìn)行中斷設(shè)置(編程設(shè)置IE、IP寄存器)。

        程序核心代碼:

        (1)初始化程序:

        void init()

        {

        TMOD=0x20;//設(shè)置定時(shí)器1為工作方式2

        TH1=0xfd;// 時(shí)器T1定裝初值

        TL1=0xfd;// 時(shí)器T1定裝初值

        TR1=1;//啟動(dòng)定時(shí)器T1

        REN=1;//允許串口接收

        SM0=0;// 設(shè)定串口工作方式1

        SM1=1;//設(shè)定串口工作方式1

        EA=1;//開總中斷

        ES=1;//開串口中斷

        }

        (2)串口中斷服務(wù)程序:

        void ser() interrupt 4

        {

        RI=0;//產(chǎn)生串口中斷,接收到數(shù)據(jù),RI被硬件置1,將不會(huì)再產(chǎn)生下次中斷,//因此需要軟件清零。

        a=SBUF;//單片機(jī)自動(dòng)將串口接收寄存器中的數(shù)據(jù)讀走給a。

        flag=1;//標(biāo)志位用于在主程序中判斷是否收到了數(shù)據(jù)。}

        本串口通信測(cè)試代碼實(shí)現(xiàn)的基本功能為,上位機(jī)用串口調(diào)試助手發(fā)送一個(gè)字符X,單片機(jī)收到該字符后會(huì)送給上位機(jī)一個(gè)“give back X”,串口波特率為9600bps.在主程序中進(jìn)入while大循環(huán)后,一直檢測(cè)標(biāo)志位flag是否為1,當(dāng)檢測(cè)到為1時(shí),說明程序已經(jīng)執(zhí)行了串口中斷服務(wù)程序,收到了數(shù)據(jù)。同時(shí)檢測(cè)到flag=1時(shí),先將ES清零,關(guān)閉串口中斷,否則當(dāng)發(fā)送完數(shù)據(jù)后,單片機(jī)同樣會(huì)申請(qǐng)串口中斷,再次進(jìn)入中斷服務(wù)程序,flag又被置1,主程序檢測(cè)到flag為1,又會(huì)再次發(fā)送數(shù)據(jù),導(dǎo)致程序發(fā)生死循環(huán)。

        五、結(jié)束語

        本文所介紹的是一種基于keil的PC機(jī)與單片機(jī)之間串行通信的方法,系統(tǒng)硬件電路簡單可靠,軟件程序簡潔易懂。上位機(jī)通過串口調(diào)試助手可以給下位機(jī)發(fā)送指令,系統(tǒng)實(shí)際運(yùn)行效果良好,較好地解決了上位機(jī)與下位機(jī)之間的通信問題,可應(yīng)用在需要此技術(shù)的其他場(chǎng)合。

        參 考 文 獻(xiàn)

        [1]朱立忠,馮丹 PC機(jī)與MCS單片機(jī)串行通信接口電路的設(shè)計(jì) 沈陽工業(yè)學(xué)院學(xué)報(bào),2003

        [2]夏莉英,陳雁 AT89C51單片機(jī)與PC機(jī)的通信接口及編程[J]. 電子工程師.2006

        [3]郭天祥 新概念 51單片機(jī)C語言教程 電子工業(yè)出版社,2013年

        [4]孫育才 MCS-51系列單片微型計(jì)算機(jī)及其應(yīng)用,南京:東南大學(xué)出版社,1997

        [5]殷志華,鄭海,楊浩 單片機(jī)與PC機(jī)串口通信的實(shí)現(xiàn) 中國數(shù)據(jù)通信,2004

        [6]孫力娟,李愛群 仇玉章 陳燕俐 周寧寧 微型計(jì)算機(jī)原理與接口技術(shù) 清華大學(xué)出版社,2013年

        国产69精品久久久久久久| 亚洲国产av自拍精选| 国产精品不卡免费版在线观看| 国产精品一区二区三区av在线 | 青青草大香蕉视频在线观看| 亚洲av综合av一区| 色婷婷综合久久久久中文| 婷婷综合缴情亚洲狠狠| 亚洲一区二区三区乱码在线| 熟妇人妻精品一区二区视频免费的| 搡女人真爽免费视频大全| 中文字幕免费不卡二区| av一区无码不卡毛片| 亚洲精品一品二品av| 五月婷婷开心五月激情| 日韩视频在线观看| 国产精品igao视频| 国产一区亚洲欧美成人| 久久精品国产亚洲av日韩精品 | 精品一区二区av天堂| 五月婷婷激情六月开心| 成熟妇女毛茸茸性视频| 女人高潮内射99精品 | 国产免费破外女真实出血视频| 国产人成在线成免费视频| av天堂免费在线播放| 三年片在线观看免费观看大全中国 | 日韩精品极视频在线观看免费| av无码精品一区二区三区| 成人三级a视频在线观看| 99精品欧美一区二区三区美图| 国产精品午夜福利天堂| 在线视频国产91自拍| 帮老师解开蕾丝奶罩吸乳视频| 亚洲成AⅤ人在线观看无码| 韩国日本在线观看一区二区| 麻豆69视频在线观看| 亚洲av永久无码精品三区在线| 911香蕉视频| 日韩精品一区二区三区含羞含羞草| 蜜桃视频网站在线观看一区|