欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

自動(dòng)檢測(cè)串口信息的方法

文檔序號(hào):6430252閱讀:370來(lái)源:國(guó)知局
專(zhuān)利名稱(chēng):自動(dòng)檢測(cè)串口信息的方法
技術(shù)領(lǐng)域
本發(fā)明涉及通信技術(shù)領(lǐng)域,特別是自動(dòng)檢測(cè)串口信息的方法,包括串口號(hào)及波特率。
背景技術(shù)
目前,在儀器儀表以及通信技術(shù)領(lǐng)域,特別是使用串口通信設(shè)備進(jìn)行調(diào)試、運(yùn)行等情況下,通常需要在設(shè)備管理器中查看計(jì)算機(jī)具有的串口依次手動(dòng)打開(kāi),如果不知道設(shè)備的波特率還要將常用的波特率挨個(gè)試驗(yàn),導(dǎo)致工作效率的降低以及無(wú)意義的重復(fù)勞動(dòng),如果同時(shí)有很多設(shè)備需要連接的話將會(huì)是一個(gè)不小的工作量。

發(fā)明內(nèi)容
本發(fā)明的目的在于克服現(xiàn)有技術(shù)的不足,提供一種自動(dòng)檢測(cè)串口信息的方法,其步驟如下
首先,在串口通信終端和上位機(jī)中分別預(yù)裝握手協(xié)議;
當(dāng)串口通信終端通過(guò)串口連接上位機(jī)時(shí),上位機(jī)根據(jù)預(yù)存于存儲(chǔ)單元的可用串口信息,以預(yù)設(shè)波特率依次向所有可用串口發(fā)送握手請(qǐng)求,如果有至少一個(gè)的串口反饋有握手應(yīng)答,則握手成功,并與該串口下連接的串口通信終端建立通信,同時(shí)該串口信息將從存儲(chǔ)單元中存儲(chǔ)的可用串口中刪除,該串口號(hào)和接受到握手應(yīng)答的波特率值一并保存被在存儲(chǔ)單元并通過(guò)人機(jī)界面反饋串口號(hào)和波特率值;
進(jìn)一步地,前述的自動(dòng)檢測(cè)串口信息的方法,其中所述可用串口的判斷如下 上位機(jī)依次打開(kāi)所有串口,如果能夠被成功打開(kāi),說(shuō)明該串口可用,同時(shí)將可用串口的串口號(hào)保存在上位機(jī)的存儲(chǔ)單元備用。所述的自動(dòng)檢測(cè)串口信息的方法,其中還包括
當(dāng)一個(gè)串口通信終端注冊(cè)完成之后,上位機(jī)會(huì)重復(fù)向所有可用串口發(fā)送一次握手請(qǐng)求,若有握手應(yīng)答反饋,則繼續(xù)注冊(cè),反之,結(jié)束。作為優(yōu)選方案自動(dòng)檢測(cè)串口信息的方法,上位機(jī)收到串口通信終端的握手應(yīng)答時(shí)間為0毫秒到5000毫秒之間。作為優(yōu)選方案自動(dòng)檢測(cè)串口信息的方法,上位機(jī)收到串口通信終端的握手應(yīng)答時(shí)間為0毫秒到200毫秒之間。作為優(yōu)選方案自動(dòng)檢測(cè)串口信息的方法,上位機(jī)自身所有的串口數(shù)不少于1個(gè)。作為優(yōu)選方案自動(dòng)檢測(cè)串口信息的方法,上位機(jī)自身所有的串口數(shù)為2至10個(gè)。所述預(yù)設(shè)波特率次序依次如下
300位每秒、600位每秒、1200位每秒、2400位每秒、4800位每秒、9600位每秒、19200位每秒、38400位每秒、43000位每秒、56000位每秒、115200位每秒。所述的握手協(xié)議如下
串口通信終端與上位機(jī)通信協(xié)議為10個(gè)字節(jié)固定長(zhǎng)度的ASCII碼,協(xié)議格式為AAA#BBB#CC,其中AAA為指令類(lèi)型,BBB為操作,CC為參數(shù),#為間隔符,可以沒(méi)有。指令類(lèi)型包括兩種CMD和DAT,CMD代表發(fā)送的為指令,DAT代表的發(fā)送的為數(shù)據(jù)。開(kāi)始握手時(shí),上位機(jī)向串口通信終端發(fā)送 CMD#CHK#00 表示上位機(jī)檢查串口通信終端是否正常
串口通信終端收到指令后,如果串口通信終端正常向上位機(jī)發(fā)送 CMD#CHK#0K
如果串口通信終端有錯(cuò)誤,向上位機(jī)發(fā)送 CMD#ERR#XX 注XX為錯(cuò)誤代碼。當(dāng)上位機(jī)收到串口通信終端發(fā)送的CMD#CHK#0K后,向串口通信終端發(fā)送地址請(qǐng)求
CMD#ADD#RE
串口通信終端收到地址請(qǐng)求時(shí),發(fā)送 CMD#ADD#XX
注XX為ASCII碼地址,串口終端設(shè)備地址00-99 上位機(jī)向串口通信終端發(fā)送注冊(cè)信息請(qǐng)求碼 CMD#VER#RE
串口通信終端收到上述請(qǐng)求時(shí),發(fā)送 CMD# VER #XX
注XX為ASCII碼地址,串口通信終端代碼00-99 上位機(jī)向串口通信終端發(fā)送數(shù)據(jù)請(qǐng)求碼 CMD#REQ#XX
注XX為ASCII碼數(shù)據(jù)類(lèi)型請(qǐng)求
串口通信終端收到數(shù)據(jù)請(qǐng)求時(shí),發(fā)送數(shù)據(jù)長(zhǎng)度包
DAT#NUMXXX
注XXX為ASCII碼數(shù)據(jù)包個(gè)數(shù)
接下來(lái)串口通信終端發(fā)送長(zhǎng)度為10的數(shù)據(jù)包,發(fā)送完畢后發(fā)送
CMD#DAT#0K
表示數(shù)據(jù)發(fā)送完畢。


