国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于VB與PIC單片機(jī)實(shí)時(shí)溫度檢測(cè)系統(tǒng)設(shè)計(jì)與仿真

2016-11-10 06:48:22田苗法
大眾科技 2016年2期
關(guān)鍵詞:PC機(jī)電路設(shè)計(jì)電平

田苗法

基于VB與PIC單片機(jī)實(shí)時(shí)溫度檢測(cè)系統(tǒng)設(shè)計(jì)與仿真

田苗法

(安徽機(jī)電職業(yè)技術(shù)學(xué)院,安徽 蕪湖 241000)

文章采用DS18b20作為溫度傳感器,將溫度信號(hào)轉(zhuǎn)變?yōu)殡娦盘?hào)送給PIC單片機(jī),再由單片機(jī)通過(guò)串口通信將溫度值送給PC機(jī),并在VB界面中用實(shí)時(shí)動(dòng)態(tài)曲線將溫度變化趨勢(shì)展示出來(lái),通過(guò)PC機(jī)就可以直觀地監(jiān)測(cè)被測(cè)對(duì)象的溫度及變化曲線。最后,通過(guò)電路仿真軟件proteus和虛擬串口軟件(Virtual Serial Port Driver)對(duì)該系統(tǒng)進(jìn)行了仿真,驗(yàn)證了該系統(tǒng)是正確的,并具有較強(qiáng)的實(shí)用性和現(xiàn)實(shí)意義。

VB;PIC單片機(jī);溫度檢測(cè)系統(tǒng);設(shè)計(jì)與仿真

1 引言

本設(shè)計(jì)下位機(jī)采用16F877A單片機(jī),該單片機(jī)內(nèi)置USRT串口通信模塊,利用該模塊可以更方便地跟PC機(jī)進(jìn)行通信,簡(jiǎn)化了C程序代碼設(shè)計(jì)。利用DS18B20將溫度轉(zhuǎn)變?yōu)殡娦盘?hào),然后發(fā)給單片機(jī),單片機(jī)對(duì)數(shù)據(jù)進(jìn)行分析和計(jì)算等處理,通過(guò)串口將數(shù)據(jù)傳輸給PC機(jī),在PC機(jī)與單片機(jī)之間要用電平轉(zhuǎn)換芯片MAX232進(jìn)行電平轉(zhuǎn)換。在PC機(jī)上采用VB進(jìn)行編程,在VB窗體上顯示溫度值并通過(guò)動(dòng)態(tài)曲線實(shí)時(shí)顯示溫度的變化趨勢(shì)。圖1為該系統(tǒng)的數(shù)據(jù)流程圖。

圖1 數(shù)據(jù)流程示意圖

2 各元件簡(jiǎn)介

2.1PIC16F877A單片機(jī)

PIC16F877A單片機(jī)是美國(guó)Microchip公司生產(chǎn)的8位單片機(jī),具有獨(dú)特的RISC結(jié)構(gòu),即數(shù)據(jù)總線和指令總線分離的哈佛結(jié)構(gòu),該結(jié)構(gòu)具有執(zhí)行效率高和速度快等優(yōu)點(diǎn)[1]。另外,片內(nèi)帶有EEPROM、A/D轉(zhuǎn)換器、USART通信模塊、MSSP通信模塊等,功能強(qiáng)大,可以簡(jiǎn)化外圍硬件電路設(shè)計(jì)和程序設(shè)計(jì)。本次電路設(shè)計(jì)應(yīng)用了其內(nèi)部的USRT串口通信功能模塊,將溫度信號(hào)經(jīng)過(guò)MAX232電平轉(zhuǎn)換后上傳給PC機(jī)。

圖2 PIC16F877A引腳示意圖

2.2 溫度傳感器DS18B20

DS18B20是DALLAS公司生產(chǎn)的單總線式數(shù)字溫度傳感器,它具有微型化、低功耗、高性能、抗干擾能力強(qiáng)等優(yōu)點(diǎn),特別適用于構(gòu)成多點(diǎn)溫度測(cè)控系統(tǒng),可直接溫度信號(hào)轉(zhuǎn)化成串行數(shù)字信號(hào)給單片機(jī)處理[2]。如圖3所示,它具有3個(gè)引腳,溫度測(cè)量范圍為-55~+125℃,測(cè)溫精度可達(dá)0.0625℃。單片機(jī)還可以用一根端口線與多個(gè)DS18B20通信,占用端口少,可節(jié)省大量的引線和邏輯電路。

