整过PB串口的过来帮帮忙

wanghejiang 2007-06-20 11:40:19
我用的MSCOM.OCX控件
想用接收单片机上传的数据(十六进制)

any sj//定义ANY型数据
sj = ole_1.o b j e c t.input
blob sj1//转成BLOB型
sj1 = blob(sj)
int i
for i = 1 to len(sj1)
mle_2.text = mle_2.text +" "+ string(ASC(char(blobmid(sj1,i,i + 3))))

next
怎么不好用。0收不到。
如果初始化的时候ole_1.o b j e c t.InputMode = 1
程序运行出错。
提示sj1 = blob(sj)句有问题。怎么回事给我讲一下白
...全文
441 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
yjlhch 2007-07-12
  • 打赏
  • 举报
回复
学习
zhangwenqian 2007-07-12
  • 打赏
  • 举报
回复
学习
wanghejiang 2007-07-09
  • 打赏
  • 举报
回复
服了
fallstone 2007-07-09
  • 打赏
  • 举报
回复
学习,不明白为什么要每次接收一个字符,还要转换为BLOB。
请教一下,你是连续发送数据还是指令读取的方式?发过来的字符直接用不转为BLOB是否也可以实现目标?我以前读取电子秤的数据没这么复杂的。
wanghejiang 2007-07-06
  • 打赏
  • 举报
回复
有没有人给说一下 我将非常感谢
wanghejiang 2007-07-03
  • 打赏
  • 举报
回复
ole_1.object.CommPort = ls_ck
ole_1.object.Settings = string(ls_btl) + ",N,8,1" //表示传输速率为il_baud bps,没有奇偶校验位,8位数据位,1位停止位。
ole_1.object.Rthreshold = 1 //接收缓冲区收到一个字节产生OnComm事件
ole_1.object.Inputlen = 1 //每次读取一个字节 //设置Input 一次从接收缓冲读取字节数为1
ole_1.object.InputMode = 0 //comInputModeBinary //设置接收数据模式为二进制形式
//当InputMode属性值为0(文本模式)时,变量中含String型数据。
//当InputMode属性值为1(二进制模式)时,变量中含Byte型数组数据。
ole_1.object.SThreshold = 0 //设置Output 一次从发送缓冲读取字节数为1
ole_1.object.InBufferSize = 1024 //设置MSComm接收缓冲区为40字节, 缺省1024
ole_1.object.OutBufferSize = 1024 //设置MSComm发送缓冲区为2字节, 缺省512
ole_1.object.InBufferCount = 0 //清除接收缓冲区
ole_1.object.OutBufferCount = 0 //清除发送缓冲区
ole_1.object.NullDiscard = false
我的出始化有问题吗
PHDYCN 2007-06-30
  • 打赏
  • 举报
回复
用asc( 'h' ) 获得asc嘛 然后转换为16进制字符串
nmzdgq 2007-06-23
  • 打赏
  • 举报
回复
我需要一个16进制的变量并且还要赋16进制的值
也就是说现在用"~hfc"好用但用 "~h" +一个值为fc的变量就不好用了为什么呢
很急,希望备位大哥帮我。
enayo 2007-06-21
  • 打赏
  • 举报
回复
你下个串口调试器,看看单片机返回到计算机的数据是多少呢

740

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 脚本语言
社区管理员
  • 脚本语言社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