STM32利用printf()向串口发送数据,当数据是函数返还值时,在串口调试助手中的数据居然一直是“0”?? 10
以下为程序部分代码:DeviceIdCode=LCD_ReadReg(0x0000);printf("\r\nDeviceIdCode=0x%x",DeviceIdCod...
以下为程序部分代码:
DeviceIdCode = LCD_ReadReg(0x0000);
printf("\r\n DeviceIdCode = 0x%x ", DeviceIdCode);
printf("\r\n Device_IdCode = LCD_Read_Reg(0x0000) --> 0x%x", LCD_ReadReg(0x0000));
其中调用 LCD_ReadReg()将其返还值赋给变量 DeviceIdCode。
下面是串口调试助手里的内容:
DeviceIdCode = 0x9324
Device_IdCode = LCD_Read_Reg(0x0000) --> 0x0
为什么第二个printf()中 LCD_ReadReg(0x0000)就变成“0”了呢,如果将第一个printf()的变量DeviceIdCode换成LCD_ReadReg(0x0000),显示结果就对了(%x为9324),真不知问题出在哪,希望大神给指指教指教!!! 展开
DeviceIdCode = LCD_ReadReg(0x0000);
printf("\r\n DeviceIdCode = 0x%x ", DeviceIdCode);
printf("\r\n Device_IdCode = LCD_Read_Reg(0x0000) --> 0x%x", LCD_ReadReg(0x0000));
其中调用 LCD_ReadReg()将其返还值赋给变量 DeviceIdCode。
下面是串口调试助手里的内容:
DeviceIdCode = 0x9324
Device_IdCode = LCD_Read_Reg(0x0000) --> 0x0
为什么第二个printf()中 LCD_ReadReg(0x0000)就变成“0”了呢,如果将第一个printf()的变量DeviceIdCode换成LCD_ReadReg(0x0000),显示结果就对了(%x为9324),真不知问题出在哪,希望大神给指指教指教!!! 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询