打印
[DSP编程]

28335串口传输float数据问题

[复制链接]
3181|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
dicktime|  楼主 | 2015-5-11 15:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
据我所知,共用体是最方便的方式 ,但是我这样做后,实际输出的并不是按照IEEE754格式的四个十六进制数,比如8.25,应该是 0x41 0x08 0x00 0x00,但是我输出的是
0x00 0x04 0x06 0x70,有人说是TI的DSP只能用字对齐地址寻址,我并不是很明白,请问有高手愿意不吝赐教么?给我指明该怎么改,或者发一下成功跑过的程序
typedef union  
{   
   float  f;   
   unsigned char u[4];   
}Float2Byte;
Float2Byte m1;  

。。。。。。

m1.f=8.25;
        for(i=0;i<4;i++)
           {
           m=m1.u[i];
        scic_xmit(m);
           }

相关帖子

沙发
wang168506| | 2015-5-11 16:03 | 只看该作者
你就不需要深究那么多,机器传输的时候 反正就是8位数据传输就好了 ,等对方接收完重新解析合并数据就完了!

使用特权

评论回复
板凳
dicktime|  楼主 | 2015-5-11 16:06 | 只看该作者
wang168506 发表于 2015-5-11 16:03
你就不需要深究那么多,机器传输的时候 反正就是8位数据传输就好了 ,等对方接收完重新解析合并数据就完了 ...

但是没法分啊 分成的4部分 出来后不对啊

使用特权

评论回复
地板
dicktime|  楼主 | 2015-5-11 16:08 | 只看该作者
dicktime 发表于 2015-5-11 16:06
但是没法分啊 分成的4部分 出来后不对啊

串口调试助手输出的4个16进制数据都不对 我担心上位机肯定也不对啊

使用特权

评论回复
5
wang168506| | 2015-5-11 16:09 | 只看该作者
你仔细想想   实际上浮点型是因为读取方法不同而成了浮点,实际上在存储空间里边的存储原理是一样的,你直接按数据传输出去,对面接收后直接解析出来不就完了嘛?解析不对,那你自己看看先传的高位还是低位,接收的时候要倒过来!

使用特权

评论回复
6
dicktime|  楼主 | 2015-5-11 16:30 | 只看该作者
wang168506 发表于 2015-5-11 16:09
你仔细想想   实际上浮点型是因为读取方法不同而成了浮点,实际上在存储空间里边的存储原理是一样的,你直 ...

但是。一面是DSP 一面是PC   浮点读取方式大概也会不同吧。

使用特权

评论回复
7
JY-DX-JY| | 2015-5-11 16:40 | 只看该作者
先写个简单的上位机程序测试一下再说。
行了更好,不行了再想办法。

使用特权

评论回复
8
wang168506| | 2015-5-11 16:41 | 只看该作者
dicktime 发表于 2015-5-11 16:30
但是。一面是DSP 一面是PC   浮点读取方式大概也会不同吧。

大哥,你通信是要上位机软件的嘛

使用特权

评论回复
9
dicktime|  楼主 | 2015-5-11 17:43 | 只看该作者
wang168506 发表于 2015-5-11 16:41
大哥,你通信是要上位机软件的嘛

恩 我是小白的说 -。= 在做毕业设计
我换了个方式~
比如float型数据111.111111 乘100存到int型里,然后移位分两次发
这样除了精度只保存了两位小数 而且有范围限制外 都还行 不过能满足我毕设要求啦~

使用特权

评论回复
10
zhangmangui| | 2015-5-11 22:22 | 只看该作者
只能说明你的floattobyte  有问题吧
你在ccs下查看变量8.25怎么存的   
上位机收到后   有没有 bytetofloat?

使用特权

评论回复
11
949155525| | 2015-5-12 12:17 | 只看该作者
注意大小端和转换方式

使用特权

评论回复
12
哈利| | 2015-5-15 14:29 | 只看该作者
本帖最后由 哈利 于 2015-5-15 15:35 编辑

按照字取址,指的是:每个指针指向的都是一个字,指针加一呢就是指向下一个字,也就是跳过两个字节.

使用特权

评论回复
13
哈利| | 2015-5-15 15:40 | 只看该作者
程序应该没问题啊。。。。自己设断点看内存吧。。

使用特权

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

本版积分规则

2

主题

8

帖子

0

粉丝