【发布时间】:2018-08-16 16:44:31
【问题描述】:
我是编程新手,但在 IAR 调试方面需要一些帮助。
我创建了一个带有浮点数的联合,一个包含 4 个 uint8 和 4 个 uint8 变量的数组,并且工作正常,我可以设置浮点数,并且在打印到 IO 终端时其他值是正确的。
我想在调试时监视实时监视窗口中的变量,但它说“错误,无法获取测试地址”(测试是联合的名称)。
除了查看内存位置之外,还有其他方法吗? 如果所有变量都是 32 位,它会起作用吗?我会在几个小时后到办公室时测试一下?
union Eeprom
{
struct
{
uint8_t Byte1;
uint8_t Byte2;
uint8_t Byte3;
uint8_t Byte4;
};
float floatvalue;
uint8_t Array[4];
};
int main(void)
{
union Eeprom Test;
Test.floatvalue = 23.1;
printf("floatvalue %3.2f \n Byte1 %x\n Byte2 %x\n Byte3 %x\n Byte4 %x\n
Array[0] %x\n Array[1] %x\n Array[2] %x\n Array[3] %x\n", Test.floatvalue,
Test.Byte1, Test.Byte2, Test.Byte3, Test.Byte4,
Test.Array[0], Test.Array[1], Test.Array[2], Test.Array[3]);
任何帮助将不胜感激
【问题讨论】: