
VB6單片機(jī)如何和單片機(jī)建立聯(lián)系?
發(fā)布時(shí)間:2017-07-04 責(zé)任編輯:susan
【導(dǎo)讀】PC機(jī)與單片機(jī)之間的通信是通過串行口來實(shí)現(xiàn)的,本文所論述的系統(tǒng)是一個(gè)用于制藥廠倉庫的監(jiān)控和管理系統(tǒng),上位機(jī)(PC機(jī))除負(fù)責(zé)對(duì)下位機(jī)(MCS—51單片機(jī))進(jìn)行監(jiān)管和控制外,還用于采集下位機(jī)傳送的數(shù)據(jù)進(jìn)行數(shù)據(jù)庫化管理。

1.基于VB6的PC機(jī)與多臺(tái)單片機(jī)通信的應(yīng)用
在庫房管理系統(tǒng)中,傳統(tǒng)的方法是通過干濕度表、雙金屬式測量計(jì)等檢測器材進(jìn)行人工測量,然后對(duì)不符合溫度、濕度等要求的庫房進(jìn)行通風(fēng)、去濕、降溫等工作。這種人工方式效率低、誤差大,隨機(jī)事件難以預(yù)料,使庫房管理質(zhì)量得不到很好的保證。本文所論述的系統(tǒng)是一個(gè)用于制藥廠倉庫的監(jiān)控和管理系統(tǒng),上位機(jī)(PC機(jī))除負(fù)責(zé)對(duì)下位機(jī)(MCS—51單片機(jī))進(jìn)行監(jiān)管和控制外,還用于采集下位機(jī)傳送的數(shù)據(jù)進(jìn)行數(shù)據(jù)庫化管理,另外,上位機(jī)還可以對(duì)庫房藥品入庫、出庫、有效期、交易方式等信息進(jìn)行管理,并可用實(shí)時(shí)曲線和報(bào)表的形式查詢。下位機(jī)(MCS-51單片機(jī)。MCS-51單片機(jī)及其外圍設(shè)備我們稱之為庫機(jī))負(fù)責(zé)收集庫房中溫度、濕度、煙霧等信息并傳給上位機(jī)。此系統(tǒng)可使辦公人員坐在辦公室里對(duì)遠(yuǎn)在幾百米之位的庫房進(jìn)行監(jiān)控和管理,不但使辦公人員從繁重的體力勞動(dòng)中解放出來,而且使庫房管理快速準(zhǔn)確,提高了企業(yè)的管理水平和辦公自動(dòng)化水平。
2.系統(tǒng)構(gòu)成及工作原理
PC機(jī)里安裝著用VB6編寫的倉庫管理系統(tǒng),作為前臺(tái)操作系統(tǒng)。系統(tǒng)的數(shù)據(jù)庫格式采用VB數(shù)據(jù)庫格式,也稱為本地?cái)?shù)據(jù)庫,這類數(shù)據(jù)庫文件使用與 MicroSoft Access相同的格式,數(shù)據(jù)的存取利用VB6的ADO控件通過MicroSoft Jet (Joint Engineering Technology) 數(shù)據(jù)庫引擎,速度快工作效率高。此管理系統(tǒng)包括進(jìn)庫藥品、進(jìn)庫日期、出庫藥品、出庫日期、經(jīng)手人等的查詢,以及藥品過期提示等。另外還把庫機(jī)傳送來的數(shù)據(jù)實(shí)時(shí)顯示并存放在本地硬盤中,以便查詢和打印。后臺(tái)系統(tǒng)是一個(gè)上位機(jī)與多臺(tái)下位機(jī)通信的通信系統(tǒng),多臺(tái)下位機(jī)不斷從倉庫采集溫度、濕度、煙霧等數(shù)據(jù)傳給上位機(jī),PC機(jī)進(jìn)行實(shí)時(shí)顯示,并可以設(shè)置溫度、濕度、煙霧、等參數(shù),單片機(jī)根據(jù)設(shè)定參數(shù)來控制倉庫里的去濕、降溫和報(bào)警系統(tǒng),從而使庫房達(dá)到預(yù)定的環(huán)境。如果庫房內(nèi)環(huán)境與設(shè)定環(huán)境不符,單片機(jī)就會(huì)喚醒降溫、去濕設(shè)備,把倉庫內(nèi)參數(shù)鎖定在預(yù)定的范圍之內(nèi),如發(fā)生火災(zāi)、被盜等意外事件,單片機(jī)就會(huì)驅(qū)動(dòng)火災(zāi)、防盜報(bào)警系統(tǒng),并把信號(hào)傳給上位機(jī),使其在屏幕上作出顯示。
3.PC機(jī)與單片機(jī)之間的通信
3.1 通信方式的實(shí)現(xiàn)
PC機(jī)與單片機(jī)之間的通信是通過串行口來實(shí)現(xiàn)的(如圖2)。由于單片機(jī)系統(tǒng)電平是TTL電平,與標(biāo)注RS-232C不兼容,又考慮到通信距離,我們采用Maxim 公司生產(chǎn)的Max485芯片將TTL電平轉(zhuǎn)化為RS-485標(biāo)準(zhǔn),然后再進(jìn)行RS-485與RS-232之間的轉(zhuǎn)換,再與PC機(jī)的串口連接。這種轉(zhuǎn)換方式延長了通信的距離,最長可達(dá)1200米,提高了系統(tǒng)的可行性。
3.2 通信協(xié)議及程序設(shè)計(jì)思想
本系統(tǒng)由于是一臺(tái)上位機(jī)和多臺(tái)下位機(jī),所以要給下位機(jī)設(shè)置一個(gè)通信代碼,為簡單起見,取0~255之間的任意四個(gè)即可。當(dāng)PC機(jī)欲與某個(gè)單片機(jī)通信時(shí),便向所有單片機(jī)發(fā)出通信代碼。單片機(jī)在接到代碼后與自己的代碼進(jìn)行核對(duì),如果一致則向PC機(jī)發(fā)出回應(yīng),開始通信,其它的單片機(jī)繼續(xù)采集和傳輸數(shù)據(jù)。
3.3 上位機(jī)程序設(shè)計(jì)
VB6中有一個(gè)專門用來串行通信的控件---MSComm控件。MSComm控件最常用的屬性如下:
CommPort屬性:設(shè)置并返回通信端口號(hào),指定PC機(jī)上用于通信的串口
SetTIng屬性:以字符串的形式設(shè)置并返回波特率,奇偶校驗(yàn),數(shù)據(jù)位和停止位
PortOpen屬性:設(shè)置并返回通信端口的狀態(tài),用于打開和關(guān)閉端口
Rthreshold 屬性:MSComm 控件設(shè)置CommEvent 屬性為ComEvReceive并產(chǎn)生OnComm之前設(shè)置并返回的要接收的字符數(shù)
Input屬性:從接收緩沖區(qū)返回和刪除字符,用于接收數(shù)據(jù)
InputLen 屬性:設(shè)置并返回Input屬性從接收緩沖區(qū)讀取的字符數(shù)
Output屬性:向緩沖區(qū)寫一個(gè)字符,用于發(fā)送數(shù)據(jù)
特別推薦
- 如何解決在開關(guān)模式電源中使用氮化鎵技術(shù)時(shí)面臨的挑戰(zhàn)?
- 不同拓?fù)浣Y(jié)構(gòu)中使用氮化鎵技術(shù)時(shí)面臨的挑戰(zhàn)有何差異?
- 多通道同步驅(qū)動(dòng)技術(shù)中的死區(qū)時(shí)間納米級(jí)調(diào)控是如何具體實(shí)現(xiàn)的?
- 電壓放大器:定義、原理與技術(shù)應(yīng)用全景解析
- 減排新突破!意法半導(dǎo)體新加坡工廠冷卻系統(tǒng)升級(jí),護(hù)航可持續(xù)發(fā)展
- 低排放革命!貿(mào)澤EIT系列聚焦可持續(xù)技術(shù)突破
技術(shù)文章更多>>
- 連偶科技攜“中國IP+AIGC+空間計(jì)算”三大黑科技首秀西部電博會(huì)!
- 儀表放大器如何驅(qū)動(dòng)物聯(lián)網(wǎng)終端智能感知?
- 儀表放大器如何成為精密測量的幕后英雄?
- 精密信號(hào)鏈技術(shù)解析:從原理到高精度系統(tǒng)設(shè)計(jì)
- 性能與成本的平衡:獨(dú)石電容原廠品牌深度對(duì)比
技術(shù)白皮書下載更多>>
- 車規(guī)與基于V2X的車輛協(xié)同主動(dòng)避撞技術(shù)展望
- 數(shù)字隔離助力新能源汽車安全隔離的新挑戰(zhàn)
- 汽車模塊拋負(fù)載的解決方案
- 車用連接器的安全創(chuàng)新應(yīng)用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索
焊接設(shè)備
焊錫焊膏
恒溫振蕩器
恒壓變壓器
恒壓穩(wěn)壓器
紅外收發(fā)器
紅外線加熱
厚膜電阻
互連技術(shù)
滑動(dòng)分壓器
滑動(dòng)開關(guān)
輝曄
混合保護(hù)器
混合動(dòng)力汽車
混頻器
霍爾傳感器
機(jī)電元件
基創(chuàng)卓越
激光二極管
激光器
計(jì)步器
繼電器
繼電器接線
減速電機(jī)
檢波二極管
檢波器
檢驗(yàn)設(shè)備
鑒頻器
江蘇商絡(luò)
交流電機(jī)