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 

Interni pullup-i pri AMTEGA so bogpomagaj!
Pojdi na stran 1, 2  Naslednja
 
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Elektronika za začetnike
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
vilko
Član
Član



Pridružen-a: Pet 13 Feb 2004 10:26
Prispevkov: 3365
Aktiv.: 14.17
Kraj: Dragomer

PrispevekObjavljeno: Sob Dec 22, 2012 2:08 pm    Naslov sporočila:  Interni pullup-i pri AMTEGA so bogpomagaj! Odgovori s citatom

Projektiral sem odtipavanje matrične tipkovnice in sem pri tem računal, da bom z internimi pull-up generiral visoko napetost za odtipavanje tipkovnice.
Larifari! Šele ko sem dodal zunanje 10kohmske upore, zadeva deluje, kot zamišljeno.

Naj bo moja izkušnja tudi poduk drugim začetnikom..
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Jaka57
Moderator
Moderator



Pridružen-a: Ned 12 Dec 2004 21:47
Prispevkov: 5820
Aktiv.: 24.50
Kraj: Grosuplje

PrispevekObjavljeno: Sob Dec 22, 2012 2:11 pm    Naslov sporočila:   Odgovori s citatom

Kako si jih vključil, kajti po resetu so izključeni?
Vrednosti za atmega48,88,168,328:
Reset Pull-up: med 30 in 60 k Omega
I/O pin Pull-up: med 20 in 50 k Omega

_________________
Lp, Jaka
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo
Silvo
Moderator
Moderator



Pridružen-a: Pon 24 Feb 2003 17:09
Prispevkov: 14677
Aktiv.: 61.79

PrispevekObjavljeno: Sob Dec 22, 2012 3:48 pm    Naslov sporočila:  Re: Interni pullup-i pri AMTEGA so bogpomagaj! Odgovori s citatom

vilko je napisal/a:
Projektiral sem odtipavanje matrične tipkovnice in sem pri tem računal, da bom z internimi pull-up generiral visoko napetost za odtipavanje tipkovnice.
Larifari! Šele ko sem dodal zunanje 10kohmske upore, zadeva deluje, kot zamišljeno.

Naj bo moja izkušnja tudi poduk drugim začetnikom..


Lepo prosim... Katero mikrokontroler si uporabil. Ti spišem ob priliki kodo v dokaz, da zadeva čisto lepo dela. Povrh si upam pine koristiti še za kaj drugega. Recimo kot izhode za multipeksiranje dispeja.

_________________
lp
Silvo
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Branez
Moderator
Moderator



Pridružen-a: Pon 14 Apr 2003 7:21
Prispevkov: 7831
Aktiv.: 32.97
Kraj: Koprivnica HR

PrispevekObjavljeno: Sob Dec 22, 2012 3:52 pm    Naslov sporočila:   Odgovori s citatom

Samo ne v Bascomu. Wink
_________________
The true sign of intelligence is not knowledge but imagination.
Creativity is intelligence having fun!

Albert Einstein
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran
Silvo
Moderator
Moderator



Pridružen-a: Pon 24 Feb 2003 17:09
Prispevkov: 14677
Aktiv.: 61.79

PrispevekObjavljeno: Sob Dec 22, 2012 4:03 pm    Naslov sporočila:   Odgovori s citatom

Branez je napisal/a:
Samo ne v Bascomu. Wink


Tukaj ne pada kritika na software, ampak na CPU. Program bo napisan v Assemberju.

_________________
lp
Silvo
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
vilko
Član
Član



Pridružen-a: Pet 13 Feb 2004 10:26
Prispevkov: 3365
Aktiv.: 14.17
Kraj: Dragomer

PrispevekObjavljeno: Sob Dec 22, 2012 4:37 pm    Naslov sporočila:   Odgovori s citatom

Uporabil sem Mega8.

Jaka57 je napisal/a:
Kako si jih vključil, kajti po resetu so izključeni?


