lanzhihai118 发表于 2012-7-19 18:07:58

请教个串口通信的问题~~

现在小弟在做一个串口通信的实验。调试从机代码是用的是 在串口调试助手上以16进制发送002875FFFF给从机。 现在准备做主机的部分也是发给从机16进制的002875FFFF。刚开始直接用串口以字符串“002875FFFF”发的,显然是不对的,主机部分的这个代码该怎么做呢?求大神指点一下啊 卡到这了{:cry:}

winterw 发表于 2012-7-19 18:09:45

你的描述看着有点费解...

lanzhihai118 发表于 2012-7-19 18:13:14

winterw 发表于 2012-7-19 18:09 static/image/common/back.gif
你的描述看着有点费解...

额 本来想说的清楚点,看来我错了。就是主机给从机发送十六进制的 002875FFFF,和在调试助手上的功能一样,该怎么做?

winterw 发表于 2012-7-19 18:21:42

lanzhihai118 发表于 2012-7-19 18:13 static/image/common/back.gif
额 本来想说的清楚点,看来我错了。就是主机给从机发送十六进制的 002875FFFF,和在调试助手上的功能一样 ...

你在主机端程序里把这个十六进制的数发送出去不就行了吗?
为什么要以字符串形式发呢?
char *cmd="002875FFFF";//为什么要这样发呢?

lcw_swust 发表于 2012-7-19 18:32:20

char str[]={0x00,0x28,0x75,0xFF,0xFF};
char i;
for(i=0;i<5;i++)uart_sendbyte(str);

lxa0 发表于 2012-7-19 19:45:02

用一条指令够行

mov sbuf,a

richu 发表于 2012-7-20 09:30:11

楼上几位说的都没错,直接发送十六进制的数就行,不要把数据放在字符串中。

lanzhihai118 发表于 2012-7-20 11:18:33

谢谢大家 昨天晚上搞定了就是分开按照字节来发的 {:smile:}

lanzhihai118 发表于 2012-7-20 11:19:30

winterw 发表于 2012-7-19 18:21 static/image/common/back.gif
你在主机端程序里把这个十六进制的数发送出去不就行了吗?
为什么要以字符串形式发呢?
char *cmd="002875F ...

嗯 我错了 呵呵
页: [1]
查看完整版本: 请教个串口通信的问题~~