am3358 的处理器,在uboot 里面读取 pwm (0x48300000)寄存器报data abort 异常,然后重启了。
操作和结果如下:
=> md 0x48300000 1 48300000:data abort pc : [<9ff8ab6e>]lr : [<9ff8ab53>] reloc pc : [<8082cb6e>]lr : [<8082cb53>] sp : 9ef3dce8 ip : 48300000fp : 00000008 r10: 48300000 r9 : 9ef3ded8r8 : 48300000 r7 : 00000001 r6 : 00000001r5 : 00000004 r4 : 00000004 r3 : 00000000 r2 : 0000003ar1 : 9ef3dcfc r0 : 00000009 Flags: nZCv IRQs off FIQs on Mode SVC_32 Resetting CPU ... resetting ...
为什么会出现这种情况?怎么解决
Jian Zhou:
读取其他寄存器呢?是不是读写函数的问题?
Hao Wang:
回复 Jian Zhou:
读写其它寄存器是正常的。
Hao Wang:
回复 Jian Zhou:
或者说你们有没有在uboot下读过 ePWM的寄存器。
我现在用的板子就是 beaglebone balck。
Steven Liu1:
回复 Hao Wang:
可能是非法访问,或者访问越界了,建议你先查一下,你是否有正常使能pwm相关的时钟寄存器,还有module对应的初始化设置,如果这些没设置或者没设对并没有把这个pwm module使能的话,读取是会出问题的。