-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!news.icpnet.pl!
.POSTED!not-for-mail
From: "Grzegorz Niemirowski" <g...@p...onet.pl>
Newsgroups: pl.misc.elektronika
Subject: Re: Obsluga przycisku - atmega8
Date: Tue, 31 Jan 2012 02:41:31 +0100
Organization: ICP News Server
Lines: 56
Message-ID: <jg7gsf$cjv$1@news.icpnet.pl>
References: <jg7c70$f94$1@inews.gazeta.pl>
NNTP-Posting-Host: 178235204013.unknown.vectranet.pl
Mime-Version: 1.0
Content-Type: text/plain; format=flowed; charset="iso-8859-2"; reply-type=response
Content-Transfer-Encoding: 8bit
X-Trace: news.icpnet.pl 1327974096 12927 178.235.204.13 (31 Jan 2012 01:41:36 GMT)
X-Complaints-To: a...@i...pl
NNTP-Posting-Date: Tue, 31 Jan 2012 01:41:36 +0000 (UTC)
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: OE PowerTool 4.5
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.6157
X-WWW: http://www.grzegorz.net/
Xref: news-archive.icm.edu.pl pl.misc.elektronika:624773
[ ukryj nagłówki ]Pawel <ppf9@USUN_TOpoczta.fm> napisał(a):
> Witam wszystkich
> Co ja robie nie tak?
> Probuje obsluzyc przycisk, ale nie potrafie.
> Przycisk podpiety do PD7. PD7-przycisk-GND
> diody PB0 i PB1
> Pb0-rezystor100Omow-dioda-GND
> to samo z druga dioda.
> #define F_CPU 1000000L /* Częstotliwość kwarcu */
> #include <avr/io.h>
> #include <util/delay.h> /* Kiedyś <avr/delay.h> */
> int main(void)
> {
> DDRB = 0b11111111;
> DDRD = 0b00000000;
> PORTD = 0b11111111;
> for (;;)
> {
> if((PIND & 0b10000000))
> //if(bit_is_clear(PIND,7))
> {
> PORTB |= (1<<0);
> _delay_ms(125);
> }
> else
> {
> PORTB |= (1<<1);
> _delay_ms(125);
> }
> }
> return 0;
> }
Mógłbyś łaskawie napisać co Ci nie działa. Tzn czego oczekujesz a tego nie
ma. Bo z tego co widzę, to kod ogólnie reaguje na przyciski. Obecnie jest
tak, że jeśli przycisk nie jest wciśnięty (na początku), to dzięki
wewnętrznemu podciągnięciu najstarszy bit w PIND będzie ustawiony i włączy
Ci się dioda podłączona do PB0 (o ile podłączyłeś ją w dobrym kierunku).
Jeśli teraz wciśniesz przycisk, to włączy się dioda podłączona do PB1 a stan
diody podłączonej do PB0 nie zmieni się. Analogicznie, jeśli w momencie
włączenia zasilania przycisk był wciśnięty, zaświeci się dioda podłączona do
PB1. W momencie puszczenia przycisku włączy się dioda podłączona do PB0 a
stan diody podłączonej do PB1 nie zmieni się. Twój kod jedynie ustawia bity
portu B a nigdy ich nie zeruje. Jeśli przycisk ma przełączać diody, to w
jednym z ifów zmień
|=
na
&=~
I w sumie to nie wiem po co Ci tutaj opóźnienie.
--
Grzegorz Niemirowski
http://www.grzegorz.net/
OE PowerTool i Outlook Express: http://www.grzegorz.net/oe/
Uptime: 5 days, 23 hours, 19 minutes and 35 seconds
Następne wpisy z tego wątku
- 31.01.12 01:50 Grzegorz Niemirowski
- 02.02.12 18:17 Pawel
- 02.02.12 18:36 Grzegorz Niemirowski
- 02.02.12 19:06 Pawel
- 02.02.12 19:47 Grzegorz Niemirowski
- 05.02.12 13:32 MH
- 05.02.12 14:41 Grzegorz Niemirowski
Najnowsze wątki z tej grupy
- w czasach LED komary mają ciężko
- walizka z kodami
- Rejestrator temperatur - termopara, siec
- Router LTE z możliwością zmian MTU
- Fajny film widziałem...
- Jaka ładowarka sieciowa do Iphona?
- Taśma izolacyjna do prac elektrycznych
- Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Wkrętarki, wiertarki...
- Zasilacz impulsowy 12V 10A, coś godnego uwagi jako zamiennik akumulatora wkrętarki
- Mouser - koszt wysyłki
- [OT] Jak wycinac ksztalt w piance lub styropianie?
Najnowsze wątki
- 2025-07-19 Zakrzewo => SAP HCM Consultant <=
- 2025-07-19 Poznań => Konsultant SAP HCM <=
- 2025-07-19 Poznań => SAP HCR Consultant <=
- 2025-07-18 celnicy pobili policjanta
- 2025-07-18 Warszawa => Technik IT - Konfiguracja i Wsparcie Sprzętowe <=
- 2025-07-18 Warszawa => Specjalista ds. Sprzętu IT i Wsparcia Technicznego <=
- 2025-07-18 Białystok => Kotlin Developer <=
- 2025-07-18 Warszawa => Sales Director (Cloud solutions) <=
- 2025-07-18 Spalinowa trauma
- 2025-07-18 Polska => Senior Key Account Manager <=
- 2025-07-18 Białystok => Programista Kotlin <=
- 2025-07-18 Szczecin => Key Account Manager IT <=
- 2025-07-18 Łódź => Programista Mainframe (z/OS, Assembler) <=
- 2025-07-18 Łódź => Mainframe (z/OS, Assembler) Developer <=
- 2025-07-18 Lublin => Delphi Programmer <=