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 

UART problem
Pojdi na stran 1, 2, 3  Naslednja
 
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Osnove programiranja AVR-jev
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
linel
Član
Član



Pridružen-a: Čet 06 Mar 2008 21:14
Prispevkov: 178
Aktiv.: 0.85
Kraj: prekmurje

PrispevekObjavljeno: Sre Avg 25, 2010 10:12 pm    Naslov sporočila:  UART problem Odgovori s citatom

pozdravljeni!

imam problem z uart in sicer, imam mega16 ki je na razvojni plošči asy avr 5 in pa mega 8 ki je na protoboard. z mego16 sprejemam z mego8 oddajam, povezava med njima je da je Tx iz mege8 povezan na Rx mega16, frekvenca kristala je pri obeh 12 MHz. ko imam vsakega posameznega na plošči in sem povezan z terminalom, na PC deluje tako sprejemanje kot oddajanje, ko pa mikrokontrolerja povežem med sabo pa ne deluje. kaj bi lahko bil problem?


tukaj prilagam programa:

pošiljanje:
Koda:

$regfile = "m8def.dat"
$crystal = 12000000
$baud = 4800

$hwstack = 32
$swstack = 8
$framesize = 24
Dim A As Byte
Config Portb = Input

Do
If Pinb.0 = 1 Then
   Print Bin(a)
Wait 1
End If
Loop



sprejemanje:

Koda:
$regfile = "m16def.dat"
$crystal = 12000000
$baud = 4800

$hwstack = 32
$swstack = 8
$framesize = 24

Dim A As Byte
Config Portb = Output

Do
   A = Inkey()
   If A > 0 Then

    Portb = &B11111111
    Else
    Portb = &B00000000
   End If
   Wait 1
Loop
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
int47
Član
Član



Pridružen-a: Pon 15 Dec 2003 0:10
Prispevkov: 2104
Aktiv.: 8.88
Kraj: Ljubljana

PrispevekObjavljeno: Sre Avg 25, 2010 10:24 pm    Naslov sporočila:   Odgovori s citatom

Si povezal tudi mase?
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
linel
Član
Član



Pridružen-a: Čet 06 Mar 2008 21:14
Prispevkov: 178
Aktiv.: 0.85
Kraj: prekmurje

PrispevekObjavljeno: Sre Avg 25, 2010 10:30 pm    Naslov sporočila:  UART problem Odgovori s citatom

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



Pridružen-a: Tor 07 Avg 2007 15:30
Prispevkov: 1234
Aktiv.: 5.67
Kraj: KOPER

PrispevekObjavljeno: Sre Avg 25, 2010 10:30 pm    Naslov sporočila:   Odgovori s citatom

V oddajnem delu nisi spremenljivki A dodelil vrednost, zato ti sprejemnik ne pokaže nič, ker vrednosti "0" ne obravnava.
Koda:

If A > 0 Then naredi




v oddajniku dodeli neko vrednost spremenljivki A, pa bo delalo.

_________________
Lep pozdrav iz Kopra Rudi
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
linel
Član
Član



Pridružen-a: Čet 06 Mar 2008 21:14
Prispevkov: 178
Aktiv.: 0.85
Kraj: prekmurje

PrispevekObjavljeno: Sre Avg 25, 2010 10:42 pm    Naslov sporočila:  UART problem Odgovori s citatom

ne razumem najbolj... jaz bi rad da ko bi sklenil tipko na oddajnem bi se vklopile ledice na sprejemnem mc. lahko prosim spremeniš kodo ?
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
nakamichi
Član
Član



Pridružen-a: Pon 21 Avg 2006 18:51
Prispevkov: 845
Aktiv.: 3.69
Kraj: Nova Gorica

PrispevekObjavljeno: Sre Avg 25, 2010 10:59 pm    Naslov sporočila:   Odgovori s citatom

Sicer ne vem kaj za en jezik je to ampak ti imaš nekakšno funkcijo Print Bin(a), ki sklepam, da preko UARTA pošlje a. Ampak ti nikjer ne definiraš a in on ga jemlje kot 0. Nekje prej določi a=1 recimo.

L.P.,
Miha
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo MSN Messenger - naslov
rudiP
Član
Član



Pridružen-a: Tor 07 Avg 2007 15:30
Prispevkov: 1234
Aktiv.: 5.67
Kraj: KOPER

PrispevekObjavljeno: Čet Avg 26, 2010 7:22 am    Naslov sporočila:   Odgovori s citatom

Tako bo bolje:

Koda:
$regfile = "m8def.dat"
$crystal = 12000000
$baud = 4800

$hwstack = 32
$swstack = 8
$framesize = 24
Dim A As Byte
Config Portb = Input
a = 1

Do
   If Pinb.0 = 1 Then
      Print Bin(a)
      Wait 1
   End If
