zlgarm_ljt,您好! 1、对于Bank的设置我一直是跳在Bank0-RAM,Bank1-Flash.的,否则程序好象运行不到main处,但在这里Bank的设置应该不会影响我的 程序的,(而且我用的S是SMART2200的开发板,是在你们公司提供的专用模板下调试的)。因为我是在DubugInChipFlash片内Flash中调试的,它应该不会再用到片外Flash和片外RAM了,程序在BOOT1:0为11下在片内Flash0X00000000处启动。当然程序在DebugExRam下调试的话,好象只要不更改PINSEL2的设置,程序可以正常运行和达到预期效果,但是P2,P3口没有该过来的,呵呵。 2、后来我将ResetInit中的外部总线的初始化(包括BanK的初始化)全部都屏蔽掉,因为这些是对外部数据总线进行的 ,而我并不需要,所以屏蔽掉应该是可以的,然后我在自己程序中 ,将PINSEL2 = PINSEL2&0XFFXFFFFCF | (3<<4); 或者PINSEL2 = PINSEL2&0X0000000F | (3<<4);来设置P2,P3口为GPIO口,程序运行到这里就死掉了 ,最后在DataAort处. 3、如果将PINSEL2 = PINSEL2&0XFFXFFFFCF | (2<<4);其他都没变,程序还是正常运行的,但没能将P2,P3口进行修改. 4、后来我看PINSEL2物理地址中的内容时,发现那个值在上电时为0F814914,根据DataSheet上的说明,复位后,该处的值应该不是这个值的,而且在Bit4-Bit5处的值与BOOT1:0一致的 ,我的BOOT1:0为11,也就是该处应该是3,即0F814934,而且奇怪的地方就是上电后的这个初始值是怎么还是这个值呢,我已经在ResetInit将PINSEL2 = 0X0F814914;屏蔽掉了哦,应该是由硬件来决定这个初始值的吧, 但我将14改为24,程序确实可以正常运行,只是改为34或者00000034,程序就死掉了,从上面也可以看到我是先读出来的,然后再修改的, 5、我有点怀疑P2,P3口可以做GPIO口,因为没有 调出来,当然可能是我哪里还没有考虑到把,所以希望大家都能帮帮我,而且上面的问题似乎说明PINSEL2物理地址的内容为0F814914是硬件决定的,比如BOOT1:0,但和书上说的似乎不是一致的,而且,该处的内容只能将14改24,不能改34,或者000000034,否则程序会死掉的,而要设置P2,P3全部为GPIO,就的这样修改,,所以麻烦周立功的工程师们再帮我找找问题出在哪里啊?
|