Zdravím, tvořím jednoduchého robota s uC AT89S51 a mám problém s obsluhou infrapříjmače+demodulátoru SFH5110 (datasheetcatalog.org/datasheet/infineon/1-sfh5110.pdf) používám verzi SFH5110-38, tedy s největší citlivostí na 38 kHz. Problém je v tom, že když rozblikám infra ledky s frekvencí 38kHz, tento infrasignál se odrazí od překážky a infrapříjmač by měl nastavit na výstup log.0, ale to se nestane. Tak mě napadá, že neblikám správnou frekvencí… podívejte se na části kódu:
[code]JMP START
ORG 0BH
JMP CC0
ORG 30H
START:
*
*
MOV IE,#10000010B ;POVOLENO PŘERUŠENÍ OD Č/Č 0
MOV TMOD,#00000001B ;Č/Č 0 V REŽIMU 1
MOV TL0,#LOW(-13) ;NASTAVENÍ Č/Č 0
MOV TH0,#HIGH(-13)
SETB TR0
*
*
CC0: ;PŘERUŠENÍ OD Č/Č 0
CPL LI_LED
CPL PI_LED
MOV TL0,#LOW(-13)
MOV TH0,#HIGH(-13)
RETI[/code]
Bude to při použití krystalu 12Mhz blikat 38kHz??? Díky moc za rady
cau, ja uz mam tet 1 skoro hotoviho takze muzu nak pomoc ale bohuzel nedelam v C ale v ASM s pic takze nerozumim tvimu kodu, ja tam mam taky infraprimac na 38 khz datasheetcatalog.org/datashe … yzwrzq.pdf ,ovladani irled : led do 1 na 13,5 us,led do 0 na 13,5 us = 1 impuls,ten vyslu 255x za sebou (8 ms)a pak testuju vystup z irprimace,na vystup irprim. si pripoj zatim jenom ledku,ta zatim staci na indikaci
EDIT: pardon,omlouvam se za spatne identifikovani kodu, nedelam C a nedelam ani s AT89S51,takze nerozumim tomu to kodu
zdravím, s tím příjímačem jsem dělal a to jak s 8051 tak i s AVR. Není v tom žádnej problém ,jen si musíte dávat bacha na rušení z napájení (ten obvod jen na něj dost citlivej). Co se týká toho zápisu. Moc jsem nepochopil toto:
na časovač/čitač jem se vykašlal a udělal jsem to bez něj, klasicky ve smyčce programu. jen mám problém s tím čidlem… Reaguje správně na obražení/neodražení signálu od překážky jen když to něj svítí i stolní lampička. bez osvětlení je na výstupu stále 0… nechápu to
zalezi proti cemu meris ten vystup ? proti - by mela bejt 1,proti + mela 0,mas to zapojeny podle DS? tet to mam zapojeny na nepajivim poli a funguje to i s obycejnym ovladacem od tv,kdyz zapojim na vystup led proti + nesviti ,blika jen pri vysilani ovladace,kdyz proti - sviti ,pri vysilani zhasina, skousel sem k tomu cidlu dat i lampicku zadny ruseni sem nazaznamenal
čidlo mám zapájené v DPS (schéma: uloz.to/1464116/Hlavni%20DPS.pdf), přidal jsem ještě mezi nožky 2 a3 (+ a zem) kondenzátor 22uF a lampička už nemá žádný vliv… led si rozvicuju uC podle stavu čidla, na ovladač to reaguje ale ne na moje ifraled program zlobí a nevím co s tím
administrator: příspěvek byl upraven
Příspěvky byly sloučeny, byl upraven zápis odkazu a odkazovaný soubor byl z důvodu jednoduššího stažení přidán na fórum.
mas tam 2x irled a jednen primac, takze ir led1 vysle impuls a hned po tom musis otestovat stav ir primace -naka pauza-ir led8 vysle impuls hned testovat stav primace,takle by to melo bejt + rizeni motoru atd. bohuzel s kodem ti asi neporadim, jo nemas nahodou nakej testr na ir vysilace?? ja sem s nim testoval irled,uhel osviceni,citlivos, docela mi to pomohlo
na zjištění jestli vůbec a pod jakým úhlem svítí infra ledka mi stačí mobil a jeho vestavěná kamera. Program mám řešený obdobně, jak popisuješ, až na to, že vysílám 20 impulzů každou ledkou. jeden by ten příjmač nezaregistroval (v datasheetu uvádějí minimálně 6)… bodužel teď nemám moc času na pokusy s programem, vrhnu se na to později. mám tam použité led na 940nm, to souhlasí s příjmačem.
Nenapadá někoho čím by to ještě mohl být způsobený nepříjem signálu???