
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)的方法是通過干濕度表、雙金屬式測(cè)量計(jì)等檢測(cè)器材進(jìn)行人工測(cè)量,然后對(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)境。如果庫房?jī)?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)換方式延長(zhǎng)了通信的距離,最長(zhǎng)可達(dá)1200米,提高了系統(tǒng)的可行性。
3.2 通信協(xié)議及程序設(shè)計(jì)思想
本系統(tǒng)由于是一臺(tái)上位機(jī)和多臺(tái)下位機(jī),所以要給下位機(jī)設(shè)置一個(gè)通信代碼,為簡(jiǎn)單起見,取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ù)
特別推薦
- 強(qiáng)強(qiáng)聯(lián)手!貿(mào)澤電子攜手ATI,為自動(dòng)化產(chǎn)線注入核心部件
- 瞄準(zhǔn)精準(zhǔn)醫(yī)療,Nordic新型芯片讓可穿戴醫(yī)療設(shè)備設(shè)計(jì)更自由
- 信號(hào)切換全能手:Pickering 125系列提供了從直流到射頻的完整舌簧繼電器解決方案
- 射頻供電新突破:Flex發(fā)布兩款高效DC/DC轉(zhuǎn)換器,專攻微波與通信應(yīng)用
- 電源架構(gòu)革新:多通道PMIC并聯(lián)實(shí)現(xiàn)大電流輸出的設(shè)計(jì)秘籍
技術(shù)文章更多>>
- 特瑞仕半導(dǎo)體株式會(huì)社發(fā)布XC9711 系列新品降壓 DC/DC 轉(zhuǎn)換器
- 技術(shù)解決方案導(dǎo)向:破解車載攝像頭終檢痛點(diǎn) ——FT8340 多通道電池模擬器的產(chǎn)線應(yīng)用
- 從分立器件到集成模塊,安森美全鏈路提升UPS功率密度與效率
- 村田參展CES 2026
- 2025智能戒指排名前十選購指南:從健康監(jiān)測(cè)到穿戴的全面解析
技術(shù)白皮書下載更多>>
- 車規(guī)與基于V2X的車輛協(xié)同主動(dòng)避撞技術(shù)展望
- 數(shù)字隔離助力新能源汽車安全隔離的新挑戰(zhàn)
- 汽車模塊拋負(fù)載的解決方案
- 車用連接器的安全創(chuàng)新應(yīng)用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索
隔離變壓器
隔離開關(guān)
個(gè)人保健
工業(yè)電子
工業(yè)控制
工業(yè)連接器
工字型電感
功率表
功率電感
功率電阻
功率放大器
功率管
功率繼電器
功率器件
共模電感
固態(tài)盤
固體繼電器
光傳感器
光電池
光電傳感器
光電二極管
光電開關(guān)
光電模塊
光電耦合器
光電器件
光電顯示
光繼電器
光控可控硅
光敏電阻
光敏器件




