glebka
Apr 12 2006, 07:19
если можно помогите кодом для обработки FIQ, второй день бьюс без толку.Или где можно посмотреть.
_4afc_
May 17 2006, 07:34
Цитата(glebka @ Apr 12 2006, 11:19)

если можно помогите кодом для обработки FIQ, второй день бьюс без толку.Или где можно посмотреть.
Решили проблему?
У меня код работает, но вот прикрутить его к изменению уровня на ноге - пока не удаётся.
Пока тока софтверно запускается.
glebka
May 17 2006, 08:53
Код у меня работающий такой:
#define macroEnableMAXInterrupt AT91F_AIC_EnableIt (AT91C_BASE_AIC,AT91C_ID_FIQ);
#define macroDisableMAXInterrupt AT91F_AIC_DisableIt (AT91C_BASE_AIC,AT91C_ID_FIQ);
void MAX6957_Interrupt_FIQ_Init(void)
{
//Set FIQ interrupt
AT91F_PIO_CfgPeriph(AT91C_BASE_PIOA,FIQ_MASK,0);
AT91F_AIC_ConfigureIt(AT91C_BASE_AIC,AT91C_ID_FIQ,FIQ_INTERRUPT_LEVEL, AT91C_AIC_SRCTYPE_EXT_POSITIVE_EDGE ,FastInterruptHandler);
macroEnableMAXInterrupt;
//AT91F_AIC_Trig (pAic,AT91C_ID_FIQ) ;
}
Попробуйте,напишете результат.
_4afc_
May 18 2006, 12:53
Цитата(glebka @ May 17 2006, 12:53)

Попробуйте,напишете результат.
Работает конечно. Я просто не правильно понял доку, думал FIQ можно с любой ноги получить, а аказалось, что лишь с одной.