 |
www.elektronik.si Forum o elektrotehniki in računalništvu
|
Poglej prejšnjo temo :: Poglej naslednjo temo |
Avtor |
Sporočilo |
tilz0R Član


Pridružen-a: Čet 31 Maj 2012 15:39 Prispevkov: 898 Aktiv.: 5.65 Kraj: Črnomelj
|
Objavljeno: Čet Jul 26, 2012 2:06 pm Naslov sporočila: IR receiver (RC5) v Bascom AVR z ATMega8 |
|
|
Zdravo!
Ker sem slabo podkovan za napredno tehnologijo v bascom-avr, sem za sprejem IR signala pregledal kar help ki ga bascom ponuja, in našel kodo:
Koda: |
'-----------------------------------------------------------------------------------------
'name : rc5.bas
'copyright : (c) 1995-2005, MCS Electronics
'purpose : based on Atmel AVR410 application note
'micro : 90S2313
'suited for demo : yes
'commercial addon needed : no
'-----------------------------------------------------------------------------------------
$regfile = "m8def.dat" ' specify the used micro
$crystal = 1000000 ' used crystal frequency
$baud = 19200 ' use baud rate
$hwstack = 32 ' default use 32 for the hardware stack
$swstack = 10 ' default use 10 for the SW stack
$framesize = 40 ' default use 40 for the frame space
'use byte library for smaller code
$lib "mcsbyte.lbx"
Config Rc5 = Pind.2
'the interrupt routine is inserted automatic but we need to make it occur
'so enable the interrupts
Enable Interrupts
'reserve space for variables
Dim Address As Byte , Command As Byte
Print "Waiting for RC5..."
Do
'now check if a key on the remote is pressed
'Note that at startup all pins are set for INPUT
'so we dont set the direction here
'If the pins is used for other input just unremark the next line
'Config Pind.2 = Input
Getrc5(address , Command)
'we check for the TV address and that is 0
If Address = 0 Then
'clear the toggle bit
'the toggle bit toggles on each new received command
'toggle bit is bit 7. Extended RC5 bit is in bit 6
Command = Command And &B01111111
Print Address ; " " ; Command
End If
Loop
End
|
Shema, za priklop na ATMego je tukaj
Zadeva gre na INT0 pin na čipu.
IR sprejemnik je od LG hišnega kina (delujoč), daljinec je pa prav tako od tistega hišnega kina (za test uporabljeno, da je zagotovo usklajeno, oddajnik => sprejemnik).
Pač ko tisto kodo izvedem, dodal sem še kodo za lcd, da mi na njem izpiše "address" in "command", ampak sta obe VEDNO 255.
Uporabljam 1MHz quartz (interni). Sem pa nekje zasledil, da je zgornja koda namenjena 12MHz kristalu zunanjemu. Ali to drži, če dam 12MHz kristal, bi potem tole moralo delati?
Hvala za odgovor! _________________ Knowledge sharing is caring.
majerle.eu | stm32f4-discovery.net
Nazadnje urejal/a tilz0R Čet Jul 26, 2012 2:29 pm; skupaj popravljeno 1 krat |
|
Nazaj na vrh |
|
 |
MadMax Član


Pridružen-a: Pet 09 Sep 2005 22:16 Prispevkov: 4743 Aktiv.: 20.02
|
Objavljeno: Čet Jul 26, 2012 2:22 pm Naslov sporočila: |
|
|
Citiram: |
Uporabljam 1MHz quartz (interni). Sem pa nekje zasledil, da je zgornja koda namenjena 12MHz kristalu zunanjemu. |
Kje si zasledil to o 12MHz?
Ti ukaz $crystal = 4000000 v programu kaj pomeni? Vsaj po ZKP?
Pa katero mego sploh imaš - in spet, $regfile = "2313def.dat" pove kaj?
Nazadnje urejal/a MadMax Čet Jul 26, 2012 2:25 pm; skupaj popravljeno 1 krat |
|
Nazaj na vrh |
|
 |
tilz0R Član


Pridružen-a: Čet 31 Maj 2012 15:39 Prispevkov: 898 Aktiv.: 5.65 Kraj: Črnomelj
|
|
Nazaj na vrh |
|
 |
MadMax Član


