python调用Moxa PCOMM Lite通过串口Ymodem协议实现发送文件


Posted in Python onAugust 15, 2014

本文实例讲述python调用Moxa PCOMM Lite通过串口Ymodem协议实现发送文件的方法,该程序采用python 2.7编写。主要内容如下:

经过长期搜寻,终于找到了Moxa PCOMM Lite。调用PCOMM.DLL可以非常方便的通过串口的Xmodem、Ymodem、Zmodem等协议传输文件,而无需重复制造轮子。

PCOMM Lite 1.6适用于win7等系统,做为dll文件可以采用任何支持调用dll的编程语言例如VC++、VB、Qt等等编写应用程序,点此本站下载

以下是发送端的python代码:

#encoding=utf-8

from ctypes import *

dll = windll.LoadLibrary("PCOMM.DLL")

port = 2 # 指定串口COM2

dll.sio_open(port)

dll.sio_ioctl(port, 15, 0x00 | 0x03 | 0x00) # 57600, 无校验,8位数据位,1位停止位

def cb(xmitlen, buflen, pbuf, flen):
  print xmitlen, flen,
  print 
  return xmitlen

CALLBACK = WINFUNCTYPE(c_int, c_long, c_int, POINTER(c_char), c_long)

ccb = CALLBACK(cb)

dll.sio_FtYmodemTx(port, "e:\test.jpg", ccb, 0)

dll.sio_close(port)
Python 相关文章推荐
python自动化测试之setUp与tearDown实例
Sep 28 Python
改进Django中的表单的简单方法
Jul 17 Python
python如何通过protobuf实现rpc
Mar 06 Python
Python图像处理之直线和曲线的拟合与绘制【curve_fit()应用】
Dec 26 Python
python开发准备工作之配置虚拟环境(非常重要)
Feb 11 Python
python爬虫-模拟微博登录功能
Sep 12 Python
python实现两个字典合并,两个list合并
Dec 02 Python
Python基础之字典常见操作经典实例详解
Feb 26 Python
Python 创建守护进程的示例
Sep 29 Python
Python urllib3软件包的使用说明
Nov 18 Python
python二维图制作的实例代码
Dec 03 Python
python用分数表示矩阵的方法实例
Jan 11 Python
Python3基础之函数用法
Aug 13 #Python
Python3基础之条件与循环控制实例解析
Aug 13 #Python
Python3基础之基本运算符概述
Aug 13 #Python
Python3基础之list列表实例解析
Aug 13 #Python
Python3基础之基本数据类型概述
Aug 13 #Python
Python常用正则表达式符号浅析
Aug 13 #Python
wxpython中利用线程防止假死的实现方法
Aug 11 #Python
You might like
php中实现记住密码下次自动登录的例子
2014/11/06 PHP
PHP中shuffle数组值随便排序函数用法
2014/11/21 PHP
浅谈PHP检查数组中是否存在某个值 in_array 函数
2016/06/13 PHP
Yii控制器中filter过滤器用法分析
2016/07/15 PHP
php版微信公众平台接口开发之智能回复开发教程
2016/09/22 PHP
浅说js变量
2011/05/25 Javascript
javascript获得网页窗口实际大小的示例代码
2013/09/21 Javascript
JavaScript中setInterval的用法总结
2013/11/20 Javascript
使用node.js半年来总结的 10 条经验
2014/08/18 Javascript
javascript下拉框选项单击事件的例子分享
2015/03/04 Javascript
jquery实现触发时更新下拉列表内容的方法
2015/12/02 Javascript
深入浅析JavaScript中数据共享和数据传递
2016/04/25 Javascript
angular学习之ngRoute路由机制
2017/04/12 Javascript
AngularJS入门教程二:在路由中传递参数的方法分析
2017/05/27 Javascript
详解javascript replace高级用法
2019/02/17 Javascript
vue.js购物车添加商品组件的方法
2019/09/17 Javascript
JavaScript判断数组类型的方法
2019/10/23 Javascript
vue中使用vee-validator完成表单校验方案
2019/11/01 Javascript
node.js使用net模块创建服务器和客户端示例【基于TCP协议】
2020/02/14 Javascript
[56:56]VG vs LGD 2019国际邀请赛淘汰赛 胜者组 BO3 第一场 8.22
2019/09/05 DOTA
Python的函数的一些高阶特性
2015/04/27 Python
Python调用C++程序的方法详解
2017/01/24 Python
Windows系统下PhantomJS的安装和基本用法
2018/10/21 Python
python画图--输出指定像素点的颜色值方法
2019/07/03 Python
Python抓包程序mitmproxy安装和使用过程图解
2020/03/02 Python
pytorch掉坑记录:model.eval的作用说明
2020/06/23 Python
HTML5新增加的功能详解
2016/09/05 HTML / CSS
Linux文件系统类型
2012/02/15 面试题
学生干部的自我评价分享
2014/01/18 职场文书
关于抽烟的检讨书
2014/02/25 职场文书
车队安全员岗位职责
2015/02/15 职场文书
2015年第31个教师节致辞
2015/07/31 职场文书
技术转让协议书
2016/03/19 职场文书
Node-Red实现MySQL数据库连接的方法
2021/08/07 MySQL
MySQL 数据库范式化设计理论
2022/04/22 MySQL
MySql按时,天,周,月进行数据统计
2022/08/14 MySQL