发现了一个特奇怪的现象,纳闷ing
在3c44b0x的datasheet上,明明写道INTPND复位初始值为0x0000000,但用JTAG单步调试时发现INTPND初始值为0x03000108,也就是说刚复位,就有timer5中断、uart0发送中断,外部中断0和1。太纳闷了,奇怪!我上次pwm timer的问题就在这里,一开始就有timer5中断,导致intmsk开timer5后,就不断响应timer5中断。奇怪,实在不解!是不是和编译环境有关啊?
这是怎么回事???
ps:我的编译环境是SDT2.51. 更奇怪的是,我使用rI_ISPC=BIT_TIMER5也清0不了INTPND即timer5中断
pending位,难道44b0的timer5中断不可用? 我现在怀疑是不是板载bios的问题,因为我是先将bios烧写到flash里,然后通过串口将我的bin文件下载到ram空间运行。在我的程序运行之前,只有bios运行了,所以我怀疑在bios里面使用了pwm timer5,要不没法解释。
想听听各位有什么看法,谢谢 这几乎是一定的。 搜索一下 bios 源码里面对这个寄存器是否有相关的设置? 谢谢回复。
我用的bios是革新公司他们自己编写的,不提供源码,只提供了一个bin文件。我现在打算将我自己的bin烧写到flash,不用他们的bios,如果这时timer5能正常工作,那么就说明是bios里占用了timer5.
不过也奇怪,我在自己的程序里使用rI_ISPC=BIT_TIMER5也清0不了INTPND即timer5中断 ,难道这个bios里timer5一直在发生中断,比如在计时等,所以我刚一清除,可能又来一个timer5中断?
页:
[1]