这两天头一次用arm,用的是LPC1766的开发板,在调试的过程中遇到一个问题,现在很急。
程序是一个SD卡的小程序,主要的函数就3个,一个SD卡的初始化,然后是连续读多个个扇区的函数,一个连续写多个扇区的函数。
问题是这样的,当主函数里只调用SD卡初始化一个函数时,SD卡初始化正常。(说明初始化函数没问题)。
然后在初始化后面添加调用连续读多个扇区的函数,问题出现,系统不执行初始化函数了!!
使用的编译器是keil,用ULINK2进行Debug时出现这样的问题:
*** error 65: access violation at 0x0FFFFE8C : no 'write' permission
位置是初始化函数中定义第一个局部变量的地方,也就是说是一进入函数就出错。指向出错单元的寄存器是R13(sp)。请教各位大大帮忙解决一下。小弟刚刚开始接触,很多术语还不太明白,这个问题今天很急着解决,希望大大们能说的详细点,谢谢 |