forum.mcontrollers.com - hlavní stránka forum.mcontrollers.com - fórum

 

.: fórum - hlavní stránka :.
Technology Stronghold by Rudolf Vesely
How to build Microsoft System Center hosted cloud series
FAQFAQ HledatHledat Seznam uživatelůSeznam uživatelů Uživatelské skupinyUživatelské skupiny RegistraceRegistrace
ProfilProfil StatistikaStatistika Soukromé zprávySoukromé zprávy PřihlášeníPřihlášení

 
Dallas DS89C450 - IR vysílač (C - keil), rozblikání LED
Jdi na stránku 1, 2  Další
 
Přidat nové téma   Zaslat odpověď    Obsah fóra mcontrollers.com -> 8051 / 8052
 
polgis
Účastník
Účastník


Založen: 27.3.2011
Příspěvky: 18

PříspěvekZaslal: 27 březen 2011, 20:46    Předmět: Dallas DS89C450 - IR vysílač (C - keil), rozblikání LED Citovat

Zdravím,
prosím o rady, návody, odkazy..
potřeboval bych rozblikat IR diodu ve spolupráci s 8051 (Dallas DS89C450)..

něco malinko v C s tímto kontrolerem mi jde.. z různých zdrojů jsem tak trošku zmaten, potřeboval bych nějakým způsobem usměrnit a navést, jednak jak diodu správně připojit a následně správně rozblikat..

moc děkuji

Arrow administrator: přejmenováno z "IR vysílač (C - keil)"
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
piityy
Profesionál
Profesionál


Založen: 1.4.2008
Příspěvky: 2139

PříspěvekZaslal: 27 březen 2011, 23:04    Předmět: Citovat

S IR diodou je problém - je IR(infra red - pro lidské oko neviditelné spektrum). Tedy když ji rozblikáš, stejně to neuvidíš Smile.
Nejdřív si to vyzkoušej na obyčejné LED diodě. Pak uprav parametry blikání dle požadovaných a vyměň led za IR.
Pokud by se ani tak nedařilo, doplň parametry blikání a odkaz na použitý překladač. Taky to něco malikno jdoucího by mohlo pomoct.
V C pro x51 jsem zaím psal akorát v keilu pro mcu silabs.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
polgis
Účastník
Účastník


Založen: 27.3.2011
Příspěvky: 18

PříspěvekZaslal: 27 březen 2011, 23:12    Předmět: Citovat

Smile jo tak jasně že neuvidím.. to bylo jen takové "pojmenování problému" řekněme ..

spíš mi právě jde o ten princip blikání (RC5), jestli třeba už někdo neřešil pro tento kontroler (v Cečku nejlépe).. připojení diody zřejmě přes nějaký tranzistor..

tak nějak nevím moc jak na to, kde začít...
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
piityy
Profesionál
Profesionál


Založen: 1.4.2008
Příspěvky: 2139

PříspěvekZaslal: 27 březen 2011, 23:23    Předmět: Citovat

Tak s RC5 ti bez příslušného HW bohužel nepomůžu.
IR diody mohou obvykle dostávat při RC5 impulzy nad 50mA, což by asi mcu nedal. Takže tranzistor ano Smile. Můžu ti načrtnout zapojení, ale to je tak asi vše.


Naposledy upravil piityy dne 27 březen 2011, 23:28, celkově upraveno 1 krát.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
polgis
Účastník
Účastník


Založen: 27.3.2011
Příspěvky: 18

PříspěvekZaslal: 27 březen 2011, 23:24    Předmět: Citovat

příslušný HW, myslíš?
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
piityy
Profesionál
Profesionál


Založen: 1.4.2008
Příspěvky: 2139

PříspěvekZaslal: 27 březen 2011, 23:29    Předmět: Citovat

Ještě jsem nahoru něco dopsal.

Tím HW myslím procesor s programátorem, připojenou diodou a osciloskop u sebe na stole Smile.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
polgis
Účastník
Účastník


Založen: 27.3.2011
Příspěvky: 18

PříspěvekZaslal: 27 březen 2011, 23:35    Předmět: Citovat

mám DS89C450 od Dallasu.. programuje se přes SPI, takže programátor netřeba..
součástky nejsou problém nakoupit..
osciloskop ( ... .. bohužel.. - možná bych se pokusil si někde něco obstarat)..

takové ty sedmisegmentovky, diody již mám za sebou, seriovkou taky jakž takž komunikuju.. ale tady si vážně nevím rady.. kde bych měl začít?
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
piityy
Profesionál
Profesionál


Založen: 1.4.2008
Příspěvky: 2139

PříspěvekZaslal: 27 březen 2011, 23:53    Předmět: Citovat

Tak nejdřív si musíš skouknout samotný protokol http://en.wikipedia.org/wiki/RC-5 .

Tam uvidíš, že základ kounikace na 36kHz je pulz o délce 27.8us a je jich vždy 32 v řadě. To je úloha jak vyšitá pro pwm.
Na procesor jsem zatím nekoukal, ale pravděpodobné má timer schopný pwm generovat.
Začátek je tedy rozchodit pwm na 36kHz. Pak nastavit šířku pulzu na požadovanou délku (25-33%) a nakonec dát dohromady vyslání bitu (tedy buď 32 pulzů světla (šířka pulzu 20-33%) a 32 pulzů tma (pwm na nulu) nebo opačně). Když budeš mít funkční bit, tak už by to měla bejt hračka Smile.

