LED stolpec

vse o zvezi z elektroniko

Moderator: frank11

LED stolpec

OdgovorNapisal/-a Ghostbuster » 20.02.2005, 17:50

Prosim vas vse, ki se spznate na vezja bolj od mene da mi pomagate!

Potrebujem načrt za led stoplec!

Ta stolpec naj bi imel od 20-40 led diod, ki bi se prižigale postopoma navzor in da bi bil signal za led diodo, dovolj močen da bi lahko preklopil rele recimo (iskra trk 6V), pa je je to težko pa bo veljal tudi tranzistor. Napajanje bi lahko bilo 6V,9V,12V. In po možnost če bi se dalo regulirati čas med preklopi diod z potenciometrom.

Ali bi lahko mi ta načrt narisali prosim.

Zahvaljujem se že v naprej


Lp
Freestile wind riders !!!

SlikaSlika
Uporabniški avatar
Ghostbuster
Član
 
Prispevkov: 77
Pridružen: 09.01.2005, 15:36
Kraj: Maribor - Rače

OdgovorNapisal/-a dh » 21.02.2005, 09:44

napiši kaj več, kaj bi potreboval:

- kako se prižigajo LED-ice
- kaj jih proži (ali je to neki Level-meter ali kaj)
- kje je vezan rele in kaj ga sproži...

....

lp, Dejan
Lenoba je gonilo napredka!
dh
Član
 
Prispevkov: 35
Pridružen: 30.09.2003, 13:11
Kraj: Cirkovce

OdgovorNapisal/-a Ghostbuster » 24.02.2005, 11:13

Predvsem rabim LED stolpec, ki se prižiga postopoma navzgor.

Nekaj takega kot je level meter na mix plati.


Lp
Freestile wind riders !!!

SlikaSlika
Uporabniški avatar
Ghostbuster
Član
 
Prispevkov: 77
Pridružen: 09.01.2005, 15:36
Kraj: Maribor - Rače

OdgovorNapisal/-a settler » 24.02.2005, 17:52

settler
 
Prispevkov: 2
Pridružen: 29.01.2005, 12:10
Kraj: Idrija

OdgovorNapisal/-a Ghostbuster » 24.02.2005, 19:09

ja nisem imel ravno tega v mislih

rabo bi nekaj kar ni odvisno od zvoka



Lp
Freestile wind riders !!!

SlikaSlika
Uporabniški avatar
Ghostbuster
Član
 
Prispevkov: 77
Pridružen: 09.01.2005, 15:36
Kraj: Maribor - Rače

OdgovorNapisal/-a markec » 24.02.2005, 21:40

:?:
Zadnjič spremenil markec, dne 09.06.2005, 18:32, skupaj popravljeno 1 krat.
Uporabniški avatar
markec
Član
 
Prispevkov: 38
Pridružen: 07.02.2004, 11:13
Kraj: Ponikva

OdgovorNapisal/-a Ghostbuster » 25.02.2005, 09:03

Ta tvoja rešitev je idealna.

že 25-30 diod bi bilo dovolj. Bi lahko objavil kakšno shemo. O programiranju čipov nimam pojma zato te prosim če bi lahklo to malo obrazložil.


Lp
Freestile wind riders !!!

SlikaSlika
Uporabniški avatar
Ghostbuster
Član
 
Prispevkov: 77
Pridružen: 09.01.2005, 15:36
Kraj: Maribor - Rače

OdgovorNapisal/-a markec » 25.02.2005, 10:38

:?:
Zadnjič spremenil markec, dne 09.06.2005, 18:33, skupaj popravljeno 1 krat.
MARKEC
Uporabniški avatar
markec
Član
 
Prispevkov: 38
Pridružen: 07.02.2004, 11:13
Kraj: Ponikva

OdgovorNapisal/-a MarE69 » 25.02.2005, 14:41

Prilagam shemo za poljubno dolg "stolpec".

Uporabljen material:

procesor: P89LPC901 (8 pinski, 1k flash, 6 IO)
ser/par shift register: 4094
2x tipka za štelanje hitrosti + start
regulator napetosti LM317, izhodna napetost mora biti 3,3V
1x rele, 1x NPN transistor, nekaj uporov in nekaj blokirnih kond.

spodaj pri zadnjem 4094 je še konektor za razširitve.


