中文字幕 另类精品,亚洲欧美一区二区蜜桃,日本在线精品视频免费,孩交精品乱子片免费

<sup id="3hn2b"></sup>

    1. <sub id="3hn2b"><ol id="3hn2b"></ol></sub><legend id="3hn2b"></legend>

      1. <xmp id="3hn2b"></xmp>

      2. 新聞中心

        EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于LabVIEW的單片機(jī)串口通信設(shè)計(jì)與實(shí)現(xiàn)

        基于LabVIEW的單片機(jī)串口通信設(shè)計(jì)與實(shí)現(xiàn)

        作者: 時(shí)間:2014-03-25 來(lái)源:網(wǎng)絡(luò) 收藏

        1.概述

        本文引用地址:http://www.antipu.com.cn/article/235288.htm

        在現(xiàn)代測(cè)控系統(tǒng)中,我們經(jīng)常會(huì)采用上位機(jī)和下位機(jī)的開(kāi)發(fā)控制模式。下位機(jī)主要是用來(lái)采集數(shù)據(jù),可以通過(guò)嵌入式控制器、單片機(jī)控制器、PLC等來(lái)實(shí)現(xiàn)。上位機(jī)主要是圖形界面,用來(lái)實(shí)時(shí)顯示采集數(shù)據(jù),并進(jìn)行數(shù)據(jù)分析及處理,同時(shí)可以控制下位機(jī)。上位機(jī)的實(shí)現(xiàn)可以通過(guò)各種高級(jí)語(yǔ)言,比如VB、Delphi等以及NI公司的圖形化虛擬儀器軟件開(kāi)發(fā)環(huán)境.由于采用的是圖形化的編程方法,所以無(wú)論你是否有過(guò)編程經(jīng)驗(yàn),都可以快速、高效地設(shè)計(jì)用戶(hù)界面,實(shí)現(xiàn)與控制硬件的通信,并進(jìn)行數(shù)據(jù)分析和處理。如今已經(jīng)滲透到工業(yè)測(cè)量的各個(gè)領(lǐng)域,與此同時(shí)在嵌入式、FPGA、DSP、實(shí)時(shí)控制等領(lǐng)域也發(fā)揮著巨大的作用。

        2.本實(shí)例實(shí)現(xiàn)的功能

        首先利用單片機(jī)通過(guò)串口發(fā)送“你好,LabVIEW”,LabVIEW將單片機(jī)發(fā)送到數(shù)據(jù)進(jìn)行顯示。通過(guò)這個(gè)實(shí)例來(lái)了解LabVIEW的串口通信設(shè)計(jì)。

        3.下位機(jī)硬件設(shè)計(jì)與軟件設(shè)計(jì)

        (1)硬件設(shè)計(jì)

        單片機(jī)串口通信硬件電路設(shè)計(jì)比較簡(jiǎn)單,主要包括單片機(jī)最小系統(tǒng)以及MAX232和九針串口。

        (2)軟件設(shè)計(jì)

        設(shè)計(jì)源碼如下:

        #include

        #define uchar unsigned char

        #define uint unsigned int

        void SendStr(unsigned char *s);//發(fā)送

        字符串

        void DelayMs(uint xms)//延時(shí)子函數(shù)

        {

        uint i,j;

        for(i=xms;i>0;i-)

        for(j=110;j>0;j-);

        }

        void InitUART(void) //串口初始化

        {

        SCON=0×50; //SCON:模式

        1,8-bitUART,使能接收

        TMOD|=0×20; //TMOD:timer 1,mode

        2,8-bit重裝

        TH1=0xFD; // TH1:重裝值9600波

        特率 晶振11.0592MHz

        TR1=1; //TR1:timer 1打開(kāi)

        EA=1; //打開(kāi)總中斷

        }

        void main(void)

        {

        InitUART();

        while(1)

        {

        SendStr(“你好!LabVIEW!”);

        DelayMs(240);

        DelayMs(240);

        }

        }

        void SendByte(unsigned char dat)

        {

        SBUF=dat;

        while(!TI);

        TI=0;

        }

        void SendStr(unsigned char *s)

        {

        while(*s!='