Loop

_________________
Lep pozdrav iz Kopra Rudi
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
linel
Član
Član



Pridružen-a: Čet 06 Mar 2008 21:14
Prispevkov: 178
Aktiv.: 0.85
Kraj: prekmurje

PrispevekObjavljeno: Čet Avg 26, 2010 9:30 am    Naslov sporočila:  UART problem Odgovori s citatom

sem probal in ne dela, nevem zakaj, nevem če imam kaj narobe povezano.. bi lahko prosim gdo poskusil in mi javil če dela? potem vsaj vem da sem nekaj narobe povezal..
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
program_er
Član
Član



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

PrispevekObjavljeno: Čet Avg 26, 2010 9:42 am    Naslov sporočila:   Odgovori s citatom

Ukaz Inkey() prebere "čakajočo" vrednost v serijskem bufferju, katerega pa nimaš definiranega.

Probaj tako:

Koda:
$regfile = "m16def.dat"
$crystal = 12000000
$baud = 4800

Config Serialin = Buffered , Size = 20

$hwstack = 32
$swstack = 8
$framesize = 24

Dim A As Byte
Config Portb = Output

Do
   A = Inkey()
   
   If A > 0 Then
      Portb = &B11111111
      Clear Serialin
    Else
      Portb = &B00000000
   End If

   Wait 1
Loop
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo MSN Messenger - naslov
linel
Član
Član



Pridružen-a: Čet 06 Mar 2008 21:14
Prispevkov: 178
Aktiv.: 0.85
Kraj: prekmurje

PrispevekObjavljeno: Čet Avg 26, 2010 10:27 am    Naslov sporočila:  UART problem Odgovori s citatom

sem probal, vendar se ne vklopijo niti ledice ko iz terminala pošiljam..
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
program_er
Član
Član



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

PrispevekObjavljeno: Čet Avg 26, 2010 10:36 am    Naslov sporočila:   Odgovori s citatom

Kaj pa:

Koda:
$regfile = "m16def.dat"
$crystal = 12000000
$baud = 4800

$hwstack = 32
$swstack = 8
$framesize = 24

Dim A As Byte
Config Portb = Output

Do
   A = Waitkey()
   
   If A > 0 Then
      Portb = 255  'To ne vpliva na porogram, je le krajsa, decimalna oblika binarnega zapisa
    Else
      Portb = 0
   End If

   Wait 1
Loop
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo MSN Messenger - naslov
linel
Član
Član



Pridružen-a: Čet 06 Mar 2008 21:14
Prispevkov: 178
Aktiv.: 0.85
Kraj: prekmurje

PrispevekObjavljeno: Čet Avg 26, 2010 10:48 am    Naslov sporočila:  UART problem Odgovori s citatom

tako dela ja, samo se ledice ne ugasnejo....
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
rudiP
Član
Član



Pridružen-a: Tor 07 Avg 2007 15:30
Prispevkov: 1234
Aktiv.: 5.67
Kraj: KOPER

PrispevekObjavljeno: Čet Avg 26, 2010 11:06 am    Naslov sporočila:   Odgovori s citatom

Zbriši tisti wait 1.
_________________
Lep pozdrav iz Kopra Rudi
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
rudiP
Član
Član



Pridružen-a: Tor 07 Avg 2007 15:30
Prispevkov: 1234
Aktiv.: 5.67
Kraj: KOPER

PrispevekObjavljeno: Čet Avg 26, 2010 11:13 am    Naslov sporočila:   Odgovori s citatom

probaj tako:


Koda:
$regfile = "m16def.dat"
$crystal = 12000000
$baud = 4800

$hwstack = 32
$swstack = 8
$framesize = 24

Dim A As Byte
Config Portb = Output

Do
   A = Waitkey()
   
   If A = 1 Then       Portb = 255 
   If A = 2 Then       Portb = 0

Loop


Na oddajniku pa izmenično pošiljaj 1 ali 2.

_________________
Lep pozdrav iz Kopra Rudi
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
linel
Član
Član



Pridružen-a: Čet 06 Mar 2008 21:14
Prispevkov: 178
Aktiv.: 0.85
Kraj: prekmurje

PrispevekObjavljeno: Čet Avg 26, 2010 11:15 am    Naslov sporočila:  UART problem Odgovori s citatom

na ugasnejo, kako bi pa poslal vrednost manjšo od nič? oz. da bi tam vpisal večjo vrednost pri kateri naj vklopi. v katerem načinu to pošilja oz sprejema? ( hex, bin..) ?
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 -> Osnove programiranja AVR-jev Časovni pas GMT + 2 uri, srednjeevropski - poletni čas
Pojdi na stran 1, 2, 3  Naslednja
Stran 1 od 3

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


Powered by phpBB © 2001, 2005 phpBB Group