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 

Bascom AVR MEGA8 UART Branje UDR

 
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
videosony
Član
Član



Pridružen-a: Čet 15 Nov 2007 1:32
Prispevkov: 21
Aktiv.: 0.10
Kraj: Maribor

PrispevekObjavljeno: Ned Nov 18, 2007 1:00 am    Naslov sporočila:  Bascom AVR MEGA8 UART Branje UDR Odgovori s citatom

Pozdravljeni!

imam povezana 2 ATMEGA8 AVRja. Prvi šteje od 0-100 in vsakih 500ms pošlje številko na UART z ukazom PRINT.

Drugi ob Rx prekinitvi gre v podprogram (dela) in bi moral to številko prebrat, to mi ne gre.

če uporabim ukaz :
PRINTBIN UDR
mi na monitorju izpiše pravo vrednost v desetiški obliki (0-99)

Probal sem ukaz BINVAL, MAKEDEC,... nič mi ni delalo.

Torej jaz bi rad prišel do prebrane vrednosti v desetiški obliki in bi jo uporabil naprej v podprogramu.

hvala
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
strobos
Član
Član



Pridružen-a: Sre 24 Sep 2003 12:19
Prispevkov: 726
Aktiv.: 3.06
Kraj: Brežice

PrispevekObjavljeno: Ned Nov 18, 2007 1:32 am    Naslov sporočila:   Odgovori s citatom

Za pošiljanje uporabi printbin, za sprejem pa inputbin. Potem, ko sprejmeš, lahko pretvoriš v kaj drugega, ki ti bo ustrezalo.

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



Pridružen-a: Čet 15 Nov 2007 1:32
Prispevkov: 21
Aktiv.: 0.10
Kraj: Maribor

PrispevekObjavljeno: Ned Nov 18, 2007 2:05 am    Naslov sporočila:   Odgovori s citatom

Hvala STROBOS !!!
Res nisem pričakoval tako hitrega odgovora.
Zdaj dela z eno napako in sicer izpisuje mi vsako drugo številko npr:
1,3,5,...
ali
0,2,4,....
del programa:

ODDAJNI AVR:

dim i as byte
do
if i=100 then i=0
incr I
prinbin I
waitms 500
loop


Sprejemni AVR:
dim i as byte

...prekinitvena rutina....
rx_interrupt:
i=udr
inputbin i
print i

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



Pridružen-a: Sre 24 Sep 2003 12:19
Prispevkov: 726
Aktiv.: 3.06
Kraj: Brežice

PrispevekObjavljeno: Ned Nov 18, 2007 2:15 am    Naslov sporočila:   Odgovori s citatom

Hm, jaz ne delam z interrupti, verjetno je tukaj problem, da ti prebere vsako drugo številko. Jaz uporabim na sprejemni strani samo:

Dim vrednost as byte

do
Inputbin Vrednost
If Vrednost = .... Then
........
........
end if
........
loop


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



Pridružen-a: Sre 24 Sep 2003 12:19
Prispevkov: 726
Aktiv.: 3.06
Kraj: Brežice

PrispevekObjavljeno: Ned Nov 18, 2007 2:33 am    Naslov sporočila:   Odgovori s citatom

videosony je napisal/a:

Sprejemni AVR:
dim i as byte

...prekinitvena rutina....
rx_interrupt:
i=udr
inputbin i
print i

lp

Poskusi izbrisati vrstico i=udr ali pa vrstico inputbin i, ker zgleda, da vsaka vrstica bere na novo. Ukaz inputbin čaka, dokler ni znaka na vhodu.

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



Pridružen-a: Čet 15 Nov 2007 1:32
Prispevkov: 21
Aktiv.: 0.10
Kraj: Maribor

PrispevekObjavljeno: Ned Nov 18, 2007 2:57 am    Naslov sporočila:   Odgovori s citatom

Še enkrat hvala!
No skoraj sem že pospravil vse, nakar sem videl tvoj odgovor in ga preizkusil.
Zdaj pa res vse dela kot mora.
Izbrisal sem:
I=UDR

Hvala za pomoč
lp Boštjan
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: 493 dni


Powered by phpBB © 2001, 2005 phpBB Group