Takale stvar ima določene prednosti:
- poljubno nastavljanje
- vsako LED lahko poljubno prižigamo/ugašamo - glede na softver
- rele se proži neodvisno: če hočeš eliminirat zakasnitev releja, lahko "upališ" tistih nekaj ms preden zagori zadnja LED

Procesor ne rabi nič zunanjih komponent, ker ima interni RC oscilator in interni reset...

Polni podatki za LPC901 so:
8051-based microcontroller with 2 clock highspeed core, 1K Bytes ISP/IAP Flash, 128 Bytes RAM, Dual DPTR, 2 Timers/Counters, I2C, Analog Comparator, WDT, RTC

itd... itd...
Priponke
ledsemafor.pdf
(14.93 KiB) Prenešeno 264 krat
Uporabniški avatar
MarE69
Naš človek :)
 
Prispevkov: 136
Pridružen: 07.12.2004, 12:44
Kraj: Novo mesto

OdgovorNapisal/-a markec » 25.02.2005, 14:43

:(
Zadnjič spremenil markec, dne 09.06.2005, 18:34, skupaj popravljeno 1 krat.
MARKEC
Uporabniški avatar
markec
Član
 
Prispevkov: 38
Pridružen: 07.02.2004, 11:13
Kraj: Ponikva

OdgovorNapisal/-a MarE69 » 25.02.2005, 15:09

Super.

Evo, pa še v C-ju:

C51 napisal/-a:Program Size: data=11.0 xdata=0 code=144


Koda: Izberi vse
C51 COMPILER V7.50   BEZECALUC                                                             02/25/2005 14:03:30 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE BEZECALUC
OBJECT MODULE PLACED IN bezecaluc.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE bezecaluc.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include <REG901.H>
   2          extern void timers_init (void);                 // inicializacija timerja
   3          extern void timers_starttimer0(void);   // vklopi timer 0
   4          extern void timers_stoptimer0(void);    // izklopi timer 0
   5          extern unsigned int ms10;                       // se poveča za 1 vsakih 10ms
   6         
   7         
   8          #define MAXLED           32
   9          #define ZAKASNITEV               10     /* enota je 10ms */
  10         
  11          sbit STR                = P0^4;
  12          sbit DAT                = P0^5;
  13          sbit CLK                = P1^2;
  14          sbit KEY1               = P3^1;
  15          sbit KEY2               = P3^0;
  16          sbit RELE               = P1^5;
  17         
  18         
  19          void prizgi_led(unsigned char koliko)
  20          {
  21   1          unsigned char bit_count=MAXLED;
  22   1     
  23   1          while(bit_count)
  24   1          {
  25   2                  CLK = 1;
  26   2                      DAT = (bit_count<koliko)?1:0;
  27   2                      CLK = 0;               
  28   2              bit_count--;
  29   2              }
  30   1     
  31   1      }
  32         
  33         
  34         
  35          /* LED STOLPEC - TEST */
  36          /* TODO: tipke */
  37         
  38         
  39          void main() {
  40   1     
  41   1        unsigned char i;
  42   1     
  43   1        RELE = 0;  // po resetu rele izklopi
  44   1     
  45   1        timers_init();
  46   1        EA = 1;                               // zagon interuptov
  47   1        ms10 = 0;
  48   1       
  49   1        timers_starttimer0();
  50   1     
  51   1        for (i=0; i<MAXLED; i++){
  52   2          prizgi_led(i);
  53   2              while (ms10<ZAKASNITEV);  // pocakaj da se zadeva konca
  54   2        }
  55   1     
C51 COMPILER V7.50   BEZECALUC                                                             02/25/2005 14:03:30 PAGE 2   

  56   1        timers_stoptimer0();
  57   1     
  58   1        RELE = 1;  // pa se vklop releja
  59   1       
  60   1        while(1);
  61   1     
  62   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =     63    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----    ----
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)






Koda: Izberi vse
C51 COMPILER V7.50   TIMERS                                                                02/25/2005 14:02:37 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE TIMERS
OBJECT MODULE PLACED IN timers.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE timers.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          /***********************************************************************
   2          MODULE:    Timers
   3          VERSION:   1.00
   4          CONTAINS:  Routines for controlling the timers on the Philips
   5                     P89LPC932
   6          COPYRIGHT: Embedded Systems Academy, Inc. - www.esacademy.com
   7          LICENSE:   May be freely used in commercial and non-commercial code
   8                     without royalties provided this copyright notice remains
   9                     in this file and unaltered
  10          WARNING:   IF THIS FILE IS REGENERATED BY CODE ARCHITECT ANY CHANGES
  11                     MADE WILL BE LOST. WHERE POSSIBLE USE ONLY CODE ARCHITECT
  12                     TO CHANGE THE CONTENTS OF THIS FILE
  13          GENERATED: On "Feb 25 2005" at "13:43:49" by Code Architect 2.06
  14          ***********************************************************************/
  15         
  16          // SFR description needs to be included
  17          #include <reg932.h>
  18          #include "timers.h"
  19         
  20          unsigned int ms10;
  21         
  22          /***********************************************************************
  23          DESC:    Initializes timers
  24                   Timer 0 generates an interrupt every 10ms
  25                   Timer 1 is not used
  26          RETURNS: Nothing
  27          CAUTION: If interrupts are being used then EA must be set to 1
  28                   after calling this function
  29          ************************************************************************/
  30          void timers_init
  31            (
  32            void
  33            )
  34          {
  35   1        // configure timer 0
  36   1        TMOD &= 0xF0;
  37   1        TMOD |= 0x01;
  38   1        TAMOD &= 0xFE;
  39   1     
  40   1        // timer values
  41   1        TH0 = 0x70;
  42   1        TL0 = 0x00;
  43   1     
  44   1        // set timer 0 isr priority to 0
  45   1        IP0 &= 0xFD;
  46   1        IP0H &= 0xFD;
  47   1     
  48   1        // enable timer 0 interrupt
  49   1        ET0 = 1;
  50   1     
  51   1        // start timer 0
  52   1        TR0 = 1;
  53   1     
  54   1      } // timers_init
  55         
C51 COMPILER V7.50   TIMERS                                                                02/25/2005 14:02:37 PAGE 2   

  56          /***********************************************************************
  57          DESC:    Timer 0 Interrupt Service Routine
  58          RETURNS: Nothing
  59          CAUTION: timers_init must be called first
  60                   EA must be set to 1
  61          ************************************************************************/
  62          void timers_isr0
  63            (
  64            void
  65            ) interrupt 1 using 1
  66          {
  67   1        // reinitialize
  68   1        TH0 = 0x70;
  69   1        TL0 = 0x00;
  70   1        ms10++;
  71   1      } // timers_isr0
  72         
  73          /***********************************************************************
  74          DESC:    Starts timer 0
  75          RETURNS: Nothing
  76          CAUTION: timers_init must be called first
  77          ************************************************************************/
  78          void timers_starttimer0
  79            (
  80            void
  81            )
  82          {
  83   1        TR0 = 1;
  84   1      } // timers_starttimer0
  85         
  86          /***********************************************************************
  87          DESC:    Stops timer 0
  88          RETURNS: Nothing
  89          CAUTION: timers_init must be called first
  90          ************************************************************************/
  91          void timers_stoptimer0
  92            (
  93            void
  94            )
  95          {
  96   1        TR0 = 0;
  97   1      } // timers_stoptimer0


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =     51    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      2    ----
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)
Uporabniški avatar
MarE69
Naš človek :)
 