Bude třeba plně využívat hw schopnosti procesoru (přerušení).


Naposledy upravil piityy dne 28 červen 2011, 16:25, celkově upraveno 1 krát.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
polgis
Účastník
Účastník


Založen: 27.3.2011
Příspěvky: 18

PříspěvekZaslal: 28 březen 2011, 0:03    Předmět: Citovat

jj diky..
avšak.. určitě něco takového někdo už řešil, jen se mi nepovedlo najít kde a kdo:)
je myslíš lepší hledat, nebo se pokusit něco "zbastlit" na vlastní triko?.. nejradši bych použil třeba nějakou hotovou knihovnu, či něco podobného ..
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
piityy
Profesionál
Profesionál


Založen: 1.4.2008
Příspěvky: 2139

PříspěvekZaslal: 28 březen 2011, 0:15    Předmět: Citovat

Tak ten procesor není ohledně periferií tak moderní, jak jsem očekával ale zas má rychlý jednocyklový jádro, takže nutné využití hw by nebylo tak akutní... Cenu za dobře vytvořený datasheet bych jim tedy nedal, to je tragédie tam něco najít.

Když chceš něco hotovho, asi budeš muset líp hledat Very Happy. Ovšem portování na tvůj konktrétní mcu se stejně nejspíš nevyhneš.
Osobně kdybych něco přijatelnýho do hodiny nenašel, tak bych to neřešil a napsal si to sám. Když znáš svůj hw a máš potřebné vybavení, tak je to práce na odpoledne Smile.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
polgis
Účastník
Účastník


Založen: 27.3.2011
Příspěvky: 18

PříspěvekZaslal: 28 březen 2011, 0:22    Předmět: Citovat

ok, začnu tedy (určitě ne jedno-odpolení) pokus něco stvořit..

nějaký obecný algoritmus?.. nebyl by?Smile
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
piityy
Profesionál
Profesionál


Založen: 1.4.2008
Příspěvky: 2139

PříspěvekZaslal: 28 březen 2011, 1:03    Předmět: Citovat

O obecném nevím Smile.
Začal bych tím generováním pulzů. Vzhledem k tomu, že implementováné timery nedosahují ani náznakem schopností svých kolegů v jiných mcu (avr, pic a spousta dalších), použil bych je pouze tvoření periody 36kHz signálu.
Na to se hodí timer2 v režimu autoreload.
Pokud např. poženeš jednocyklový jádro na 27MHz, tak na periodu (27.8us) potřebuješ 27e6/36e3 = 750 instrukčních cyklů. Autoreload hodnota pro timer by tedy byla 65536-750=64786.

Pokud by ti nevadilo, že program nemůže dělat nic jiného (kromě případných obsluh přerušení), mohl bych zkusit napsat jakýsi pseudokód, jeho implementace by už ale byla na tobě.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
polgis
Účastník
Účastník


Založen: 27.3.2011
Příspěvky: 18

PříspěvekZaslal: 28 březen 2011, 1:13    Předmět: Citovat

klidně.. to budu rád..

zatím využívám jen obě seriové linky (timer 1)
xtal mám 11.0952MHz

pokud to pomůže:)
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
piityy
Profesionál
Profesionál


Založen: 1.4.2008
Příspěvky: 2139

PříspěvekZaslal: 28 březen 2011, 15:05    Předmět: Citovat

Tu máš něco na zkoumání Smile.


rc5.c
 Komentář:

Stáhnout
 Soubor:  rc5.c
 Velikost:  2.32 kB
 Staženo:  374 krát

Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
polgis
Účastník
Účastník


Založen: 27.3.2011
Příspěvky: 18

PříspěvekZaslal: 28 březen 2011, 19:12    Předmět: Citovat

diky vřele.. prostuduji a určitě se budu dál ptát Smile
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

Zobrazit příspěvky z předchozích:   
Zobrazit předchozí téma :: Zobrazit následující téma  
Přidat nové téma   Zaslat odpověď    Obsah fóra mcontrollers.com -> 8051 / 8052 Časy uváděny v GMT + 2 hodiny
Jdi na stránku 1, 2  Další
 
Strana 1 z 2
Přejdi na:  
Můžete přidat nové téma do tohoto fóra.
Můžete odpovídat na témata v tomto fóru.
Nemůžete upravovat své příspěvky v tomto fóru.
Nemůžete mazat své příspěvky v tomto fóru.
Nemůžete hlasovat v tomto fóru.
Můžete k příspěvkům připojovat soubory
Můžete stahovat a prohlížet přiložené soubory
 



Num Lock Holder - app to hold Numlock
Copyright © 2017 Rudolf Veselý, mcontrollers.com.
Je zakázáno používat části tohoto webu bez souhlasu autora. || Powered by phpBB © 2001, 2002 phpBB Group - with RedSquare DoubleJ(Jan Jaap)