[an error occurred while processing this directive]
Ответ: XScale имеет два внешних INT pin которые могут быть использованы как counter/timer in input/capture mode
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено an 11 апреля 2006 г. 17:28
В ответ на: Кто-нибудь с Gumstix-ами сталкивался? отправлено Jin 11 апреля 2006 г. 07:09

/*
* gpio_irq.c - GPIO IRQ driver
* writes to /var/log/messages timestamp when event occurs.
*
* pass module parameter gpio to indicate which pin #
* >>>> insmod gpio_irq.ko gpio=62
*
* Andy Triboletti 11/07/2005
*
*/


#include
#include
#include
#include
#include
#include
#include
#include

#include


MODULE_LICENSE("Dual BSD/GPL");

int gpio = 0; // if not set

// get input (gpio as int) from the insmod command
MODULE_PARM(gpio, "i");


//this handler function gets called everytime an irq request happens
static irqreturn_t my_handler(int irq, void *dev_id, struct pt_regs *regs){
struct timeval timecount;
do_gettimeofday(&timecount);
printk("KERN_ALERT Using pin: %i at %i.%d", gpio, (int)timecount.tv_sec, (int)timecount.tv_usec );

return IRQ_HANDLED;


}


static int gpio_irq_init(void)
{

if(gpio == 0){
printk("KERN_ALERT Next time, do insmod param gpio=");
return 1;
}

else{

struct timeval timecount;
do_gettimeofday(&timecount);

printk("KERN_ALERT Using pin: %i at %i.%d", gpio, (int)timecount.tv_sec, (int)timecount.tv_usec );

pxa_gpio_mode(gpio | GPIO_IN );
set_irq_type(IRQ_GPIO(gpio) , IRQT_FALLING);
request_irq(IRQ_GPIO(gpio), my_handler, 0, "my handler", NULL);

printk(KERN_ALERT "Hello, world\n");
return 0;
}
}

static void gpio_irq_exit(void)
{

printk(KERN_ALERT "Goodbye, cruel world\n");
free_irq(IRQ_GPIO(gpio), NULL);
}

module_init(gpio_irq_init);
module_exit(gpio_irq_exit);

Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа

Имя (обязательно): 
Пароль: 
E-mail: 
NoIX ключ Запомнить

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 

URL изображения: 


Rambler's Top100 Рейтинг@Mail.ru
Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание

E-mail: info@telesys.ru