999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

利用PowerBuilder實現LIS系統中的串口通訊

2011-10-16 01:51:20南曉北
赤峰學院學報·自然科學版 2011年11期
關鍵詞:程序

南曉北,書 恒

(赤峰學院 醫學院,內蒙古 赤峰 024000)

利用PowerBuilder實現LIS系統中的串口通訊

南曉北,書 恒

(赤峰學院 醫學院,內蒙古 赤峰 024000)

本文介紹了如何使用PowerBuilder中的MSComm控件來實現檢驗儀器與計算機之間的串口通訊.

LIS;MSComm 控件;串口通訊

隨著醫院信息系統技術日趨成熟,如今醫院信息系統在醫院得到廣泛應用.檢驗信息系統(LIS:Laboratory Information System)是醫院信息系統中一個較大組成部分.利用計算機對檢驗儀器進行數據的自動采集是醫院檢驗科室信息化建設中的重要內容.串口因其速度快所以是目前檢驗儀器大量采用的一種數據傳輸端口.PB(PowerBuilder)工具軟件是Sybase公司開發的分布式數據庫應用程序的前端開發工具,它以功能強大、使用靈活的數據窗口,面向對象的、具有可視圖形界面的開發能力等優勢,因此深受廣大數據庫開發人員的青睞.目前使用PB作為大型醫院信息系統前端開發工具占據了很大比例,使用PB進行LIS系統串口通訊程序的開發也是被廣泛應用的一種方式.

1 MSComm控件常用的屬性及通訊方法

在使用PB開發LIS系統串口通訊程序應首先來了解一下微軟的Microsoft Communications Control(簡稱 MSComm)控件,MSComm 屬于 Windows下串行通訊編程的ActiveX控件,它為應用程序提供了通過串行端口傳輸和接收數據,為應用程序提供串行通訊功能.

1.1 MSComm控件的常用屬性

CommPort:設置用戶所選用的通訊端口號.

Settings:以字符串的形式設置并返回波特率、奇偶校驗、數據位、停止位.

PortOpen:設置通訊端口的狀態,可以打開(值為True)或關閉端口(值為False).

Input:從接收緩沖區返回和刪除字符.

Output:向傳輸緩沖區寫一個字符串.

InBufferSize:設置或返回接收緩沖區的大小,缺省為1024字節.

InBufferCount:返回接收緩沖區內的等代讀取的字節個數,設屬性為0清除接收緩沖區.

OutBufferSize:設置或返回發送緩沖區,缺省為512字節.

OutBufferCounter:返回發送緩沖區內等待發送的字符數,可用0來清空緩沖區.

RThreshold:該屬性確定當接收緩沖區內字節個數達或超過該值后就產生代碼為ComEventReceive的OnComm事件,設置位0,則不產生On-Comm事件.

CommEvent:有通訊錯誤或事件發生時產生OnComm事件,CommEvent事件的值可以用來確定引發OnComm事件的具體的錯誤或事件常用的有以下幾種

☆ ComEventbreak:接受到中斷信號.

☆ ComEventRxOver:接收緩沖區溢出.

☆ ComEventTxFull:發送緩沖區溢出.

☆ ComEventReceive:接受到規定的字符數.

☆ InputLen:設置或返回接收緩沖區內用Input讀入的個數.若取0,則讀取整個緩沖區的內容.

1.2 MSComm控件的通訊方法

MSComm控件在處理串口通訊上有兩種方法:一是事件驅動法;二是查詢法.這兩種方法各自的特點如下:

(1)事件驅動法是利用MSComm控件的On-Comm事件捕獲并處理通訊錯誤或事件,是處理串行端口交互作用的一種非常有效的方法.當串口接收到或發送完指定數量的數據時,或當狀態發生改變時,MSComm控件都將觸發OnComm事件,該事件也可以捕獲通訊中的錯誤.當應用程序捕獲到這些事件后,可通過檢查MSComm控件的CommEvent屬性的值來獲知所發生的事件或錯誤,從而執行相應的處理.這種方法具有相應及時,可靠性高等優點.

(2)查詢法是在每個重要的程序之后查詢MSComm控件的某些屬性(比如CommEvent屬性和InBufferCount屬性)的值來檢測事件和通訊錯誤.

2 程序實例描述

在前面我們對MSComm控件有所了解之后,我們就可以將MSComm控件引入到程序中.整個LIS系統的數據流程包括HIS開出檢驗申請信息,LIS主程序讀取數據,儀器檢驗結果數據通過通訊程序寫入LIS結果數據表等.本文所要研究的就是儀器檢驗結果通過通訊程序寫入LIS結果數據表這一程序實例.

第一步:選擇適合的數據庫設計相關數據表(這個主要是根據使用需要和編程人員的使用習慣)就我看來使用中型數據庫如:SQL Server就可以.

第二步:設計應用程序界面.在這里主要說一下如何插入MSComm控件,在設計窗口插入MSComm控件的步驟:選中Create OLE Control在Insert Object會話框中選中Insert Control頁卡中的Microsoft Communications Control項,這便完成了添加MSComm控件.如下圖.

