找答案的高端用户(找答案钻石及双钻级别的用户)将尽可能从此问题下的所有回
答中,为您推荐最佳答案。届时您可以根据推荐数采纳答案。
如果自提问时间起7天内您仍无法选出最佳答案,您可以选择“无满意答案”关闭此问题。
问题
取消精华
首页精华问答
取消推荐
高端用户推荐
申请置评
已申请置评
修改
修改标签
添加标签
官方认证
取消官方认证
修改标签
添加标签
转移分类
删除
{{itemCategory}}
收藏({{answerDetail.Q_FavoriteCounts}})
手机扫码追踪该问题,
觉得实用,立即去分享!
点击复制链接
专家建议
取消最佳答案
修改
不知道你用多少个信号需要传输,如果多的话就用通讯方式。
你的cpu通过什么方式和上位机连接的?
我给你一个方法:通过tcp/ip方式传输数据。我是用315-2dp+cp343-1lean来实现的。首先在硬件组态的网络组态中点击一个cpu,然后在下面的窗口中双击local id插入一个iso-on-tcp connection,注意这个连接的block parameter参数中的id和laddr。在通讯编程中要用到的。然后编译保存网络。并分别下载到两个cpu中。
然后cpu1用西门子做的fc5(ag_send)发送数据,cpu2用fc6(ag_recv)接受数据,发送接受的规则是慢发快收防止丢包,比如你在200ms中发送,100ms中接受因为是定时中断中发送接受的,所以发送功能和接受功能的act参数就都是1,就行了。id和laddr参数就是上面说的id和laddr参数。send引脚是你要发送的数据的起始地址和数据长度,len是是发送的数据长度和send引脚包含的那个数据长度一致就行了。剩余三个参数就不用我说了。
ag_recv的ndr就是接收数据保存的起始地址和数据长度,这个长度要和发送的长度一致。其他就不用说了,你如果你不明白再看看这两个函数的说明就清楚了。
等您来回答
换一换
{{item.CoinValue}}西币
{{item.VisitNum}}人想问
本版相关问题
换一换
首次回答问题,获得
双倍西币积分!
立即成为技术知识分享的一员!
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!

西门子商城