用户登录  |  用户注册
首 页商业源码原创产品编程论坛
当前位置:PB创新网文章中心解决方案电子通信

单总线协议转换器在分布式测控系统中的应用

减小字体 增大字体 作者:佚名  来源:本站整理  发布时间:2009-01-10 22:32:22
对单总线芯片进行访问和控制的函数。它支持Windows及DOS操作平台,可以采用C、C++、DelphiVB等计算机语言开发用户应用程序;它还支持基于DS2480B的串口转换器DS9097U、DS1410D并行转换口。因此,可以设计精美、生动的界面,既可以看到测控系统的总布局图,又可查看某个测控现场的状态数据和指示信号,达到了现代化、自动化的管理水平。
javascript:window.open(this.src);" style="cursor:pointer;"/>
  下面是用VB6.0开发工具调用TMEX的API函数,驱动DS2480B进行单总线通信的程序。

......

Dim dmmy,search, result as integer

Dim Myhandle as long

State-buffer(15360) as byte

Private declare function TMExtendedStartSession lib "IBFS32.DLL"(Byval portnum as integer Byval portType as integer, Byval reserved as any) as long

Private declare function TMsetup lib "IBFS32.DLL"(Byval session_handle as long ,state_buffer as byte) as integer

Private declare function TMfirst lib "IBFS32.DLL" (Byval session_handle as long, state_buffer as byte) as integer

Private declare function TMrom lib "IBFS32.DLL" (Byval session_handle as long, state_buffer as byte, rom as integer) as integer

Private declare function TMendsession lib "IBFS32.DLL"(Byval session_handle as long) as integer

......

Myhandle= TMExtendedStartSession(1,5,vbNullstring)

'检查DS2480B是否准备就绪,准备建立会话注意,针

'对DS2480B,该函数第2个参数必须为5

If (Myhandle>0) then '成功建立会话

Dmmy=TMSetup(Myhandle) '初始化

Search=TMFirst(Myhandle,state_buffer(0)) '查找设备,找

'到第1个设备返回"1"

If (search=1) then

ROM[0] = 0; '表示读数据

result = TMRom(session_handle, state_buffer(0), ROM(0));

if (result = 1) then

'此时ROM中数据表示该设备的64位ROM序列号,其中

' ROM[0]为器件类型代码,如ROM(0)=20H 表示找到

' DS2450, ROM[7] 存放的是 8 bit CRC

......         '对找到的设备进行相应操作

......

end if

dmmy= TMendsession(Myhandle) '结束会话,释放单总线

......

结束语

  基于DS2480B的单总线分布式测控系统,具有节省I/O口线资源、结构简单、开发快捷、成本低廉、便于总线扩展和维护等优点,因此有广阔的应用空间,具有较大的推广价值。



上一页  [1] [2] 

Tags:

作者:佚名

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
PB创新网ourmis.com】Copyright © 2000-2009 . All Rights Reserved .
页面执行时间:14,593.75000 毫秒
Email:ourmis@126.com QQ:2322888 蜀ICP备05006790号