圖1本發(fā)明實(shí)施例1的流程圖; 圖2本發(fā)明實(shí)施例2的流程圖。
具體實(shí)施例方式下面結(jié)合實(shí)施例對(duì)本發(fā)明做進(jìn)一步說(shuō)明。實(shí)施例1
如圖1所示,本實(shí)施例中的上位機(jī)的串口數(shù)為10個(gè),本發(fā)明的邏輯流程如下上位機(jī)開(kāi)機(jī)是啟動(dòng)依串口號(hào)次序打開(kāi)自有串口,如果能夠被成功打開(kāi),說(shuō)明該串口可用,當(dāng)串口均被打開(kāi)后,判斷最后一次打開(kāi)的串口號(hào)是否為10,如果是上位機(jī)將可用串口的串口號(hào)保存在上位機(jī)的存儲(chǔ)單元備用,否則返回步驟S101。當(dāng)串口通信終端通過(guò)串口連接上位機(jī)時(shí),上位機(jī)根據(jù)預(yù)存于存儲(chǔ)單元的可用串口信息,以預(yù)設(shè)波特率依次向所有可用串口發(fā)送握手請(qǐng)求,如果有至少一個(gè)的串口在200毫秒內(nèi)反饋有握手應(yīng)答,則握手成功,并與該串口下連接的串口通信終端建立通信,同時(shí)該串口信息將從存儲(chǔ)單元中存儲(chǔ)的可用串口中刪除,該串口號(hào)和接受到握手應(yīng)答的波特率值一并被保存在存儲(chǔ)單元并通過(guò)人機(jī)界面反饋串口號(hào)和波特率值;否則重復(fù)本步驟S104。通信建立成功后,串口通信終端會(huì)將固化于其中的注冊(cè)信息發(fā)送給上位機(jī)進(jìn)行注冊(cè),上位機(jī)將串口通信終端的注冊(cè)信息及其所連接的串口的信息一并保存于上位機(jī)的存儲(chǔ)單元,自動(dòng)注冊(cè)完成。所述的注冊(cè)信息包括通信終端的地址、產(chǎn)品型號(hào)、產(chǎn)品編號(hào)、固件版本號(hào)、產(chǎn)品生產(chǎn)商中的至少一種。當(dāng)一個(gè)串口通信終端注冊(cè)完成之后,上位機(jī)會(huì)重復(fù)向所有可用串口發(fā)送一次握手請(qǐng)求,若有握手應(yīng)答反饋,則返回步驟S104,反之,進(jìn)入步驟S109,統(tǒng)計(jì)并保存應(yīng)答設(shè)備所對(duì)應(yīng)串口的串口號(hào)和波特率值等信息。實(shí)施例2
如圖2所示,本實(shí)施例中的上位機(jī)的串口數(shù)為2個(gè),本發(fā)明的邏輯流程如下上位機(jī)開(kāi)機(jī)是啟動(dòng)依串口號(hào)次序打開(kāi)自有串口,如果能夠被成功打開(kāi),說(shuō)明該串口可用,當(dāng)串口均被打開(kāi)后,判斷最后一次打開(kāi)的串口號(hào)是否為2,如果是上位機(jī)將可用串口的串口號(hào)保存在上位機(jī)的存儲(chǔ)單元備用,否則返回步驟S201。當(dāng)串口通信終端通過(guò)串口連接上位機(jī)時(shí),上位機(jī)根據(jù)預(yù)存于存儲(chǔ)單元的可用串口信息,以預(yù)設(shè)波特率依次向所有可用串口發(fā)送握手請(qǐng)求, 如果有至少一個(gè)的串口在5000毫秒內(nèi)反饋有握手應(yīng)答,則握手成功,并與該串口下連接的串口通信終端建立通信,同時(shí)該串口信息將從存儲(chǔ)單元中存儲(chǔ)的可用串口中刪除,該串口號(hào)和接受到握手應(yīng)答的波特率值一并保存在存儲(chǔ)單元并通過(guò)人機(jī)界面反饋串口號(hào)和波特率值,否則重復(fù)本步驟S204。當(dāng)一個(gè)串口通信終端注冊(cè)完成之后,上位機(jī)會(huì)重復(fù)向可用串口發(fā)送一次握手請(qǐng)求,若有握手應(yīng)答反饋,則返回步驟S204,反之,進(jìn)入步驟S209,統(tǒng)計(jì)并保存應(yīng)答設(shè)備所對(duì)應(yīng)串口的串口號(hào)和波特率值等信息。實(shí)施例3
本實(shí)施例為利用本發(fā)明所述的方法完成的一種軟件程序,上述程序運(yùn)行在上位機(jī)中, 該程序不僅可以完成本發(fā)明的技術(shù)效果,同時(shí)還可以將上位機(jī)的串口信息通過(guò)人機(jī)界面報(bào)
告給操作人員。當(dāng)串口自動(dòng)識(shí)別程序運(yùn)行時(shí),首先分別打開(kāi)計(jì)算機(jī)上串口 1至串口 10,如果串口打開(kāi)成功說(shuō)明串口存在且沒(méi)有被占用。掃描完畢后,將可用的串口保存存儲(chǔ)單元。之后,程序會(huì)依次打開(kāi)可用的串口,并發(fā)送握手請(qǐng)求,如果在1000毫秒內(nèi)收到串口通信終端的握手應(yīng)答,則認(rèn)為通信成功。握手成功后,串口通信終端向上位機(jī)發(fā)送地址,在上位機(jī)上進(jìn)行注冊(cè),同時(shí)上位機(jī)也將該設(shè)備連接的串口信息保存,完成自動(dòng)識(shí)別過(guò)程。該實(shí)施例中的上位機(jī)為X86架構(gòu)PC機(jī)。軟件開(kāi)發(fā)環(huán)境Microsoft Visual Studio 2008 ;編程語(yǔ)言為C#語(yǔ)言。 本程序主要功能及特點(diǎn)本程序應(yīng)用于各種串口通信設(shè)備,自動(dòng)獲取連接設(shè)備的串口信息。此程序有簡(jiǎn)單,操作方便等特點(diǎn),同時(shí)也大大的節(jié)省了人的工作時(shí)間,節(jié)約了人力成本。
以上所述,僅是本發(fā)明的較佳實(shí)施例而已,并非對(duì)本發(fā)明做任何形式上的限制,雖然本發(fā)明已經(jīng)以較佳實(shí)施例披露如上述,然而并非用于限定本發(fā)明,任何熟悉本專(zhuān)業(yè)的技術(shù)人員,在不脫離本發(fā)明的技術(shù)方案范圍內(nèi),可以利用上述披露的技術(shù)內(nèi)容做出些許更改視為等同變化的等效實(shí)施例,凡未脫離本發(fā)明技術(shù)方案的內(nèi)容,依據(jù)本發(fā)明的技術(shù)實(shí)質(zhì)對(duì)以上實(shí)施例做出任何簡(jiǎn)單修改、等同變化與修飾,均屬于本發(fā)明的技術(shù)范圍。
權(quán)利要求
1.自動(dòng)檢測(cè)串口信息的方法,其步驟如下 在串口通信終端和上位機(jī)中分別預(yù)裝握手協(xié)議;當(dāng)串口通信終端通過(guò)串口連接上位機(jī)時(shí),上位機(jī)根據(jù)預(yù)存于存儲(chǔ)單元的可用串口信息,以預(yù)設(shè)波特率依次向所有可用串口發(fā)送握手請(qǐng)求,如果有至少一個(gè)的串口反饋有握手應(yīng)答,則握手成功,并與該串口下連接的串口通信終端建立通信,同時(shí)該串口信息將從存儲(chǔ)單元中存儲(chǔ)的可用串口中刪除,該串口號(hào)和接受到握手應(yīng)答的波特率值一并被保存在存儲(chǔ)單元并通過(guò)人機(jī)界面反饋串口號(hào)和波特率值。
2.根據(jù)權(quán)利要求1所述的自動(dòng)檢測(cè)串口信息的方法,其中所述可用串口的判斷如下 上位機(jī)依次打開(kāi)所有串口,如果能夠被成功打開(kāi),說(shuō)明該串口可用,同時(shí)將可用串口的串口號(hào)保存在上位機(jī)的存儲(chǔ)單元備用。
3.根據(jù)權(quán)利要求1或2所述的自動(dòng)檢測(cè)串口信息的方法,其中還包括當(dāng)一個(gè)串口信息檢測(cè)完成之后,上位機(jī)會(huì)重復(fù)向所有可用串口發(fā)送一次握手請(qǐng)求,若有握手應(yīng)答反饋,則繼續(xù)注冊(cè),反之,結(jié)束。
4.根據(jù)權(quán)利要求1所述的自動(dòng)檢測(cè)串口信息的方法,上位機(jī)收到串口通信終端的握手應(yīng)答時(shí)間為0毫秒到5000毫秒之間。
5.根據(jù)權(quán)利要求5所述的自動(dòng)檢測(cè)串口信息的方法,上位機(jī)收到串口通信終端的握手應(yīng)答時(shí)間為0毫秒到200毫秒之間。
6.根據(jù)權(quán)利要求1或2所述的自動(dòng)檢測(cè)串口信息的方法,上位機(jī)自身所有的串口數(shù)不少于1個(gè)。
7.根據(jù)權(quán)利要求7所述的自動(dòng)檢測(cè)串口信息的方法,上位機(jī)自身所有的串口數(shù)為2至 10個(gè)。
全文摘要
本發(fā)明公開(kāi)了一種自動(dòng)檢測(cè)串口信息的方法。在串口通信終端和上位機(jī)中分別預(yù)裝握手協(xié)議,當(dāng)串口通信終端通過(guò)串口連接上位機(jī)時(shí),上位機(jī)根據(jù)預(yù)存于存儲(chǔ)單元的可用串口信息,以預(yù)設(shè)波特率依次向所有可用串口發(fā)送握手請(qǐng)求,如果有至少一個(gè)的串口反饋有握手應(yīng)答,則握手成功,并與該串口下連接的串口通信終端建立通信,同時(shí)該串口信息將從存儲(chǔ)單元中存儲(chǔ)的可用串口中刪除,該串口號(hào)和接受到握手應(yīng)答的波特率值一并保存在存儲(chǔ)單元并通過(guò)人機(jī)界面反饋串口號(hào)和波特率值。本發(fā)明可以大大降低技術(shù)人員在調(diào)試設(shè)備的時(shí)間,不用挨個(gè)試驗(yàn)串口的信息,可以應(yīng)用于各種串口通信的情況。
文檔編號(hào)G06F13/38GK102270168SQ201110226480
公開(kāi)日2011年12月7日 申請(qǐng)日期2011年8月9日 優(yōu)先權(quán)日2011年8月9日
發(fā)明者周曉輝, 武斌, 陳磊 申請(qǐng)人:西安輝煒信息科技有限公司
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
芦溪县| 磐安县| 个旧市| 资阳市| 鹤壁市| 南宁市| 安乡县| 清水县| 昌江| 西城区| 玉屏| 搜索| 育儿| 天峨县| 佛学| 阜城县| 长葛市| 奉化市| 江城| 聊城市| 康保县| 福泉市| 延寿县| 呈贡县| 云龙县| 元阳县| 万载县| 安泽县| 台南县| 南平市| 鸡西市| 乌鲁木齐县| 南靖县| 澳门| 普陀区| 永顺县| 苗栗县| 南郑县| 南郑县| 武宁县| 天柱县|