圖3 DS18B20引腳示意圖

2.3電平轉(zhuǎn)換芯片MAX232

MAX232是美信公司專門為電腦的RS-232標(biāo)準(zhǔn)串口設(shè)計(jì)的單電源電平轉(zhuǎn)換芯片,使用+5v單電源供電。PC機(jī)是用正負(fù)電壓來(lái)表示邏輯狀態(tài),與TTL以高低電平表示邏輯狀態(tài)的規(guī)定不同。因此,為了實(shí)現(xiàn)計(jì)算機(jī)與TTL器件連接,必須在RS-232電路 與TTL電路之間進(jìn)行電平和邏輯關(guān)系的變換。目前廣泛使用集成電路轉(zhuǎn)換器件,MAX232芯片就是其中一種,可完成TTL與RS-232電路之間的雙向電平轉(zhuǎn)換。

圖4 MAX232引腳示意圖

3 系統(tǒng)電路設(shè)計(jì)與仿真

3.1硬件電路設(shè)計(jì)

應(yīng)用電路仿真軟件proteus對(duì)硬件電路進(jìn)行了設(shè)計(jì)與仿真,圖5所示,其中DS18B20的數(shù)據(jù)線與單片機(jī)RB6端口連接,R1為該單總線的上拉電阻。COMPIM可以使proteus在仿真環(huán)境下的系統(tǒng)與實(shí)際物理環(huán)境直接交互,這種模型稱為物理接口模型(PIM),即Proteus中的電路通過(guò)COMPIM組件與PC機(jī)進(jìn)行數(shù)據(jù)交換,但還需要安裝虛擬串口驅(qū)動(dòng)軟件Virtual Serial Port Driver,簡(jiǎn)稱VSPD,這個(gè)驅(qū)動(dòng)軟件可以模擬出兩個(gè)虛擬串口,并將這個(gè)兩個(gè)串口連接。 在仿真環(huán)境下,COMPIM組件與單片機(jī)之間不接MAX232,但在實(shí)際電路設(shè)計(jì)中要串接接MAX232。

圖5 proteus電路設(shè)計(jì)圖與仿真

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

該系統(tǒng)軟件設(shè)計(jì)包括下位機(jī)軟件設(shè)計(jì)和上位機(jī)軟件設(shè)計(jì)。

下位機(jī)采用C語(yǔ)言編程,通過(guò)mplab軟件和picc編譯器生成可執(zhí)行文件,然后下載到單片機(jī)中。該程序?qū)崿F(xiàn)了單片機(jī)與DS18B20進(jìn)行通信,包括啟動(dòng)DS18B20進(jìn)行溫度轉(zhuǎn)換和讀取溫度值,并且把溫度值通過(guò)COMPIM組件發(fā)給上位機(jī)。編程中采用PIC單片機(jī)內(nèi)置的USRT串口通信模塊,設(shè)置串口通信的波特率為9600,無(wú)奇偶校驗(yàn)位和一個(gè)停止位[3]。

上位機(jī)采用VB語(yǔ)言編程,利用VB中提供的MSComm控件實(shí)現(xiàn)與Proteus進(jìn)行數(shù)據(jù)交換。程序代碼如下:

Private Sub Form_Load()'串口通信初始化程序

MSComm1.CommPort = 1'選擇com1端口

MSComm1.InputLen = 0'設(shè)置input一次讀取緩沖區(qū)所有內(nèi)容

MSComm1.InputMode = 1'設(shè)置以二進(jìn)制形式讀取數(shù)據(jù)

MSComm1.InBufferCount = 0'清空接收緩沖區(qū)內(nèi)容

MSComm1.InBufferSize = 1024'設(shè)置接收緩沖區(qū)空間大小為1024字節(jié)

MSComm 1.Settings = "9600,n,8,1"'設(shè)置波特率為9600,無(wú)奇偶校驗(yàn)和1個(gè)停止位

MSComm 1.RThreshold = 1'每收到一個(gè)字節(jié)就產(chǎn)生中斷,觸發(fā)oncomm事件

MSComm1.PortOpen = True'打開(kāi)通信端口

End Sub

Private Sub MSComm1_OnComm()'在文本框中顯示溫度值程序

inputdata = ms1.Input

For i = LBound(inputdata) To UBound(inputdata)

