This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CCS/MSP432P401R:如何将 uint32_t A 转换为十进制数

Guru**** 2484615 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/894865/ccs-msp432p401r-how-to-convert-uint32_t-a-to-decimal

器件型号:MSP432P401R

工具/软件:Code Composer Studio

我现在通过 MSP432P4041R 的 SPI 传输获取数据。 数据格式是二进制、十进制还是十六进制?

我需要将此数据转换为十进制、如果不是、如何将 A 转换为十进制?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好  

    您可以按浮点格式定义变量。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    这非常简单。

    主要思路如下:

    将二进制数的每个数字乘以2的相应幂。 例如、如果二进制数为1001

    十进制等效数=1*2^3+0*2^2+0*2^1+0*2^0。

     

    如果您可能需要了解更多详细信息、请在此处发送您的代码。

     

    Hossein 先生

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我投票赞成:

    > char str[11+1];

    >snprintf (str、sizeof (str)、"%d"、DATE_FER_SPI);

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    格式将是 SPI 器件发送的任何内容。 您需要查看数据表。

    伙计们:他正在*接收*数据,而不是发送数据。 Hossein,如果他使用你的算法,他就会以他开始的方式结束。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Keith、你是对的;MCU 正在接收数据。


    我只是想他正在寻找将二进制数转换为十进制数的算法。
    但他的问题的答案不是将数字从一个基数转换为另一个基数。
    它不是数据类型问题;它是数据格式问题、可以在格式指定符的帮助下轻松处理。

    例如

    uint8_t a = 100;
    uint16_t b= 0x3;
    uint32_t c= 0xFF;
    
    printf ("a=%d\n"、a);
    printf ("b=%d\n"、b);
    printf ("c=%d\n"、c); 

    输出为:

    A=100
    B=3.
    C=255

    另一个具有类似变量和数据类型的示例

    uint8_t a = 100;
    uint16_t b= 0x3;
    uint32_t c= 0xFF;
    
    printf ("a=%x\n"、a);
    printf ("b=%x\n"、b);
    printf ("c=%x\n"、c); 


    这一次是输出

    A=64
    B=3.
    C=ff

    结论:
    a、b、c 的无符号整数格式%d 为 >>>    a=100 :b=3  :C=255  
    a、b、c 的无符号整数格式%x 为 >>>    A=0x64 :: B=0x0003 :C=0x000000FF  

    因此、 可以使用%d 格式说明符(十六进制格式说明符为%x)。



  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我们也不知道他是否需要 ASCII 格式的文件。 我们确实需要使用 OP 来权衡它是什么 SPI 器件、然后才能回答。 我们都知道它是一些奇怪的定点或奇数带符号(符号/幅度、一个实现...) 值。