如何打印计算出的数字并进行转换?

时间:2015-09-06 10:54:27

标签: c pic mplab

如何计算数字? 例如,我向HyperTerminal发送命令,然后它将回复(打印)计数值。

这是第一个例子,

发送命令:UI1-UI10

回复命令:UI1-UI10_in_Hexadecimal:0x3FF

上面的例子,Ui1直到Ui10,它计数,一到十。然后,二进制文件将具有IIIIIIIIII(10位),但在超级终端中将以十六进制回复0x3FF。

第二个例子,

发送命令:UI5-UI7

回复命令:UI5-UI7_in_Hexadecimal:0x3或0x03

Ui5直到Ui7,数到5,直到7。然后,二进制文件将具有III(3位),但在超级终端中将以十六进制回复0x3或0x03。

第3个例子,

发送命令:UI5-UI5

回复命令:UI5-UI5_in_Hexadecimal:0x1

Ui5直到Ui5,它只算五个。然后,二进制文件将具有I(1Bit),但在HyperTerminal中将以十六进制回复0x1或0x01。

上面的例子可以用Bitwise函数吗?

这里是我的代码:

void decode(unsigned char* msg) {

    unsigned char* lala[50];

    if (strstr(msg, "UI1-UI10") != NULL)
    {
        sprintf(lala, "UI1-UI10_in_Hexadecimal:0x3FF");
        sendString(lala);
    }
    else if (strstr(msg, "UI5-UI7") != NULL)
    {
        sprintf(lala, "UI5-UI7_in_Hexadecimal:0x3");
        sendString(lala);
    }
    else if (strstr(msg, "UI5-UI5") != NULL)
    {
        sprintf(lala, "UI5-UI5_in_Hexadecimal:0x1");
        sendString(lala);
    }
}

但是,当send命令不同时,从这段代码中得到了问题。

0 个答案:

没有答案