打印

C51发送字符串的问题

[复制链接]
1816|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wanjiangyun|  楼主 | 2015-2-27 15:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 wanjiangyun 于 2015-2-27 15:55 编辑

void UartPrintf(unsigned char *p)                                //发送字符串
{        
         while(*p)
         {
                 SBUF=*(p++);
                while(TI==0)
                {
                        ;
                        ;
                        ;
                };
                TI=0;
        }   
}
这是一个发送字符串的程序,但是我要发送的数据是一个unsigned long型的变量,;例如定义unsigned long=port;如何向串口发送port?

相关帖子

沙发
l974881687| | 2015-2-27 17:06 | 只看该作者
都是以一个字节为单位的,要把数据收好后进行高低位组合

使用特权

评论回复
板凳
dirtwillfly| | 2015-2-27 18:28 | 只看该作者
楼上正解。把长的数据拆开发送。

使用特权

评论回复
地板
mildlioncn| | 2015-2-27 22:56 | 只看该作者
拆成字节再进行发送

使用特权

评论回复
5
wanjiangyun|  楼主 | 2015-2-28 15:51 | 只看该作者
谢谢各位大侠,可能我写的不够清楚,其实这个port变量我是通过串口得到的2个字节的16进制数据,这个数据我是要给WIFI模块配置端口的,所以要先转换成10进制的数据,我只是想把这个10进制的数据存在port变量中,再通过串口把存在port中的数据发出去

使用特权

评论回复
6
NE5532| | 2015-3-1 11:17 | 只看该作者
wanjiangyun 发表于 2015-2-28 15:51
谢谢各位大侠,可能我写的不够清楚,其实这个port变量我是通过串口得到的2个字节的16进制数据,这个数据我 ...

计算机不认识10进制数据,只认识2进制数据或者16进制数据,楼主自己把自己绕昏了,10进制能表达的数,16进制都可以表达,直接发就是了,跟什么long型,字符串,一点关系都没有。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

28

帖子

0

粉丝