RTV forum PL | NewsGroups PL

Jak przekazać nazwę rejestru (PIND, PORTD) do funkcji w WinAVR do obsługi przycisków?

Przekazywanie nazwy rejestru do funkcji w WinAVR

NOWY TEMAT

elektroda NewsGroups Forum Index - Elektronika Polska - Jak przekazać nazwę rejestru (PIND, PORTD) do funkcji w WinAVR do obsługi przycisków?

slawek7
Guest

Thu Jul 21, 2011 7:17 am   



Cześć
Na początku prośba, nie śmiejsci się bo moze dla Was to oczywiste.

Jak dotąd nie miałem takiej potrzeby, a jak sie zdarzyla to to sie
zaciolem.

Pisze sobie funkcje w WinAVR obslugujaca przyciski.
Przyjmuje ona dwa parametry: nazwe rejestru pin do którego podłaczony
jest przycisk oraz konkretny nr wyprowadzenia np uint8_t
przycisk(PIND, 1);

Pytanie, jak przekazac innej funkcji nazwę pinu lub portu jako
całości. Czyli jak do innej funkcji przekazać ze chcemy operowac na
rejestrze PIND lub PORTD i oczywiście zapisywac do niego?

Zbych
Guest

Thu Jul 21, 2011 7:17 am   



W dniu 21.07.2011 07:17, slawek7 pisze:
Quote:
Cześć
Na początku prośba, nie śmiejsci się bo moze dla Was to oczywiste.

Jak dotąd nie miałem takiej potrzeby, a jak sie zdarzyla to to sie
zaciolem.

Pisze sobie funkcje w WinAVR obslugujaca przyciski.
Przyjmuje ona dwa parametry: nazwe rejestru pin do którego podłaczony
jest przycisk oraz konkretny nr wyprowadzenia np uint8_t
przycisk(PIND, 1);

Pytanie, jak przekazac innej funkcji nazwę pinu lub portu jako
całości. Czyli jak do innej funkcji przekazać ze chcemy operowac na
rejestrze PIND lub PORTD i oczywiście zapisywac do niego?

A zajrzałeś choć do manuala od avr-libc? Masz tam gotowy przykład:

http://www.nongnu.org/avr-libc/user-manual/FAQ.html#faq_port_pass

Marcin Wasilewski
Guest

Thu Jul 21, 2011 7:17 am   



Użytkownik "slawek7" <sholojda@wp.pl> napisał w wiadomości
news:205b1ffb-c169-4982-9139-e170376586ac@i6g2000yqe.googlegroups.com...
Quote:
Cześć
Na początku prośba, nie śmiejsci się bo moze dla Was to oczywiste.
Jak dotąd nie miałem takiej potrzeby, a jak sie zdarzyla to to sie
zaciolem.
Pisze sobie funkcje w WinAVR obslugujaca przyciski.
Przyjmuje ona dwa parametry: nazwe rejestru pin do którego podłaczony
jest przycisk oraz konkretny nr wyprowadzenia np uint8_t
przycisk(PIND, 1);
Pytanie, jak przekazac innej funkcji nazwę pinu lub portu jako
całości. Czyli jak do innej funkcji przekazać ze chcemy operowac na
rejestrze PIND lub PORTD i oczywiście zapisywac do niego?

Tworzysz strukturę, czy tabelę i przekazujesz wskaźnik do niej. Dotyczy
wszystkich przypadków gdy jako wynik działania funkcji chcesz przekazać
więcej niż jeden argument. Chociaż ja bym to zrobił tak, że na bitach 0-3
przekazał bym numer portu, a na bitach 4-7 numer pinu w porcie.

Co do nazw portów to nie ma czegoś takiego, to co ty widzisz jako nazwa
portu to jest etykieta odpowiadająca jakiejś wartości liczbowej. Więc nie ma
sensu przekazywać nazwy portu, a jedynie odpowiadający jej numer portu.

slawek7
Guest

Thu Jul 21, 2011 11:36 am   



Nie zaglądałem, przyznaje bez bicia bo nawet nie wpadlem na to ze moze
tam byc.

O to chyba chodzilo, dzieki.

elektroda NewsGroups Forum Index - Elektronika Polska - Jak przekazać nazwę rejestru (PIND, PORTD) do funkcji w WinAVR do obsługi przycisków?

NOWY TEMAT

Regulamin - Zasady uzytkowania Polityka prywatnosci Kontakt RTV map News map