Prispevkov: 136
Pridružen: 07.12.2004, 12:44
Kraj: Novo mesto

OdgovorNapisal/-a Ghostbuster » 25.02.2005, 16:20

Lepa hvala!

Sedaj pa problem programiranja! Nimam pojma o tem zato bi vas prosil da bi se še malo razpisali o tem in vse lepo obrazložilil.



Lp
Freestile wind riders !!!

SlikaSlika
Uporabniški avatar
Ghostbuster
Član
 
Prispevkov: 77
Pridružen: 09.01.2005, 15:36
Kraj: Maribor - Rače

OdgovorNapisal/-a markec » 25.02.2005, 17:19

:?
Zadnjič spremenil markec, dne 09.06.2005, 18:35, skupaj popravljeno 2 krat.
MARKEC
Uporabniški avatar
markec
Član
 
Prispevkov: 38
Pridružen: 07.02.2004, 11:13
Kraj: Ponikva

OdgovorNapisal/-a markec » 25.02.2005, 17:30

:evil: :evil: :evil: :twisted: :twisted: :twisted: :twisted:
Zadnjič spremenil markec, dne 09.06.2005, 18:35, skupaj popravljeno 1 krat.
MARKEC
Uporabniški avatar
markec
Član
 
Prispevkov: 38
Pridružen: 07.02.2004, 11:13
Kraj: Ponikva

