Perl串口编程

今年我校的教工体检,血常规机器更换为全自动的,所以需要研究一下导出化验数据。

试了一下Windows的超级终端,可以用,但每次只能接收5个人的数据,体检期间每天做一百多人,这样接收起来太麻烦了。

在网上找不到其他好用的串口软件,只好试一下几年前用过的一个Perl程序。经过调试,竟然可以很好地工作。

源代码如下:

#!/usr/bin/perl
# 串口通信程序

use Win32::SerialPort;

my $port = 'COM1';
my $PortObj = new Win32::SerialPort ($port) || die "Can't open $port: $^E\n";    # $quiet is optional

$PortObj->error_msg(1);            # use built-in error messages
$PortObj->user_msg(1);

$PortObj->databits(8);
$PortObj->baudrate(115200);
$PortObj->parity("none");
$PortObj->stopbits(1);

$PortObj->write_settings || die "Couldn't write settings\n";


open (f1,">today.dat");

my $count_in = 0;
my $InBytes = 4096; 


while (1) 
{
 ($count_in, $string_in) = $PortObj->read($InBytes);
 print $string_in;
}

close f1;


可以看到,需要安装Win32::SerialPort这个模块。
因为旧电脑里的草莓Perl里当时已装好这个模块,把整个Perl文件夹拷贝到其他电脑,可以直接使用。


 


 

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/21129783/viewspace-1154695/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/21129783/viewspace-1154695/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值