第三步:這一步是編寫程序的重點與難點,在完成上面的界面設計之后我們就要為界面里的控件編寫代碼.在界面設計時除MSComm控件外還有兩項是必需要設計的.一個是通訊端口選擇,因為一臺計算機有多個串口(com1,com2,……)如果一臺計算機連接兩臺或更多的儀器時就要憑借通訊端口來區分數據和接收數據.另一個是通訊參數配置,檢驗儀器進行數據傳輸時會根據儀器自身的參數來進行通訊,這些參數包括:波特率,數據位,停止位,校驗位.

接下來我們來重點看一下對MSComm控件相關事件及相關函數的編寫.

2.1 為MSComm控件編寫Oncomm事件

注:代碼中ole_comm_one為MSComm控件的名稱

2.2 f_comm_char_monitor函數

它的功能是當有字符觸發則進行接受,代碼如下:

2.3 f_analyse_data函數

它的功能是分析結果數據,分離出工作單號及結果(在下面代碼中有被注釋的定義參數,把它寫進來是來講述如何使用MSComm控件相關參數).

上面描述的是在程序中最為重要的事件及兩個函數,還有其它的細節(如:建立數據窗口向數據庫插入檢驗結果數據等等)因其不是實現檢驗儀器與計算機通訊的重點所以在這里不作過多累述.

3 結論

在編寫LIS通訊程序時除對編程方法熟練外還要對檢驗儀器有基本的認識,最好是能夠掌握其使用方法及檢驗項目的相關知識.通過上述對MSComm控件使用方法及實例完全可以實現醫院檢驗科檢驗數據的自動采集,也能夠對醫院檢驗方面的信息系統建設起到一定的幫助作用.

〔1〕劉恩博.組態軟件數據采集與串口通信測控應用實戰[M].北京:人民郵電出版社,2010.

〔2〕李朝青.PC機及單片機數據通信技術[M].北京:國防工業出版社,2002.

〔3〕范逸之.Visual Basic與RS232串行通信控制[M].北京:中國青年出版社,2000.

TP274

A

1673-260X(2011)11-0049-03

猜你喜歡
程序
給Windows添加程序快速切換欄
電腦愛好者(2020年6期)2020-05-26 09:27:33
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
失能的信仰——走向衰亡的民事訴訟程序
“程序猿”的生活什么樣
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
基于VMM的程序行為異常檢測
偵查實驗批準程序初探
我國刑事速裁程序的構建
創衛暗訪程序有待改進
中國衛生(2015年3期)2015-11-19 02:53:32
恐怖犯罪刑事訴訟程序的完善
主站蜘蛛池模板: 在线观看精品自拍视频| 国产欧美视频在线观看| 美女无遮挡免费视频网站| 一本久道久综合久久鬼色| 一个色综合久久| 99精品国产高清一区二区| 国产精品护士| 亚洲国产精品无码久久一线| 人人91人人澡人人妻人人爽 | 制服丝袜一区| 日韩经典精品无码一区二区| 成人日韩欧美| 激情网址在线观看| 国产乱论视频| 欧美日韩国产成人在线观看| 日a本亚洲中文在线观看| 99精品久久精品| 国产精品99久久久| 精品无码专区亚洲| 日韩东京热无码人妻| 国产不卡网| 欧美综合区自拍亚洲综合绿色| 国产噜噜在线视频观看| 色丁丁毛片在线观看| 丁香婷婷久久| 操国产美女| 久久精品日日躁夜夜躁欧美| 91视频国产高清| 久久人人妻人人爽人人卡片av| 欧美亚洲国产精品久久蜜芽| 国产综合精品日本亚洲777| 91无码人妻精品一区二区蜜桃| 中文精品久久久久国产网址| 亚洲三级成人| 国产区在线看| 久久成人免费| 91亚洲视频下载| 亚洲最猛黑人xxxx黑人猛交| 国产精品私拍99pans大尺度| 欧美成人综合在线| 久久久久久久97| 亚洲啪啪网| 成人年鲁鲁在线观看视频| 免费人成网站在线观看欧美| 亚洲无线视频| 亚洲高清无在码在线无弹窗| 亚洲国产成人自拍| 久久激情影院| 日本伊人色综合网| 91麻豆国产精品91久久久| 免费毛片网站在线观看| 亚洲IV视频免费在线光看| 国产一区二区三区在线精品专区| 伊人久综合| 日韩中文无码av超清| 九色视频线上播放| 美女视频黄频a免费高清不卡| 国产欧美日韩另类| 欧美丝袜高跟鞋一区二区| 亚洲成人动漫在线| a亚洲视频| yjizz国产在线视频网| 麻豆国产精品一二三在线观看| 99re66精品视频在线观看| 98超碰在线观看| 亚洲综合片| 久久精品一卡日本电影| 国产欧美视频在线观看| 国产成人成人一区二区| 亚洲第一香蕉视频| 91区国产福利在线观看午夜| 亚洲成在线观看| 99视频在线免费| 亚洲精品桃花岛av在线| 青青草国产免费国产| 精品黑人一区二区三区| 国产成本人片免费a∨短片| 国产欧美日韩另类| 亚洲啪啪网| jizz国产在线| 亚洲成a∧人片在线观看无码| 婷婷午夜影院|