38kHz u Bascomu

Rasprava o AVR mikrokontrolerima, AVR projekti i drugo vezano za AVR...

Moderators: pedja089, stojke369, trax, InTheStillOfTheNight

manac5800
Napredujem
Napredujem
Posts: 103
Joined: 03-01-2011, 19:24

Re: 38kHz u Bascomu

Post by manac5800 »

dakle ovo mi je program:

Code: Select all

$regfile = "m8def.dat"
$crystal = 1000000
$hwstack = 32
$swstack = 8
$framesize = 24

Config Portc.5 = Output
Config Pind.0 = Input

Led1 Alias Portc.5
Ulaz Alias Pind.0

Reset Ulaz


Config Portb.1 = Output
Tccr1a = &B10000000
Tccr1b = &B00001001
Ocr1a = 104

Dim Impuls As Byte
Impuls = 0
Const On = 12
Const Off = 232

Config Timer0 = Timer , Prescale = 1024
Load Timer0 , Off
On Ovf0 Timer0_isr
Enable Ovf0
Start Timer0
Enable Interrupts


Do

   If Ulaz = 1 Then
   Led1 = 0
   End If

   If Ulaz = 0 Then
   Led1 = 1
   End If
Loop

    Timer0_isr:

       Toggle Impuls

       If Impuls = 0 Then
          Tccr1a = &B10000000
          Load Timer0 , Off

          Else
          Tccr1a = &B01000000
          Load Timer0 , On

       End If


      Return

End
spojio sam po ovoj shemi i samo mi LED na izlazu stoji upaljena..kad uklonim IR led sa izlaza ugasi se i LED na izlazu... ali kako god da ju okrenem (u suprotnom smjeru od detektora) LED na izlazu i dalje stoji upaljena... :S
User avatar
pedja089
Administrator sajta
Administrator sajta
Posts: 7874
Joined: 20-02-2007, 14:50
Location: Beočin -Srbija

Re: 38kHz u Bascomu

Post by pedja089 »

To je normalno zbog velike osetljivosti prijemnika.
Mozes probati staviti puno manji redni otpornik na led, pa ce slabije sijati, i samim tim manji domet imati...
User avatar
Kukinjos
Pravi forumaš
Pravi forumaš
Posts: 1724
Joined: 28-03-2012, 18:01
Location: Split

Re: 38kHz u Bascomu

Post by Kukinjos »

Jesi li to promjenio kristal na 10 MHz? Neće ti bit dobar timing, moraš mijenjat vrijednosti u programu. S timerom0 više ne možeš dobit 32Hz, već min. 38,2Hz, A OCR1A ti treba bit 133 za 37,88 Khz
Cezare, star sam i nemoćan, ali poslušaj moj savjet ....
User avatar
Kukinjos
Pravi forumaš
Pravi forumaš
Posts: 1724
Joined: 28-03-2012, 18:01
Location: Split

Re: 38kHz u Bascomu

Post by Kukinjos »

Evo ti i kod za tih 10MHz:

Code: Select all

$regfile = "m8def.dat"
$crystal = 1000000
$hwstack = 32
$swstack = 8
$framesize = 24

Config Portc.5 = Output
Config Pind.0 = Input

Led1 Alias Portc.5
Ulaz Alias Pind.0

Reset Ulaz


Config Portb.1 = Output
Tccr1a = &B10000000
Tccr1b = &B00001001
Ocr1a = 133

Dim Impuls As Byte
Impuls = 0
Const On = 15
Const Off = 255

Config Timer0 = Timer , Prescale = 1024
Load Timer0 , Off
On Ovf0 Timer0_isr
Enable Ovf0
Start Timer0
Enable Interrupts


Do

   If Ulaz = 1 Then
   Led1 = 0
   End If

   If Ulaz = 0 Then
   Led1 = 1
   End If
Loop

    Timer0_isr:

       Toggle Impuls

       If Impuls = 0 Then
          Tccr1a = &B10000000
          Load Timer0 , Off

          Else
          Tccr1a = &B01000000
          Load Timer0 , On

       End If


      Return

End
Cezare, star sam i nemoćan, ali poslušaj moj savjet ....
User avatar
Kukinjos
Pravi forumaš
Pravi forumaš
Posts: 1724
Joined: 28-03-2012, 18:01
Location: Split

Re: 38kHz u Bascomu

Post by Kukinjos »

A sad sam tek vidio, zar ne bi bilo jednostavnije:

Code: Select all

Do

   Led1 = Not Ulaz

Loop
:?:
Cezare, star sam i nemoćan, ali poslušaj moj savjet ....
User avatar
niho
Pravi forumaš
Pravi forumaš
Posts: 1895
Joined: 24-09-2009, 17:26
Location: Brcko, Bosnia and Herzegovina

Re: 38kHz u Bascomu

Post by niho »

$crystal = 1000000
Zar ne govorimo o 10 MHz
User avatar
Kukinjos
Pravi forumaš
Pravi forumaš
Posts: 1724
Joined: 28-03-2012, 18:01
Location: Split

Re: 38kHz u Bascomu

Post by Kukinjos »

