Part Number:RM57L843Other Parts Discussed in Thread:HALCOGEN
TI工程师:
您好!关于Hercules系列的ADC Magnitude Interrupt,之前已经查询了中英文论坛的相关内容:
https://e2echina.ti.com/support/microcontrollers/hercules/f/hercules-safety-microcontrollers-forum/183752/tms570ls3137-adc-magnitude-threshold/558085?tisearch=e2e-quicksearch&keymatch=ADC%20Mag#558085
e2e.ti.com/…/rm44l920-adc-magnitude-compare-configuration
e2e.ti.com/…/tms570ls3137-tms570ls3137-adc-magnitude-threshold-interrupt-in-halcogen
参考中文论坛内容,我在HALCOGEN中已经配置完成ADC Magnitude Interrupt,ADC 采用Group1,软件触发,Continuous Conversion,并且忽略Memory Overrun, 将OVR_RAM_IGN bit置1。
我的现象和问题是:
在LAUNCHXL-RM57L上通过调节电位器,查询标志位ADMAGINTFLG,发现已经置1,但是进不去中断ADC Magnitude中断。查询中断使能寄存器ADMAGINTENASET与ADMAGINTENACLR对应位置都是1。
我的疑问是:
根据ADMAGINTENASET与ADMAGINTENACLR寄存器描述如下:
根据初始化步骤
中断使能寄存器ADMAGINTENASET与ADMAGINTENACLR对应位置都是1,是否存在问题,到底为啥无法进入中断。
Liang Xi:
最新进展,我把HALCOGEN中,ADC Magnitude Interrupt从FIQ改为IRQ,就可以进入中断了。想问一下FIQ与IRQ除了VIM相关文件几个标志位不同之外,还有哪些地方可能存在问题。
,
Liang Xi:
搞定了,FIQ中断使能函数不同。参考
e2e.ti.com/…/how-to-activate-fiq-interrupt
用_enable_interrupt_(),原先的_enable_IRQ_interrupt()只能使能IRQ中断。
,
Annie Liu:
谢谢您的分享,很高兴听到您的问题已经解决,遇到问题欢迎来论坛探讨。