temp = temp & inputdata(i)

Next i

Text1.Text = temp & "℃"

End Sub

通過(guò)以上程序接收從單片機(jī)發(fā)過(guò)來(lái)的數(shù)據(jù),再通過(guò)一個(gè)文本框?qū)囟戎碉@示在窗體上,并借助坐標(biāo)系,將溫度變化曲線顯示出來(lái),該曲線可以直觀地展示溫度的變化趨勢(shì)。如圖6所示:

圖6 VB窗體實(shí)時(shí)溫度變化曲線顯示

4 結(jié)論

該系統(tǒng)實(shí)現(xiàn)了單片機(jī)與PC機(jī)之間通過(guò)串口進(jìn)行數(shù)據(jù)交換,在PC機(jī)上直觀地顯示出溫度的實(shí)時(shí)變化曲線。通過(guò)對(duì)系統(tǒng)進(jìn)行仿真與調(diào)試,證明該系統(tǒng)設(shè)計(jì)是正確的,具有較強(qiáng)的實(shí)用性,并且電路硬件接線簡(jiǎn)單,測(cè)量精度高,溫度測(cè)量范圍廣泛,誤差較小,可廣泛應(yīng)用于對(duì)溫度的檢測(cè)和控制等領(lǐng)域。

[1] 徐瑋,沈建良,莊建清.PIC單片機(jī)快速入門[M].北京:北京航空航天大學(xué)出版社,2010.

[2] 彭偉.單片機(jī)C語(yǔ)言程序設(shè)計(jì)實(shí)訓(xùn)[M].北京:北京航空航天大學(xué)出版社,2010.

[3] 李學(xué)海.PIC單片機(jī)實(shí)用教程—提高篇[M].北京:北京航空航天大學(xué)出版社,2002.

Detection system’s design and simulation based on the real-time temperature of VB and PIC single chip microcomputer

By taking DS18b20 as a temperature sensor, temperature signals are transited into electric signal which firstly transited to PIC single chip microcomputer and then sent the temperature to PC through serial communication. In addition, this temperature variation trend can be reflected with real-time dynamic curve on VB interface. The temperature and its changing curves of monitored objects can be directly observed through PC. In the end, with circuit simulation software proteus and virtual serial port driver to simulate this system,it is verified that this system is correct and with strong practicability and practical significance.

VB; PIC single chip microcomputer; temperature detecting system; design and simulation

TP311

A

1008-1151(2016)02-0027-02

2016-01-10

田苗法(1984-),男,山東菏澤人,供職于安徽機(jī)電職業(yè)技術(shù)學(xué)院汽車工程系,研究方向?yàn)槠囯娮优c電控技術(shù)。

猜你喜歡
PC機(jī)電路設(shè)計(jì)電平
Altium Designer在電路設(shè)計(jì)中的應(yīng)用
電子制作(2019年16期)2019-09-27 09:34:58
負(fù)反饋放大電路設(shè)計(jì)
電子制作(2019年23期)2019-02-23 13:21:36
基于PC機(jī)與單片機(jī)的多機(jī)通信技術(shù)及抗干擾方法
基于三菱FXPLC的感應(yīng)淬火機(jī)床與PC機(jī)的串行通信實(shí)現(xiàn)
VC.NET下實(shí)現(xiàn)dsPIC單片機(jī)與PC機(jī)的通信
電子制作(2017年23期)2017-02-02 07:16:47
NPC五電平Z源逆變器的設(shè)計(jì)研究
基于UC3843的60W升壓電路設(shè)計(jì)
基于三電平光伏并網(wǎng)逆變器控制系統(tǒng)的研究與實(shí)踐
基于NPC三電平變換器的STATCOM研究
一種多電平逆變器及其并網(wǎng)策略
武川县| 大洼县| 安吉县| 盐城市| 东丽区| 迭部县| 南郑县| 庄河市| 淳化县| 潞城市| 南安市| 保康县| 金溪县| 澳门| 长丰县| 柏乡县| 襄樊市| 蒙山县| 安康市| 伊宁县| 晴隆县| 平潭县| 高阳县| 沙坪坝区| 中山市| 长岭县| 周至县| 黄石市| 金山区| 甘孜县| 赤峰市| 界首市| 云浮市| 新平| 乌拉特前旗| 海丰县| 泸州市| 商河县| 哈尔滨市| 宣武区| 咸阳市|