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.

[参考译文] CCS/TM4C1290NCPDT:SSI 中断未触发。

Guru**** 2539500 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/887221/ccs-tm4c1290ncpdt-ssi-interrupt-not-firing

器件型号:TM4C1290NCPDT

工具/软件:Code Composer Studio

我作为主机运行、并且需要在中断字完成后移出、一次传输1个字。  代码后跟、永远不会调用中断例程。

     MAP_SysCtlPeripheralEnable (SYSCTL_Periph_SSI3);

(这里还有其他代码在运行、因此 SSI3有时间启用)

   IntMasterEnable();
   SSIConfigSetExpClk (SSI3_base、             //
                       GetCpuClk()、           //
                       SSI_FRF_MOTO_MODE_0、   //
                       SSI_MODE_MASTER、       //
                       100000,                //*FIXME*启动速度相当慢。
                       8);                   //
   SSIEnable (SSI3_base);                      //
   SSIIntRegister (SSI3_base、SSI3_ISR);       //设置 SSI3 ISR。
   SSIIntEnable (SSI3_base、SSI_TXEOT);        //发送 FIFO 为空时的中断。

   SSIDataPut (SSI3_base、数据);

void SSI3_ISR (void){

   从未调用过。

其他中断正在运行(例如 UART 中断)、当我最初写入非中断驱动代码时、工作正常。  我注意到、在 TivaWare Periperal 驱动程序库用户指南和 SSI.c 代码本身中、它们只列出了 SSI_TXFF、SSI_RXFF、SSI_RXTO 和 SSI_RXOR 有效、但在 ssi.h 中包含了 SSI_TXEOT 有效。

谢谢、Doug

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我的错误。  中断被调用一次、而不是第二次。