This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DM6437 UART1中断



我这个中断设置的是接收缓存区收到一个字节时进入中断处理程序,在另一个程序框架下测试正常。

但是在现在这个程序框架下有些问题。

如图,这是我设置开中断的代码:

执行完这段代码后程序跑飞;

这是BIOS中断管理器的设置,跟设置成功的那个一样;

经过实验,发现注释掉第一张图片的第三行代码,程序不再跑飞,但是当然进不去中断程序,如图:

注释掉第二行代码的话,程序依然跑飞,不知道是能说明跟UART设置无关?如图:

另外,做实验发现把代码中的C64_EINT4改为C64_EINT5的话不再跑飞,但是却不能进入中断。

不知道问题可能会在哪里?

  • 补充一下,程序跑飞时弹出的消息是这样的:

    我对照了一下,发现之前有添加rts64plus.lib这个文件,我在这个工程的build option下的linker选项里也添加上,出现这种情况;

    另外就是我去除掉所有有干扰的代码,只剩两个框架时,跑这张图片的三行代码:

    不正常的情况就是会产生那个找不到文件的消息。

    可是这个文件应该是自己生成的才对,为什么这里没有呢? 

  • 挺奇怪的,我在改为第六号硬件中断后,然后通过UART发送了一些字符串,之后就好使了。

    移到另一个框架下也发生之前的情况,这次6号又不好使了,我改成13号,然后发了一些内容后也好使了。

    重新上电跑程序也没有问题,去掉发送内容的函数也没有问题。

    不知道该怎么解释呢。