Vhodne pine in njih pullupe se vključil tako:

Koda:
'INPUTS All Active Low
Row1 Alias Pinb.1 : Config Row1 = Input : Portb.1 = 1       ' Keyboard Rows (Read)
Row2 Alias Pinb.2 : Config Row2 = Input : Portb.2 = 1
Row3 Alias Pind.3 : Config Row3 = Input : Portd.3 = 1
Row4 Alias Pind.4 : Config Row4 = Input : Portd.4 = 1


Če postavim pinb1 na input in postavim portb1 na 1 pomeni to pullup vključen.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
blay44
Član
Član



Pridružen-a: Ned 19 Dec 2010 18:17
Prispevkov: 604
Aktiv.: 3.41

PrispevekObjavljeno: Sob Dec 22, 2012 5:36 pm    Naslov sporočila:   Odgovori s citatom

Basic naj bi to pravilno prevedel. V registru ddX ustrezen bit na low in v registru portX na high.
Obstaja pa še PUD bit v registru mcucr, ki izključi pull up upore. Pri resetu so vključeni, torej je PUD nič.
Vprašanje kaj Basic naredi z njim.
Je težka z AVRji. Kombinacij je kot solate.

LP
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
program_er
Član
Član



Pridružen-a: Sob 08 Mar 2008 13:47
Prispevkov: 2173
Aktiv.: 10.30
Kraj: Maribor (Pohorje)

PrispevekObjavljeno: Sob Dec 22, 2012 5:42 pm    Naslov sporočila:   Odgovori s citatom

Kaj pa če za vsak slučaj poiskusiš še "ročno" konfigurirati pine?

Koda:
DDRB = DDRB And &B11100001 'Pocisti DDRB4:1 (DDRB &= 0b11100001)
PORTB = PORTB Or &B00011110 'Vklopi Pull-Up na PORTB4:1 (PORTB |= 0b00011110)

Row1 Alias Pinb.1
...
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo MSN Messenger - naslov
jani18
Član
Član



Pridružen-a: Sob 18 Sep 2010 10:22
Prispevkov: 133
Aktiv.: 0.74
Kraj: Ojstri Vrh

PrispevekObjavljeno: Sob Dec 22, 2012 5:53 pm    Naslov sporočila:   Odgovori s citatom

Pozdravljeni!

Letos sem pisal program v c-ju (AVR Studi 4) ravno za matrično tipkovnico
3x4 in sem uporabil interne pull-up upore in zadeva čisto lepo deluje.
mikrokontroler pa je bil ATMega324A.

LpJ!
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
blay44
Član
Član



Pridružen-a: Ned 19 Dec 2010 18:17
Prispevkov: 604
Aktiv.: 3.41

PrispevekObjavljeno: Sob Dec 22, 2012 6:19 pm    Naslov sporočila:   Odgovori s citatom

Vilko, zdajle sem se spomnil, verjetno je problem v PinB.X. Ta z vpisom 1 ravno obrne bit v potrb registru.
Sam sem se ubijal ene tri dni, ko sem se spraševal kaj hudiča je narobe z ukazom
sbi/cbi pinb,pinbX
Verjetno prevajalnik v Basicu pade na isto foro.

LP
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
Jaka57
Moderator
Moderator



Pridružen-a: Ned 12 Dec 2004 21:47
Prispevkov: 5820
Aktiv.: 24.50
Kraj: Grosuplje

PrispevekObjavljeno: Sob Dec 22, 2012 6:22 pm    Naslov sporočila:   Odgovori s citatom

@Vilko: tole sem našel v helpu:


AVRPort.JPG
 Opis:
 Velikost datoteke:  58.75 KB
 Pogledana:  74 krat

AVRPort.JPG



_________________
Lp, Jaka
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo
Silvo
Moderator
Moderator



Pridružen-a: Pon 24 Feb 2003 17:09
Prispevkov: 14677
Aktiv.: 61.79

