求助求助!本人粗心导致的问题 望大神帮助解答!!问题是以下代码导致:
void ReadMcu(unsigned char *p)
{
unsigned char *addr=0;
unsigned short int i=0,number=0;
addr = (unsigned char *)&DevSetting;
number = sizeof(DevSetting);
FLASH_ReadMore(DEVICE_SET_ADDR,256,(unsigned int *)&DevSetting);
for(i=0;i<number;i++)//这里给野指针和往后的256位数据都赋值了
{
*p = *addr;
p++;
addr++;
}
}
void Readall(void)
{
unsigned char *temp;
ReadMcu(temp);
}
下载程序进去之后出现,就再也下不进去程序了,报错如下Unkonw CPU ;于是我把此函数注释 只运行到定义指针那,看到指指向的值为0x4800 0000,看了一下手册 这个地址指向GPIOA
所以我觉得是设置到什么东西了,,望大神指教啊~
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
ReadMcu(temp);
这里只定义了指针, 可没给它分配空间呢, 不出错才怪
把它改为这样, 是不是256自己改吧
unsigned char temp[256];
我回头看知道是这里出错了啊,问题是下载不了程序了。。
是编译可以通过~第一次可以下载程序进去,第二次就不能再下载了。。我连续试了两块板子,都是这个情况。就是这段代码导致的。估计是野指针赋值配置到下载口的IO设置了。
一周热门 更多>