Ah kvragu i nule :lol: :lol: :lol: jedna manje više, neš ti, 1MHz ili 10Mhz :lol: :lol: A ja se napatio izračunat za 10MHz a kad ono sjedni 1 :azdaja:
Cezare, star sam i nemoćan, ali poslušaj moj savjet ....
User avatar
Kukinjos
Pravi forumaš
Pravi forumaš
Posts: 1724
Joined: 28-03-2012, 18:01
Location: Split

Re: 38kHz u Bascomu

Post by Kukinjos »

Kao i obično, svađam se sam sa sobom :lol: . Evo za 1MHz:

Code: Select all

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

Config Portc.5 = Output
Config Pind.0 = Input

Led1 Alias Portc.5
Ulaz Alias Pind.0

Reset Ulaz


Config Portb.1 = Output
Tccr1a = &B10000000
Tccr1b = &B00001001
Ocr1a = 13

Dim Impuls As Byte
Impuls = 0
Const On = 6
Const Off = 140

Config Timer0 = Timer , Prescale = 256
Load Timer0 , Off
On Ovf0 Timer0_isr
Enable Ovf0
Start Timer0
Enable Interrupts


Do

   Led1 = Not Ulaz

Loop

    Timer0_isr:

       Toggle Impuls

       If Impuls = 0 Then
          Tccr1a = &B10000000
          Load Timer0 , Off

          Else
          Tccr1a = &B01000000
          Load Timer0 , On

       End If


      Return

End
Nadam se kako je ovaj put točno :roll:
Cezare, star sam i nemoćan, ali poslušaj moj savjet ....
manac5800
Napredujem
Napredujem
Posts: 103
Joined: 03-01-2011, 19:24

Re: 38kHz u Bascomu

Post by manac5800 »

pedja089 wrote:To je normalno zbog velike osetljivosti prijemnika.
Mozes probati staviti puno manji redni otpornik na led, pa ce slabije sijati, i samim tim manji domet imati...
trenutno su udaljeni nekih 1cm jedno od drugoga.. čak i kad stavim zapreku između IR led i prijemnika ništa se ne događa...samo led na izlazu svijetli... kad ir led izvadim led na izlazu se ugasi..
Kukinjos wrote:Jesi li to promjenio kristal na 10 MHz? Neće ti bit dobar timing, moraš mijenjat vrijednosti u programu. S timerom0 više ne možeš dobit 32Hz, već min. 38,2Hz, A OCR1A ti treba bit 133 za 37,88 Khz
nisam ni ja primjetio dosad...evo vratio sam na 8MHz...

Code: Select all

$regfile = "m8def.dat"
$crystal = 8000000
$hwstack=40
$swstack=16
$framesize=32

Config Portc.5 = Output
Config Pind.0 = Input

Led1 Alias Portc.5
Ulaz Alias Pind.0

Reset Ulaz


Config Portb.1 = Output
Tccr1a = &B10000000
Tccr1b = &B00001001
Ocr1a = 104

Dim Impuls As Byte
Impuls = 0
Const On = 12
Const Off = 232

Config Timer0 = Timer , Prescale = 1024
Load Timer0 , Off
On Ovf0 Timer0_isr
Enable Ovf0
Start Timer0
Enable Interrupts


Do

   Led1 = Not Ulaz

Loop

    Timer0_isr:

       Toggle Impuls

       If Impuls = 0 Then
          Tccr1a = &B10000000
          Load Timer0 , Off

          Else
          Tccr1a = &B01000000
          Load Timer0 , On

       End If


      Return

End
sve mi je isto kao što sam rekao već... :S i sad sam probavao nešto... čak i kad samo dotaknem žicu koja je spojena na OC1A upali se ledica na izlazu :S
User avatar
Kukinjos
Pravi forumaš
Pravi forumaš
Posts: 1724
Joined: 28-03-2012, 18:01
Location: Split

Re: 38kHz u Bascomu

Post by Kukinjos »

Opet si zamiješao vrijednosti, evo ti kod koji radi na 8MHz:

Code: Select all

$regfile = "m8def.dat"
$crystal = 8000000
$hwstack = 40
$swstack = 16
$framesize = 32

Config Portb.1 = Output
Config Portc.5 = Output
Config Pind.0 = Input

Led1 Alias Portc.5
Ulaz Alias Pind.0


Tccr1a = &B10000000
Tccr1b = &B00001001
Ocr1a = 104

Dim Impuls As Byte
Impuls = 0
Const On = 12
Const Off = 232

config timer0=timer,prescale = 1024
Load Timer0 , Off
on ovf0 Timer0_isr
enable ovf0
start timer0
enable interrupts



Do

Led1 = Not Ulaz

Loop



Timer0_isr:

   Toggle Impuls

   If Impuls = 0 Then
      Tccr1a = &B10000000
      Load Timer0 , Off

      Else
      Tccr1a = &B01000000
      Load Timer0 , On

   End If


  return