Pridružen-a: Pet 09 Sep 2005 22:16 Prispevkov: 4743 Aktiv.: 20.02
|
Objavljeno: Čet Jul 26, 2012 2:29 pm Naslov sporočila: |
|
|
Lahko da je 1MHz prepočasno.
Sem ravno 2 dni nazaj razbijal glavo, ko sem iz Mega32 selil program za senzor vlage DHT11 na Mega8. V trenutku odčitavanja je zmrznil. Po povišanju takta na 8MHz je speljalo kot raketa.
Seveda ni dovolj le dodati kvarc, spremenit moraš še ustrezne fuse bite, kar verjetno že veš. |
|
Nazaj na vrh |
|
 |
tilz0R Član


Pridružen-a: Čet 31 Maj 2012 15:39 Prispevkov: 898 Aktiv.: 5.65 Kraj: Črnomelj
|
Objavljeno: Čet Jul 26, 2012 2:31 pm Naslov sporočila: |
|
|
Sem popravil sedaj zgornjo kodo.
Aha, tako je to tudi res čist možno. Še dobro da kristali jutri pridejo
Hvala ti za to  _________________ Knowledge sharing is caring.
majerle.eu | stm32f4-discovery.net |
|
Nazaj na vrh |
|
 |
MadMax Član


Pridružen-a: Pet 09 Sep 2005 22:16 Prispevkov: 4743 Aktiv.: 20.02
|
Objavljeno: Čet Jul 26, 2012 2:46 pm Naslov sporočila: |
|
|
Nja, sicer pa, a si prepričan, da daljinec sploh uporablja RC5? Lahko je kaj drugega, RC5 ni edini. Če program ne izpiše nič (255) v kolikor ne razbere RC5... |
|
Nazaj na vrh |
|
 |
tilz0R Član


Pridružen-a: Čet 31 Maj 2012 15:39 Prispevkov: 898 Aktiv.: 5.65 Kraj: Črnomelj
|
Objavljeno: Čet Jul 26, 2012 2:52 pm Naslov sporočila: |
|
|
MadMax je napisal/a: |
Nja, sicer pa, a si prepričan, da daljinec sploh uporablja RC5? Lahko je kaj drugega, RC5 ni edini. Če program ne izpiše nič (255) v kolikor ne razbere RC5... |
piše že tako. upam da ne lažejo
Sicer pa...našel sem tole spletno stran za preračun bitov. Mi lahko ti prosim nastaviš glede na moje potrebe, se pravi 12MHz, ker se ne razumem čist v to zadevo? _________________ Knowledge sharing is caring.
majerle.eu | stm32f4-discovery.net |
|
Nazaj na vrh |
|
 |
MadMax Član


Pridružen-a: Pet 09 Sep 2005 22:16 Prispevkov: 4743 Aktiv.: 20.02
|
Objavljeno: Čet Jul 26, 2012 3:54 pm Naslov sporočila: |
|
|
Ext. crystal/resonator high freq. 16k ck + 64ms bi moral biti pomoje vredu.
Tu tudi sam nisem čisto doma, še zmeraj grem bolj po metodi poskušanja...
Mi je pa najenostavnje v AVR studiu najprej prebrat obstoječe stanje, potem pa spremenit samo kar rabim. |
|
Nazaj na vrh |
|
 |
stursc Član

Pridružen-a: Tor 08 Jun 2004 14:29 Prispevkov: 323 Aktiv.: 1.36
|
Objavljeno: Čet Jul 26, 2012 8:12 pm Naslov sporočila: |
|
|
RC5 koda lepo deluje na notrnji oscilator
Preiskušeno vsaj na petih AVR-jih (Tiny13, 2313 in Mega8, 16,32)
LP, stursc |
|
Nazaj na vrh |
|
 |
tilz0R Član


Pridružen-a: Čet 31 Maj 2012 15:39 Prispevkov: 898 Aktiv.: 5.65 Kraj: Črnomelj
|
Objavljeno: Čet Jul 26, 2012 8:25 pm Naslov sporočila: |
|
|
Se pravi, da je lahko problem samo v tem, da daljinec ne oddaja RC5.
Če torej razdrem daljinec in uporabim tisto IR diodo, ki jo vsebuje, in s čipom ATMega8 oddajam signal preko "RC5SEND".
Nato v drugi ATMegi8 sprejemam ta signal z IR sprejemnikom, ki je bil prav tako v hišnem kinu, z ukazom "GETRC5".
Ali bi potem zadeva delovala ? _________________ Knowledge sharing is caring.
majerle.eu | stm32f4-discovery.net |
|
Nazaj na vrh |
|
 |
