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.

[参考译文] MSP430FR58671:尝试使用数组指针时出现问题

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1208326/msp430fr58671-issue-trying-to-use-an-array-pointer

器件型号:MSP430FR58671
主题:MSP430FR2355中讨论的其他器件

最终、我将从具有8x8图像阵列的多路复用器中读取数据。 目前、我只是尝试设置一个保存 ech 像素数据的阵列和一个指针、该指针将指向每个像素存储在其中的位置。

我遇到的问题是、并非所有内存位置都被写入。 下面是我针对该函数使用的基本代码、Matrix.C 将随着像素阵列到 每个像素 所在的行和列的映射而改变。

浮动*ROIC[];
浮点数组[16];
无符号整型 count、i;

int main (空)

矩阵();

for (I = 1;I < 17;I++)

计数= I * 10;
*ROIC[i]=计数;

}

// matrimary.c

空矩阵(空)

extern float array[4][4];
extern float *ROIC[];

ROIC[1]=&array[0][0];
ROIC[2]=&array[0][1];
ROIC[3]=&array[0][2];
ROIC[4]=&array[0][3];
ROIC[5]=&array[1][0];
ROIC[6]=&array[1][2];
ROIC[7]=&array[1][2];
ROIC[8]=&array[1][3];
ROIC[9]=&array[2][0];
ROIC[10]=&array[2][1];
ROIC[11]=&array[2][2];
ROIC[12]=&array[2][3];
ROIC[13]=&array[3][0];
ROIC[14]=&array[3][1];
ROIC[15]=&array[3][2];
ROIC[16]=&array[3][3];

}

这些是我运行后得到的结果、位置0应该有10、位置1应该有20、其余的都是正确的:

数组 float [16][0.0,0.0,30.0,40.0,50.0...] 0x001C00
[0]浮点0.0 0x001C00
[1]浮动0.0 0x001C04
[2]悬空30.0 0x001C08
[3]悬空40.0 0x001C0C
[4]悬空50.0 0x001C10
[5]浮动60.0 0x001C14
[6]浮点70.0 0x001C18
[7]浮点80.0 0x001C1C
[8]浮动90.0 0x001C20
[9]浮动100.0 0x001C24
[10]浮动110.0 0x001C28
[11]浮点120.0 0x001C2C
[12] float 130.0 0x001C30
[13]浮点140.0 0x001C34
[14]浮点150.0 0x001C38
[15]浮点160.0 0x001C3C

最初、我使用 MSP430FR2355开发板开始测试、并遇到了类似的问题、但没有写入代码的位置不同、但始终保持一致。

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

    您不会为 ROIC 设置大小。 我对它的编译感到惊讶。

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

    Keith 在 ROIC 上设置大小解决了问题、谢谢、但我不得不问您、我表明我从未将 ROIC 设置为地址、您能说明这一点吗。

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

    注意我把它删除了。 抱歉、我在矩阵函数中没有看到它。 你看我的答复太快了。 8^)

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

    非常感谢 Keith!

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

    请注意您必须将 ROIC 的大小设定为17、这是因为您正在将元素零烧录。

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

    是的、我在第一次调试运行后解决了这个问题。