I još nešto, napravio sam sklop i radi dobro, pokrijem nečim crnim prostor između IR-LED i TSOP-a i led se upali. Gledao na osciloskop, i sve je u redu. Nacrtaj točnu shemu kako je sve spojeno.
Cezare, star sam i nemoćan, ali poslušaj moj savjet ....
User avatar
Kukinjos
Pravi forumaš
Pravi forumaš
Posts: 1724
Joined: 28-03-2012, 18:01
Location: Split

Re: 38kHz u Bascomu

Post by Kukinjos »

Evo opet odgovaram sam sebi :azdaja: , dobro si vratio na 8MHz, ko zna što sam ja gledao :roll: :oops: Ovaj kod što sam ti zadnjeg poslao je isto ok, samo malo razmješten, ma isto u biti. Evo radi već par sati, ne smeta mu ništa osim daljinskog od TV-a, razmak IR-LED-a je negdje 1cm i onda mi ne reagira na prst, ali na karton uredno radi, kad okrenem IR-LED u plafon, osjetljivost padne i onda reagira na svašta, pa i na prst. Doduše nemam baš taj TSOP, već neki izvađen iz satelitskog prijemnika, ali mislim kako tu ne bi trebala bit velika razlika.
Cezare, star sam i nemoćan, ali poslušaj moj savjet ....
manac5800
Napredujem
Napredujem
Posts: 103
Joined: 03-01-2011, 19:24

Re: 38kHz u Bascomu

Post by manac5800 »

Nemam u multisimu ni Mege ni TSOP-a, a u paintu nije baš opcija crtati..napišem ti sve, stavim fotku kasnije ako hoćeš... ATmega: na pin 7 i 20 spojeno +5V, na pin 8 i 22 spojeno 0V. na pin 28 spojen otpornik 330Ohm i na njega anoda LEDice, katoda na 0V. Na pin 2 je spojen izlaz sa TSOP, prema onoj shemi koju si ti stavio (jedina razlika je kondenzatoru u filteru, stavio sam elektrolit od 10uF i umjesto 4,7kOhm sam stavio 5kOhm..). Na pin 2 je spojen i pull down otpornik (1kOhm). na pin 15 je spojen otpornik 330Ohm, a on dalje na anodu IR LED, katoda spojena na 0V.
I da, malo sam razmjestio i više ne reagira kad samo prstom diram žicu. Ali reagira (detektira signal) ako žicu sa pina 15 približim detektoru na nekih 1cm, možda malo manje.. ako je IR led spojena nebitno kud je okrenuta LED na izlazu samo svijetli, kao i prije...
User avatar
Kukinjos
Pravi forumaš
Pravi forumaš
Posts: 1724
Joined: 28-03-2012, 18:01
Location: Split

Re: 38kHz u Bascomu

Post by Kukinjos »

Prvo moram tvoju opisnu shemu prebacit u električnu :ohno: , to ću tijekom dana, sad je već jako rano :wink:
Cezare, star sam i nemoćan, ali poslušaj moj savjet ....
User avatar
Kukinjos
Pravi forumaš
Pravi forumaš
Posts: 1724
Joined: 28-03-2012, 18:01
Location: Split

Re: 38kHz u Bascomu

Post by Kukinjos »

manac5800 wrote:Na pin 2 je spojen i pull down otpornik (1kOhm). ...
Taj otpor ti cijelo vrijeme drži pin na masi, tj. na nekih 0,8V zato ti i svijetli LED. Skini ga pa probaj.
Cezare, star sam i nemoćan, ali poslušaj moj savjet ....
User avatar
Kukinjos
Pravi forumaš
Pravi forumaš
Posts: 1724
Joined: 28-03-2012, 18:01
Location: Split

Re: 38kHz u Bascomu

Post by Kukinjos »

I još nešto, ovaj moj nazovi TSOP ima malo limeno kućište koje je spojeno na srednji pin , tj. na masu. Pokušaj omotat svoj TSOP aluminijskom folijom i ostavit samo rupicu za prijemnu diodu i foliju spoji na masu. To bi trebalo spriječit induciranje smetnji u njemu. Vidim nemaš kristal, jel to koristiš interni oscilator i na koliko ti je podešen?
Cezare, star sam i nemoćan, ali poslušaj moj savjet ....
manac5800
Napredujem
Napredujem
Posts: 103
Joined: 03-01-2011, 19:24

Re: 38kHz u Bascomu

Post by manac5800 »

nije zbog pull down-a, probao sam već...
probam kasnije ovo sa folijom, a nabavio sam i novi TSOP pa moram i s njim probati...
Da, interni je...na 8MHz..
Stavio sam negdje ranije već fuse bits kako su podešeni..
User avatar
Kukinjos
Pravi forumaš
Pravi forumaš
Posts: 1724
Joined: 28-03-2012, 18:01
Location: Split

Re: 38kHz u Bascomu

Post by Kukinjos »

Nešto ti ipak ne štima, provjeri dobro mase, ja sam stavio čisto da sebi ne ispadnem glup onaj otpor od 1K za pull down, ma nema šanse da radi, odmah sruši napon ispod 1V. Da vidio sam upravo fuse bitove, ok.
Cezare, star sam i nemoćan, ali poslušaj moj savjet ....
Post Reply