Silvo Moderator


 
Pridružen-a: Pon 24 Feb 2003 17:09 Prispevkov: 14673 Aktiv.: 61.94 Kraj: Koroška-okolica Dravograda
|
Objavljeno: Čet Jul 26, 2012 10:54 pm Naslov sporočila: |
|
|
RC5 je protokol. IR dioda nima nič skupnega z njim. _________________ lp
Silvo |
|
Nazaj na vrh |
|
 |
bolha95 Član


Pridružen-a: Pet 14 Dec 2007 21:33 Prispevkov: 296 Aktiv.: 1.39 Kraj: Križe / Tržič
|
Objavljeno: Pet Jul 27, 2012 7:10 am Naslov sporočila: |
|
|
tilz0R je napisal/a: |
Se pravi, da je lahko problem samo v tem, da daljinec ne oddaja RC5.
|
Jaz imam LG TV (42LW650), pa mi daljinec pošilja NEC kodo. Kako sem ugotovil? Sprejemno diodo sem priklopil na osciloskop. _________________ LP,
Robi
Kjer se znanje konča, se domišljija začne |
|
Nazaj na vrh |
|
 |
Highlag Član


Pridružen-a: Pet 23 Jan 2004 20:42 Prispevkov: 4034 Aktiv.: 17.03 Kraj: Črnuče
|
Objavljeno: Pet Jul 27, 2012 8:04 am Naslov sporočila: |
|
|
Za uspešen prenos potrebuješ IR diodo in sprejemnik, ki delujeta na enaki valovni dolžini svetlobe, ter enaki nosilni frekvenci. Potem se ti lahko pripeti še to, da je izhod sprejemnika invertiran. _________________ If at first you don't succeed, destroy all evidence that you tried. |
|
Nazaj na vrh |
|
 |
ssdzkrez Član



Pridružen-a: Sre 12 Jan 2011 15:13 Prispevkov: 401 Aktiv.: 2.28 Kraj: Hrastnik
|
Objavljeno: Pet Jul 27, 2012 12:19 pm Naslov sporočila: |
|
|
Poizkusi še s kakšnim drugim daljincem. Ko sem se pred časom igral z bascomom in RC5 sem imel doma 3 philipsove daljince in vsi so delali na RC5 protokolu. |
|
Nazaj na vrh |
|
 |
tilz0R Član


Pridružen-a: Čet 31 Maj 2012 15:39 Prispevkov: 898 Aktiv.: 5.65 Kraj: Črnomelj
|
Objavljeno: Pet Jul 27, 2012 12:32 pm Naslov sporočila: |
|
|
Nekje sem zasledil, da gorenje uporablja RC5 protokol. Če je to res, potem bi daljinec od klime lahko deloval, bom poizkusil
Edit:
Našel sem shemo za oddajnik RC5 kode za ATMego8:
"IN" se priključi na OC1A pin ATMege.
Ali je to pravilna shema priključitve?
Koda za oddajnik:
Koda: |
$regfile = "m8def.dat"
$crystal = 1000000
$baud = 19200
$hwstack = 32
$swstack = 10
$framesize = 40
Dim Togbit As Byte , Command As Byte , Address As Byte
Command = 12 ' power on off
Togbit = 0 ' make it 0 or 32 to set the toggle bit
Address = 0
Do
Waitms 500
Rc5send Togbit , Address , Command
Loop
End
|
PS: Koda za sprejemnik je na začetku teme, spodaj je prikazana shema za sprejemnik RC5 kode (vsaka zadeva na svoji ATMegi), priključen na INT0 pin uC-ja.
 _________________ Knowledge sharing is caring.
majerle.eu | stm32f4-discovery.net |
|
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 Ne, ne moreš povleči datotek v tem forumu
|
Uptime: 493 dni
Powered by phpBB © 2001, 2005 phpBB Group
|