编写的程序如下。第一个图为main.c文件,第二、三个图为vectors.asm文件。



上电后,在interrupt void c_int4()的第一行(即第一张图的第38行)设置断点,全速运行,程序没有停止,即没有进入到中断程序中来,在寄存器中查看计数器的值,发现早已超过设定值。
我又在vectors.asm的INT4的第一行(即第三张图的44行)设置断点,全速运行,结果同上。
想问一下,我是寄存器配置出错还是其他的问题,想得到解答,谢谢。
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.
编写的程序如下。第一个图为main.c文件,第二、三个图为vectors.asm文件。



上电后,在interrupt void c_int4()的第一行(即第一张图的第38行)设置断点,全速运行,程序没有停止,即没有进入到中断程序中来,在寄存器中查看计数器的值,发现早已超过设定值。
我又在vectors.asm的INT4的第一行(即第三张图的44行)设置断点,全速运行,结果同上。
想问一下,我是寄存器配置出错还是其他的问题,想得到解答,谢谢。
请问您是用的哪个版本的ccs? 如果是生成ELF可执行文件的话,_c_int4函数前不用加下划线,在老的COFF可执行文件里是需要下划线的,请看下面的网站说明。
https://software-dl.ti.com/ccs/esd/documents/C2000_c28x_migration_from_coff_to_eabi.html
可以下载CSL库,里面有些例程。
https://www.ti.com/tool/SPRC223