OdgovorNapisal/-a Ghostbuster » 25.02.2005, 18:19

ja torej rabiš program, zaj pa kak to prklopit na čip al kak naj bi to sprogramiro.

Kak prklopit na računalnik.

Kot sem reko nimam o tem pojma. Ampak imam željo se naučit ker elektronika rulz!

Lp
Freestile wind riders !!!

SlikaSlika
Uporabniški avatar
Ghostbuster
Član
 
Prispevkov: 77
Pridružen: 09.01.2005, 15:36
Kraj: Maribor - Rače

OdgovorNapisal/-a markec » 26.02.2005, 09:40

:roll: :roll: :roll: :roll:
Zadnjič spremenil markec, dne 09.06.2005, 18:35, skupaj popravljeno 1 krat.
MARKEC
Uporabniški avatar
markec
Član
 
Prispevkov: 38
Pridružen: 07.02.2004, 11:13
Kraj: Ponikva

OdgovorNapisal/-a MarE69 » 26.02.2005, 10:21

Če pa uporabiš npr. AVR mikrokontroler, ga lahko programiraš samo z žično povezavo na LPT port. Seveda rabiš še ustrezen program. Če te stvar zanima, ti lahko pošljem eno verzijo C prevajalnika, ki ti omogoča vse za začetek igranja brez večjih stroškov. Vse kar rabiš je ena testna plošča, nekaj mikrokontrolerjev, 25 polni D konektor in par žic, pa seveda en napajalnik.

Za vse to si poglej:
http://www.ic-elect.si/trgovina/
http://b2c.hte.si/

Če pa imaš morda 60EU "viška" ti zelo priporolčam tale komplet:
http://www.keil.com/mcb900/

Poleg dobiš vrhunski prevajalnik, omejeno verzijo z omejitvijo na 4k kode, kar pa je za take male projektiče vrh glave. Poglej npr. tisti primer zgoraj za "LED stolpec" - kode je 144 bajtov, omejitev je pa pri 4096 bajtih, se pravi da spraviš kar lep kos softvera lahko skupaj.

LP,
M.
Uporabniški avatar
MarE69
Naš človek :)
 
Prispevkov: 136
Pridružen: 07.12.2004, 12:44
Kraj: Novo mesto

OdgovorNapisal/-a Ghostbuster » 26.02.2005, 18:32

Hvala za vse! Malo sem razmislil in ugotovil, da sem za čim cenejšo vrjanto.

Odločil pa sem se tudi da bom naredil testno ploščo po markecovih navodilih.


Ravno danes sem po nekem načrtu naredil ojačevalnik (nima čipov) z napajanjem 9v baterija. Jutri ga bom preizkusil. Seveda si želim narediti tudi kaj s čipom!

Lp
Freestile wind riders !!!

SlikaSlika
Uporabniški avatar
Ghostbuster
Član
 
Prispevkov: 77
Pridružen: 09.01.2005, 15:36
Kraj: Maribor - Rače

OdgovorNapisal/-a markec » 08.03.2005, 21:03

:?:
Zadnjič spremenil markec, dne 09.06.2005, 18:31, skupaj popravljeno 1 krat.
MARKEC
Uporabniški avatar
markec
Član
 
Prispevkov: 38
Pridružen: 07.02.2004, 11:13
Kraj: Ponikva

OdgovorNapisal/-a Borut » 09.03.2005, 00:13

.
Zadnjič spremenil Borut, dne 09.06.2005, 22:19, skupaj popravljeno 1 krat.
LP Borut
02-5-38-15-15, 031-38-15-15, elektro.talian@siol.net
Borut
Član
 
Prispevkov: 35
Pridružen: 01.06.2004, 13:08
Kraj: Mlajtinci

Naslednja

Vrni se na Elektronik

Kdo je na strani

Po forumu brska: 0 registriranih uporabnikov in 4 gostov

cron