日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 電源 > 數(shù)字電源
[導(dǎo)讀]在單片機(jī)控制系統(tǒng)中,經(jīng)常會涉及到上位機(jī)與下位機(jī)的通信。本文主要通過一個簡單的實例來介紹labVIEW與單片機(jī)的串口通信實現(xiàn)過程,包括下位機(jī)單片機(jī)的硬件與軟件設(shè)計,上位機(jī)LabVIEW的前面板和程序框圖設(shè)計。

1.概述

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

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

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

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

(1)硬件設(shè)計

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

(2)軟件設(shè)計

設(shè)計源碼如下:

#include

#define uchar unsigned char

#define uint unsigned int

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

字符串

void DelayMs(uint xms)//延時子函數(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打開

EA=1; //打開總中斷

}

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!='\0‘)//\0表示字符串結(jié)束

標(biāo)志,//通過檢測是否字符串末尾

{

SendByte(*s);

s++;

}[!--empirenews.page--]

4.上位機(jī)LabVIEW前面板與程序框圖

(1)相關(guān)函數(shù)介紹

在做LabVIEW串口通信的時候首先要安裝VISA驅(qū)動,驅(qū)動可以從網(wǎng)上下載。LabVIEW對串口的操作主要是讀操作和寫操作。本實例主要是接受數(shù)據(jù),也就是讀操作,在這里首先介紹一下與此實例相關(guān)控件和函數(shù)。

①VISA資源名稱

在“新式”控件選項卡下“I/O”子選項卡下有“VISA資源名稱”控件。安裝好VISA驅(qū)動后,與硬件連接好后,該控件下可以列出相應(yīng)的COM口,可以選擇合適的COM口。

②VISA配置串口函數(shù)

該函數(shù)位于函數(shù)選項卡下的“儀器I/O”

子選項卡下,主要用來對串口進(jìn)行參數(shù)配置,包括波特率、數(shù)據(jù)比特、奇偶校驗等。

③VISA讀取和VISA關(guān)閉函數(shù)

VISA讀取函數(shù)的功能是從VISA資源名稱所指定的設(shè)備或接口中讀取指定數(shù)量的字節(jié),并將數(shù)據(jù)返回至讀取緩沖區(qū)。VISA關(guān)閉函數(shù)的功能是關(guān)閉VISA資源名稱指定的設(shè)備會話句柄或事件對象。

(2)程序框圖設(shè)計

程序框圖設(shè)計如圖1所示。

 

 

5.測試

將硬件連接好后,上電,下載程序,運行l(wèi)abVIEW,我們可以看到在讀取緩沖區(qū)里接收到了單片機(jī)發(fā)送來的字符串“你好!LavVIEW”.如圖2所示。

 

 

6.總結(jié)

利用LabVIEW進(jìn)行上位機(jī)設(shè)計,其界面美觀,實現(xiàn)起來較容易,可以很方便的運用于各種測量監(jiān)控系統(tǒng)中。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