首页 上一页 1 2 下一页 尾页

求助:200自由口编程 点击:1390 | 回复:27



郭zongkui

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:37帖 | 153回
  • 年度积分:0
  • 历史总积分:297
  • 注册:2006年3月24日
发表于:2007-01-08 10:52:00
楼主
小弟最近编一通讯程序:内容为读一数字式温度采集模块的数据并且计算温度和存储。模块有8个通道。每个通道可以挂8个ds18b20数字式温度传感器。下面是通讯协议。我用的200为226,串口0被定义为自由口。小弟刚开始学习通讯编程,碰到了好多问题,老是连不上。哪位大虾能指点一二阿!比如系统的说一下需要注意哪些参数的设置,时序上面的东西等等,小弟感激不尽!


通讯波特率9600
发命令(5个字节):
第1字节:“#”
第2字节:“0”
第3字节:“0”
第4字节:“0”+CH-1       CH为测试通道号,1、2、……、8
第5字节:0x0D
系统返回数据:
该通道有传感器数:Tn
Tn=(N-5)/4         其中:N是返回总字节数
返回字节定义:
0 1 2 3 4 5 6 7 8    9 10 11 12 13 14 15 16.........            

字节0、1、2、3、4空
字节5、6、7、8(对应A、B、C、D)为第1个温度传感器温度值
字节9、10、11、12(对应A、B、C、D)为第2个温度传感器温度值
… …

温度算法:
正温度(当B and 0xF8 =0xF8):T=[(B and 7)*256+A]*0.0625
负温度(当B and 0xF8 =0x00):T=-[(256-B)*256-A]*0.0625




attfutte

  • 精华:0帖
  • 求助:0帖
  • 帖子:24帖 | 47回
  • 年度积分:0
  • 历史总积分:165
  • 注册:2002年3月17日
发表于:2007-01-13 12:58:00
21楼
ymzwjb@21cn.com

silichip

  • 精华:0帖
  • 求助:0帖
  • 帖子:56帖 | 374回
  • 年度积分:200
  • 历史总积分:1474
  • 注册:2003年8月29日
发表于:2007-01-14 20:38:00
22楼
我想要一份自由口通讯的例程,谢谢,silichip@sohu.com

郭zongkui

  • 精华:0帖
  • 求助:0帖
  • 帖子:37帖 | 153回
  • 年度积分:0
  • 历史总积分:297
  • 注册:2006年3月24日
发表于:2007-01-15 11:30:00
23楼
谢谢inel

灌水的鱼

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 8回
  • 年度积分:0
  • 历史总积分:12
  • 注册:2002年11月16日
发表于:2007-01-30 10:18:00
24楼
我觉得自由口应该算是比较另类的通讯方式,除非你对各种通讯协议很熟悉,掌握了其编程的方法,不然问题还是比较多的,一般还是推荐使用组态软件作。

金粟兰看法

  • 精华:0帖
  • 求助:0帖
  • 帖子:18帖 | 479回
  • 年度积分:0
  • 历史总积分:975
  • 注册:2006年8月23日
发表于:2007-01-30 11:08:00
25楼
给一个西门子200自由口通讯程序部分参考:
ld sm0.0
movb  5 ,smb30
movb 20 ,smb87
movw +3 ,smw90
movw +3,smw92
movb 30 ,smb94
rcv  vb1000,0
atch  发送中断,9
atch  接受中断,23
eni
关于ascii码问题,提个思路给你,你按位一个位的发送数据.这是最原始的最有效的办法.具体不多说了.是绝对可行的

金粟兰看法

  • 精华:0帖
  • 求助:0帖
  • 帖子:18帖 | 479回
  • 年度积分:0
  • 历史总积分:975
  • 注册:2006年8月23日
发表于:2007-01-30 11:36:00
26楼
还有不明白的地方.可以互相探讨学习的.
我的e-mail:zyphunan@126.com

郭zongkui

  • 精华:0帖
  • 求助:0帖
  • 帖子:37帖 | 153回
  • 年度积分:0
  • 历史总积分:297
  • 注册:2006年3月24日
发表于:2007-01-31 12:41:00
27楼
谢谢芙蓉王,差不多了!!谢谢您的关注!!!

热门招聘
相关主题

官方公众号

智造工程师
    首页 上一页 1 2 下一页 尾页