www.elektronik.si Seznam forumov www.elektronik.si
Forum o elektrotehniki in računalništvu
 
 PomočPomoč  IščiIšči  Seznam članovSeznam članov  SkupineSkupine  StatisticsStatistika  AlbumAlbum  DatotekeFilemanager DokumentacijaDocDB LinksPovezave   Registriraj seRegistriraj se 
  PravilaPravila  LinksBolha  PriponkePriponke  KoledarKoledar  ZapiskiZapiski Tvoj profilTvoj profil Prijava za pregled zasebnih sporočilPrijava za pregled zasebnih sporočil PrijavaPrijava 

AVR atmega8 Pull-up

 
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> AVR, LPC900, x51
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
oversc0re
Član
Član



Pridružen-a: Tor 13 Sep 2005 15:20
Prispevkov: 460
Aktiv.: 1.94
Kraj: Radomlje

PrispevekObjavljeno: Pon Feb 06, 2006 2:05 pm    Naslov sporočila:  AVR atmega8 Pull-up Odgovori s citatom

Zivjo!

Ponavadi sem vedno dajal eksterni pullup upor na vhodne porte, tokrat pa sem se zaradi potrebnih majhnih dimenzij vezja odločil da uporabim interne pullupe. Port D nastavljen kot vhod, pullup vklopljen. Voltmeter na pinih kaze 4.99V. Do tod vse lepo in prav, tu pa se začnejo problemi: Največji meni nerazložljiv problem je, da ko s tipko PIND povežem na maso, se čez nekaj trenutkov pullup upor ugasne Question Le če tipko spustim dovolj hitro, se napetost na pinu povrne na 5V, drugače pa ostane na 0! Po resetu se spet vrne na 5V.
Težko bi verjel, da je čip skurjen, ker je port že od samega začetka sprogramiran kot vhod.
Kakšna ideja?
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
jur
Član
Član



Pridružen-a: Pet 02 Dec 2005 14:45
Prispevkov: 5142
Aktiv.: 21.71
Kraj: [color=zelena]Ljubljana[/color]

PrispevekObjavljeno: Pon Feb 06, 2006 2:30 pm    Naslov sporočila:   Odgovori s citatom

Tole zgleda tako, kot da interni pullup upori sploh ne bi bili vklopljeni. Ali pa jih program odklopi. Ali pa je napačen port.

Jur
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo
oversc0re
Član
Član



Pridružen-a: Tor 13 Sep 2005 15:20
Prispevkov: 460
Aktiv.: 1.94
Kraj: Radomlje

PrispevekObjavljeno: Pon Feb 06, 2006 4:07 pm    Naslov sporočila:   Odgovori s citatom

Hmm prav imaš. V neki čudni situaciji se mi nekako ugasne pullup. Zdelo se mi je sicer nemogoče ker v gl. programu nikjer ne spreminjam porta, vendar pa sem ravnokar ugotovil, da mi moja knjižnica za LCD šari po portu D in je najbrž kriva za probleme. Že debugiram Evil or Very Mad
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
smatjaz
Član
Član



Pridružen-a: Pon 10 Nov 2003 16:33
Prispevkov: 846
Aktiv.: 3.57

PrispevekObjavljeno: Tor Feb 07, 2006 3:21 pm    Naslov sporočila:   Odgovori s citatom

Predlagam ti, da poleg tega, da si nastavil PinD kot vhod določiš še vrednost v DDRD registru. Ta vhod postavi na 1. Jaz to prakticiram, kadar na Pin, ki je deklariran kot vhod, priklopim kolektor tranzistorja v optocouplerju. Taka priključitev mi omogoča, da mi ni potrebno dodati upora med kolektorjem in +Vcc.

Lp M.

_________________
Električni aparati delujejo na dim ... ko dim iz njih uide ... ne delujejo več!
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
oversc0re
Član
Član



Pridružen-a: Tor 13 Sep 2005 15:20
Prispevkov: 460
Aktiv.: 1.94
Kraj: Radomlje

PrispevekObjavljeno: Tor Feb 07, 2006 3:30 pm    Naslov sporočila:   Odgovori s citatom

smatjaz je napisal/a:
Predlagam ti, da poleg tega, da si nastavil PinD kot vhod določiš še vrednost v DDRD registru. Ta vhod postavi na 1. Jaz to prakticiram, kadar na Pin, ki je deklariran kot vhod, priklopim kolektor tranzistorja v optocouplerju. Taka priključitev mi omogoča, da mi ni potrebno dodati upora med kolektorjem in +Vcc.


Tega ne razumem najbolje... PIND je read only. DDRD je pač smerni register. Problem sem rešil. Težava je bila v vrstici PORTD = (x & 0xF0) | (PIND & 0x0F); ki je stanje porta prepisala v PORT register, ki pomeni pullup upore. Sem zamenjal s PORTD = (x & 0xF0) | (PORTD & 0x0F); in deluje kot se spodobi.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Pokaži sporočila:   
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> AVR, LPC900, x51 Časovni pas GMT + 2 uri, srednjeevropski - poletni čas
Stran 1 od 1

 
Pojdi na:  
Ne, ne moreš dodajati novih tem v tem forumu
Ne, ne moreš odgovarjati na teme v tem forumu
Ne, ne moreš urejati svojih prispevkov v tem forumu
Ne, ne moreš brisati svojih prispevkov v tem forumu
Ne ne moreš glasovati v anketi v tem forumu
Ne, ne moreš pripeti datotek v tem forumu
Ne, ne moreš povleči datotek v tem forumu

Uptime: 492 dni


Powered by phpBB © 2001, 2005 phpBB Group