工具/软件:TI-RTOS
您好!
我正在 RTOS 中为 SSI1实施 HWI。
我的问题是关于中断标志。
我像这样初始化 SSI1
SSIDisable (SSI1_base);
SSIClockSourceSet (SSI1_base、SSI_Cock_SYSTEM);
SSIConfigSetExpClk (SSI1_base、系统时钟频率、SSI_FRF_MOTO_MOTO_0、SSI_MODE_SLAVE、1000000、 16);
SSIEnable (SSI1_base);
SSIIntEnable (SSI1_BASE、SSI_RXFF | SSI_RXOR);
然后、按照 RTOS 文档、我用这个设置 HWI
Hwi_Params HwiParams;
Hwi_handle SSI1Hwi;
ERROR_Block EB;
Hwi_Params_init (hwiParams);
ERROR_INIT (&EB);
hwiParams.maskSetting = Hwi_MaskingOption_self;
SSI1Hwi = Hwi_create (50、SSI1Isr、&hwiParams、&EB);
if (SSI1Hwi =空)
System_printf ("SSI1 Hwi 创建错误\n"\});
ISR ...
通常情况下(使用 Tivaware 而不是 RTOS 中的)位于我的 ISR 顶部
uint32_t intFlags;
intFlags = SSIIntStatus (SSI1_base、true); //获取标志
SSIIntClear (SSI1_base、intFlags); //清除标志
然后、我将检查 intFlags 以找出导致中断的原因并采取相应的措施。
我应该使用的 RTOS 文档信息器
Hwi_clearInterrupt (50);
1) 1)是否可以使用 Tivaware 函数来处理上述中断标志?
2) 2)如果不使用 Hwi_clearInterrupt ()、如何判断导致中断的原因(Rx、TX、RTO、Mirror)?
谢谢、
Richard