您现在所在的是:

电脑编程

回帖:4个,阅读:2765 [上一页] [1] [下一页]
1002
sandsun
文章数:15
年度积分:50
历史总积分:1002
注册时间:2004/9/28
发站内信
发表于:2005/2/4 10:45:00
#0楼
void Filt(char code[],char c)
{
if(c=='F')
{
if(code[0]>=0X7E)
{
code[1]=code[0]-0X7E;
code[0]=0X7E;
}
else
{
code[1]=0XFF; /*0XFF作为标记code[1]不可能产生0XFF*/
}
}
else if(c=='H')
{
if(code[0]!=0X7E)
{
code[1]=0xFE; /*转换完成标记*/
}
else
{
if(code[1]==0XFE)
{
code[1]=0XFF; /*接收下一个码的标记*/
}
else
{
code[0]=code[0]+code[1];
code[1]=0XFE;
}
}
}
发送时:
char SendChar[2]; /*存储发送的值*/
....
SendChar[0]=c; /*c为待发ASCII码*/
Filt(SendChar,'F');
if(SendChar(1)==0XFF)
{
..... /*发送SendChar[0]*/
}
else
{
...... /*发送SendChar[0],SendChar[1]*/
}
接收时:
char ReceiveChar[2]; /*存储接收的值*/
.....
ReceiveChar[0]=c0; /*c0接收的ASCII码*/
Filt(ReceiveChar,'H');
if(ReceiveChar[1]==0xFF)
{
ReceiveChar[1]=c1; /*c1为下一个*/
Filt(ReceiveChar,'H);
}
else if(ReceiveChar[1]==0xFE)
{
...... /*存储转换后的ReceiveChar[0]*/
}
40994
tigermu 版主
文章数:15021
年度积分:509
历史总积分:40994
注册时间:2004/8/12
发站内信
2018论坛优秀版主
2018春节活动(二)
2017论坛优秀版主
2017国庆活动(一)
2016论坛优秀版主
2016国庆活动(一)
2015论坛优秀版主
西门子logo体验(三)
英威腾PLC体验(三)
2015春节活动
2014论坛优秀版主
2013论坛优秀版主
2012论坛优秀版主
2010年度论坛贡献奖
发表于:2005/2/5 8:38:00
#1楼
把C的函数写成VB的模块,可能实现起来容易点。
清泉石上,明月松间。
1107
zhangwolf520
文章数:46
年度积分:50
历史总积分:1107
注册时间:2005/2/13
发站内信
发表于:2005/2/14 20:32:00
#2楼
去找你们学校自动化专业的同学给你转换,他们都学了的。
1002
sandsun
文章数:15
年度积分:50
历史总积分:1002
注册时间:2004/9/28
发站内信
发表于:2005/2/17 12:39:00
#3楼
不用了。。。感觉对我的程序没什么用。。。
1107
zhangwolf520
文章数:46
年度积分:50
历史总积分:1107
注册时间:2005/2/13
发站内信
发表于:2005/2/17 21:18:00
#4楼
哪个说的 。你去问了一定回有收获的哈

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2025 Gkong.com, All Rights Reserved

62.4004