PrispevekObjavljeno: Sob Dec 22, 2012 7:00 pm    Naslov sporočila:   Odgovori s citatom

Avr-ji imajo 3 registre za upravljajnje z IO pini.

DDRx register preklaplja vhode na izhode 0 vhod 1 izhod (velja za posamezen bit registra)
PORTx register ima dva pomena. V koliko je pin definiran kot vhod postavljen bit vklopi pullup upor. Če je pin definiran kot izhod pa določi stanje izhoda.

V PINx registru je aktualno stanje IO pinov ne glede na to kaj je pin vhod ali izhod.

Pri matričnem branju tipkovnice je potrebno preklaplat med vhodi ter izhodi med samim branjem. (na nizko stanje kot izhod se "vlači" le stolpec ji se bere. Ostale je potrebno preklopit na vhode.)

_________________
lp
Silvo
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Vlado
Član
Član



Pridružen-a: Sre 03 Mar 2004 21:35
Prispevkov: 563
Aktiv.: 2.37
Kraj: Ljubljana

PrispevekObjavljeno: Sob Dec 22, 2012 8:09 pm    Naslov sporočila:   Odgovori s citatom

Bascom pravilno postavi registre, preverjeno v simulatorju.
Moje izkušnje, notranji pull up upori so v redu če so povezave do vhodnih pinov kratke.
V primeru da so povezave do vhodnih pinov daljše uporabljam zunanje pull up upore.
Prvič sem se s to težavo srečal ko sem delal en GSM alarem, ko se je modem inicializiral so vhodi noreli (GSM modem je bil zelo blizu procesorja), od tedaj na vhodih pinih uporabljam znanje pull up upore.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
arksi
Član
Član



Pridružen-a: Sre 03 Sep 2008 10:19
Prispevkov: 748
Aktiv.: 3.65
Kraj: Dolenjska

PrispevekObjavljeno: Sob Dec 22, 2012 8:44 pm    Naslov sporočila:   Odgovori s citatom

Silvo je napisal/a:
Avr-ji imajo 3 registre za upravljajnje z IO pini.

DDRx register preklaplja vhode na izhode 0 vhod 1 izhod (velja za posamezen bit registra)
PORTx register ima dva pomena. V koliko je pin definiran kot vhod postavljen bit vklopi pullup upor. Če je pin definiran kot izhod pa določi stanje izhoda.

V PINx registru je aktualno stanje IO pinov ne glede na to kaj je pin vhod ali izhod.


Samo medklic: kako se torej pull-up upore v UC vklopi (C jezik)?
DDRx=0 //definiramo vhod
PORTx= //kdaj so vklopljeni, ko je 0 ali, ko je 1?

Ali je mogoče kakšna čisto tretja varijanta vklaplanja pull-up...

LP
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Silvo
Moderator
Moderator



Pridružen-a: Pon 24 Feb 2003 17:09
Prispevkov: 14677
Aktiv.: 61.79

PrispevekObjavljeno: Sob Dec 22, 2012 8:49 pm    Naslov sporočila:   Odgovori s citatom

Primer:
Assembler
Koda:
ldi r16,(1<<PB7)|(1<<PB6)|(1<<PB1)|(1<<PB0)
ldi r17,(1<<DDB3)|(1<<DDB2)|(1<<DDB1)|(1<<DDB0)
out PORTB,r16
out DDRB,r17

"C"

Koda:
PORTB = (1<<PB7)|(1<<PB6)|(1<<PB1)|(1<<PB0);
DDRB = (1<<DDB3)|(1<<DDB2)|(1<<DDB1)|(1<<DDB0);

_________________
lp
Silvo
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 -> Elektronika za začetnike Časovni pas GMT + 2 uri, srednjeevropski - poletni čas
Pojdi na stran 1, 2  Naslednja
Stran 1 od 2

 
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: 8 dni


Powered by phpBB © 2001, 2005 phpBB Group