Temat: odczyt przycisku

witam, oryginalnie zamontowany przycisk w systemie jest widziany jako btn_1, dodałem do systemu wg opisy jeszcze pięć przycisków, wszystko działa po odczycie /sys/class/gpio*/value po zwarciu zmienia sie stan z 1 na 0 - cz\yli działa.
pytanie tylko jak skorzystać w systemie  skoro logread nie widzi zmian? musi być wkompilowane w jądro obsługa tych przycisków?

pozdrawiam

2

Odp: odczyt przycisku

Tak, w danej architekturze musisz te pięć dodatkowych zdefiniować.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

3

Odp: odczyt przycisku

Cezary możesz mi podpowiedzieć gdzie w make menuconfig będą ustawienia gpio tzn chciałbym wkompilować :
gpoi 10,13,16,19,22 jako wejścia pozostałe 10 (diody 6104k) jako wyjścia.
W poprzedniej konfiguracji miałem tak zrobione że diody link_act i Link_speed nie zaświecały sie przy starcie.
Gdzie tego szukać przy kompilacji?

pozdrawiam

4

Odp: odczyt przycisku

Nie ma tego w menuconfig.

Albo robisz ręcznie przez eksport/import jak gpio, albo sięgasz do kodu źródłowego (target/linux/adm5120/files/arch/mips/adm5120/...) i dodajesz odpowiednie sekcje identycznie jak są już tam dodane.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

5

Odp: odczyt przycisku

ok, znalazłem w /trunk/target/linux/adm5120/files/arch/mips/adm5120/edimax   w pliku br-6104k.c ,zdefiniowane diody, zastanawiam sie tylko czym różni sie GPIO_LED_STD od GPIO_LED_INV. Czy moge zmienić nazwy diodom? gdzie znajduje sie przypożądkowanie konkretnej diody do konkretnego zadania?

Są jeszcze 2 pliki br-61xx.c i br-61xxh wygląda na to że jest tam obsługa przycisku, a jak pisałem wcześniej chciałbym ich dodatkowo 5
wpis w pliku wygląda tak:
static struct gpio_button br61xx_gpio_buttons[] __initdata ={

                       .desc = "reset_button",
                       .type =  EV_KEY
                       .code = BTN_0
                       .threshold = 5
                       .gpio = ADM5120_GPI0_PIN2
}

czy tutaj mam doklepać kolejne przyciski?


pozdrawiam

6

Odp: odczyt przycisku

GPIO_LED_STD sterowana jest "normalnie" (gpio na 1 - włącz, 0 - wyłącz), GPIO_LED_INV - odwrotnie (gpio na 0 - włącz, 1 - wyłącz). W systemie ma być zawsze tak samo, czyli 0 włącza, 1 włącza.

Nazwy możesz nadać dowolne, gdzieś w systemie masz za to skrypty które przypisują daną akcję diodzie.
Generalnie tak, tam masz dodać nowe przyciski.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.