|
www.elektron.si
|
Poglej prejnjo temo :: Poglej naslednjo temo |
Avtor |
Sporočilo |
pirpy
Pridruen/-a: Tor Dec 2007 15:34 Prispevkov: 51 Kraj: TopolŔica
|
Objavljeno: Pet Mar 14, 2008 21:43:24 Naslov sporočila: input problem |
|
|
Lep pozdrav
imam probleme z attny2313
nikakor ne morem prebrati vhodov
v bascom avr sem poizkusil
config portb = input
config portd = output
portb = 255
do
if port b < 255 then
portd = 255
else
portd = 0
end if
loop
zadeva ne deluje
poizkusil sem tudi z direktnim vpisom v register za input in output
Ddrb = &B00000000
Ddrd = &B11111111
pa tudi ne deluje
pini se obnaŔajo normalno
kot input in output le prebere jih ne
??
kbd funkcija pa deluje
kaj delam narobe? |
|
Nazaj na vrh |
|
|
igo
Pridruen/-a: Pon Nov 2007 20:00 Prispevkov: 33 Kraj: KrŔko
|
Objavljeno: Pet Mar 14, 2008 23:48:33 Naslov sporočila: Re: input problem |
|
|
pirpy je napisal/a: | Koda: |
config portb = input
config portd = output
portb = 255
do
if port b ManjŔiOd 255 then ??? ??? ??? port b , ali portb ?
portd = 255
else
portd = 0
end if
loop |
kaj delam narobe? | Delam s PICi v zbirniku, ampak...
Koda: |
stevec = 0
do
waitms 10
stevec++ ; nekako poveĆØaj en Å”tevec
if portb VeĆØjiOd 0 then ; (ĆØe je portb razliĆØen od 0)
if stevec VeĆØjiOd 155 then
portd = 255
else
portd = 0
end if
else
portd = 0
end if
loop |
Recimo, da bo sedaj portd utripal vsako sekundo in pol, ĆØe bo portb>0 (torej razliĆØen od "0"). MoraÅ” pa pripeljati nek signal na portb. Ne moreÅ” kar "virtualno" nekaj zaznavati.
Ne vem, kako je pri Bascom-u. Pri c++ je operator primerjave pri "if" podvojen (if stevec >> 0 ).
Tisti "port b" je samo pravopisna napaka tule na forumu, kajne?
LP,
Igor
p.s.: Forum ima neko nenavadno napako . Funkcija "Samopopravka" ali neĆØesa podobnega povsem zbrklja vpisano besedilo, kadar se v besedilu pojavijo operatorji primerjave ( > < = ) in Å”tevilke. Enako se mi je pojavilo že na SvetElektronike, ko nikakor ne morem spraviti skupaj enega prispevka glede Bascom-a, ne da bi mi povsem zbrkljalo napisano besedilo .
Zato je treba "ManjÅ”iOd, VeĆØjiOd" nadomestiti s pravimi operatorji. _________________ TeoretiĆØno je praksa posledica teorije, praktiĆØno je pa ravno obratno. (igo 2001) |
|
Nazaj na vrh |
|
|
pirpy
Pridruen/-a: Tor Dec 2007 15:34 Prispevkov: 51 Kraj: TopolŔica
|
Objavljeno: Sob Mar 15, 2008 01:16:20 Naslov sporočila: |
|
|
ja narobe sem napisal portb
Nisem kopiral programa ,ker ima že cel kup enih vrstic v rem ,ker sem preizkuÅ”al vse mogoĆØe.
To ni moj prvi procesor z katerim delam je pa prvi da noĆØe input delat v bascomu ,kot sem napisal ĆØe dam funkcijo ki portb spremeni v matrix keyboard interface potem deluje vendar mi z tem vzame celoten port ,zato bi prosil nekoga ki ima izkuÅ”nje z 2313 in bascom avr, da mi pomaga
.
V simulatorju program deluje po priĆØakovanjih ko pa ga zapeĆØem in spreminjam logiĆØna stanja na portih ki sem jih doloĆØil kot input se ne zgodi niĆØ ?? oziroma ne deluje kot v simulatorju.?
Verjetno je treba nekako prekopirat stanje na izhodnih pinih v port register vendar nevem kako.
Hvala
Borut |
|
Nazaj na vrh |
|
|
pirpy
Pridruen/-a: Tor Dec 2007 15:34 Prispevkov: 51 Kraj: TopolŔica
|
Objavljeno: Sob Mar 15, 2008 01:34:50 Naslov sporočila: |
|
|
naŔel sem .! Namesto portb sem za input moral napisat pinb
Borut |
|
Nazaj na vrh |
|
|
eddie
Pridruen/-a: Ned Dec 2007 16:38 Prispevkov: 5 Kraj: Primorska
|
Objavljeno: Sob Mar 15, 2008 15:20:26 Naslov sporočila: |
|
|
Tudi jaz si Å”e vedno nisem ĆØisto na jasnem s temi tremi reĆØmi pa recimo za port b:
portb, pinb in ddrb.
Vedno se lovim, kako jih je potrebno uporabljati/nastavljati.
Verjetno vas veliko to strese iz rokava torej prosim ĆØe lahko nekdo na kratko opiÅ”e.
Hvala! |
|
Nazaj na vrh |
|
|
reber moderator
Pridruen/-a: Pet Nov 2007 8:00 Prispevkov: 2149 Kraj: Bled
|
Objavljeno: Sob Mar 15, 2008 15:58:37 Naslov sporočila: |
|
|
Pravzaprav to niso ne vem kako hudo težke zadeve, tole definiranje portov ali pinov.
Za zaĆØetek si oglejte publikacijo:
http://www.elektron.si/forum/viewtopic.php?t=148
Tudi jaz sem v programiranju popoln zaĆØetnik, zato bom tudi sam veĆØkrat vpraÅ”al doloĆØene stvari, tudi bolj lahke in nezahtevne, sem paĆØ iz stare Å”ole ...
Pripravljam tudi testno ploÅ”ĆØo, ki bo namenjena ATmega8 (28 pinski AVR uC s tremi porti), na kateri bomo naredili marsikateri primer ... bo pa tiskano vezje na voljo za kupit, oziroma, objavljen bo projekt, da si boste lahko tiskano vezje naredili sami, za vse pa, da si ga boste lahko sploh sestavili, ker sestavljenih ne bom prodajal, samo vezja, kdor bo želel. Ko bom zaĆØel z risanjem, bom odprl tudi novo temo, v kateri bom zbiral predloge za nastajanje testne ploÅ”ĆØe. Verjetno je najbolje, da predloge zaĆØnem zbirati ĆØimprej
http://www.elektron.si/forum/viewtopic.php?p=985#985
Kar se tiĆØe bascoma in AVR bi okoli portov omenil ali pa tudi vpraÅ”al naslednje:
Će prav razumem se cel port definira z npr portA, samo pin pa npr portA.1 in podobno. Pri 8051 se je porte ali pine imenovalo Å”tevilĆØno, pri AVR pa so oznaĆØeni z A, B, C, D
Naj Å”e kdo kaj doda, nekdo ki ve natanĆØno, lahko tudi na kratko ali pa na Å”iroko obrazloži. |
|
Nazaj na vrh |
|
|
dkone
Pridruen/-a: Tor Nov 2007 9:47 Prispevkov: 265 Kraj: KrŔko
|
Objavljeno: Ned Mar 16, 2008 15:48:17 Naslov sporočila: |
|
|
eddie je napisal/a: | Tudi jaz si Å”e vedno nisem ĆØisto na jasnem s temi tremi reĆØmi pa recimo za port b:
portb, pinb in ddrb.
Vedno se lovim, kako jih je potrebno uporabljati/nastavljati.
Verjetno vas veliko to strese iz rokava torej prosim ĆØe lahko nekdo na kratko opiÅ”e.
Hvala! |
PORTB je ime registra, Z pind poveÅ”,da bo celoten register vhod, z ddrb=255 pa daÅ” celi register na visoko stanje se pravi na "1". _________________ Lp |
|
Nazaj na vrh |
|
|
|
|
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 Da, lahko povleče datoteke v tem forumu
|
Powered by phpBB © 2001, 2005 phpBB Group
|
|