www.elektronik.si Seznam forumov www.elektronik.si
Forum o elektrotehniki in računalništvu
 
 PomočPomoč  IščiIšči  Seznam članovSeznam članov  SkupineSkupine  StatisticsStatistika  AlbumAlbum  DatotekeFilemanager DokumentacijaDocDB LinksPovezave   Registriraj seRegistriraj se 
  PravilaPravila  LinksBolha  PriponkePriponke  KoledarKoledar  ZapiskiZapiski Tvoj profilTvoj profil Prijava za pregled zasebnih sporočilPrijava za pregled zasebnih sporočil PrijavaPrijava 

RGB kontroler

 
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Microchip PIC
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
diehart
Član
Član



Pridružen-a: Pon 19 Apr 2004 17:46
Prispevkov: 501
Aktiv.: 2.11
Kraj: okolica I G

PrispevekObjavljeno: Čet Apr 19, 2007 12:15 am    Naslov sporočila:  RGB kontroler Odgovori s citatom

Pozdravljeni,

pojavil se mi je manjši problem, pa ga ne znam rešiti sam. Za maturitetno seminarsko imam za narediti RGB kontroler s PIC mikrokontrolerjem. Rahel problem je nastal ko naj bi napisal glavni del programa, se pravi PWM ali kaj podobnega za regulacijo svetilnosti 3 barv (bodo LE diode, v večji količini).
Moja mentorica je v začetku malo preveč obljubljala, zdaj sem pa ostal sam, ker ona tega pač ne zna.
Alternativa PWMju je več izhodov, ki bi se izmenično prižigali, kar bi bil verjetno tudi sam sposoben "spacat" skupaj.

Sicer bi to lahko sam napisal, ampak mi je tale projekt v zadnjih dveh mesecih pobral popolnoma ves prosti čas saj mora biti do tega petka narejeno. No, vse lepo in prav, ampak danes sem izvedel, da je ženska, ki bi morala tapicirat sedeže, milo rečeno, spizdila na službeno potovanje. Tak da je cel projekt padel v vodo.

Nekaj programa sem že napisal, vendar le-ta le spreminja vrednosti v treh registrih, iz katerih naj bi potem bral za vrednost PWMja.
Najlažje bi mi bilo, če bi kje dobil ta del kode (PWM), oz vsaj primer, da bi vedel, kaj moram sploh narediti oz če je sploh možno s tem PICem.
PIC naj bi bil "samo" 16f877.

Najlepša hvala.
Koda:
;****************************************
;Konstante
;****************************************
PWM1      EQU      0x0C         
PWM2      EQU      0x0D
PWM3      EQU      0x0E
;****************************************
;Nastavitev portov
;****************************************
      BSF      STATUS,5      ;v Bank1
      MOVLW      0xFF         ;vstavi 11111111
      MOVWF   TRISB         ;določi vhode
      MOVLW      0x00         ;vstavi 00000
      MOVWF   TRISA          ;določi izhode
      BCF      STATUS,5      ;nazaj v Bank0
;****************************************
;Program
;****************************************
ZACETEK    .               ;začetek glavnega program, v njem je treba iz registrov
      .               ;PWM1, PWM2 in PWM3  prebrati vrednost in jo na
      .               ;izhodne pine poslati kot pwm signal.

;****************************************
;Podprogram
;****************************************
TESTPIN                   ; začetek podprograma
      BTFSC      PORTB, 0      ; preveri pin RB0, če je '0' preskoči naslednji korak
      GOTO      PINg2         ;pojdi na PINg2
      INCF      PWM1, 1      ;povečaj register PWM1 za 1 in shrani v isti register
PINg2 BTFSC      PORTB, 1
      GOTO      PINg3         ; -||-
      INCF      PWM2
PINg3 BTFSC      PORTB, 2
      GOTO      PINd1
      INCF      PWM3
PINd1 BTFSC      PORTB, 3
      GOTO      PINd2         ; -||-
      DECF      PWM1
PINd2 BTFSC      PORTB, 4
      GOTO      PINd3
      DECF      PWM2   
PINd3 BTFSC      PORTB, 5
      GOTO      ResPWM
      DECF      PWM3
ResPWM BTFSC      PORTB, 6      ; preveri pin RB6
      RETURN            ;se vrne na glavni program
      CLRF      PWM1         ;postavi register PWM1 na 0
      CLRF      PWM2         ;postavi register PWM2 na 0
      CLRF      PWM3         ;postavi register PWM3 na 0
      RETURN            ;se vrne na glavni program
;****************************************
;Konec podprograma
;****************************************
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo MSN Messenger - naslov
bungee
Član
Član



Pridružen-a: Pon 07 Mar 2005 18:49
Prispevkov: 1479
Aktiv.: 6.24
Kraj: Ljubljana

PrispevekObjavljeno: Čet Apr 19, 2007 7:54 am    Naslov sporočila:   Odgovori s citatom

Da ne boš preveč iskal in razbijal glave s tem projektom. Poglej si tole: RGB Led kar je pa še lepše je pa to, da je narejeno s "samo" 12F675 Cool

Sem ga pred časom preizkusil, sicer samo na proto boardu in deluje odlično. Cool
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
diehart
Član
Član



Pridružen-a: Pon 19 Apr 2004 17:46
Prispevkov: 501
Aktiv.: 2.11
Kraj: okolica I G

PrispevekObjavljeno: Ned Maj 06, 2007 3:08 am    Naslov sporočila:   Odgovori s citatom

Pozdrav,

na žalost bungee ta kontroler ne pride v poštev. Sem si ga ogledal, vendar mi ne zna noben razložit kode.

Sicer pa sem naredil en kontroler v micubišijevi Alphi. Je sicer skrajno poenostavljen, vendar deluje. Izhodov je 6, za vsako barvo 2 (za več je nastalo preveč kombinacij in preveč balasta).

Tole so formule, po katerih sem sestavil zadevo v alfi. Zanima pa me, ali se da to spremenit v program za pic in če bi bil kdo to pripravljen napisat.

Vhod je tipka ki je vezana na clock JK flip flopov in s katero posledično spreminjaš vrednost rgb.
Koda:

Iz JK flip-flopov je sestavlen števec:

S1=QbQcQd
S2=QcQd
S3=Qd
S4=1


"dekodirnik" na izhodu, povezan je s števcem.

R1=S1S2S4'+S2S3+S1S2'+S1'S3'S4
R2=S1'S2S3+S2S4+S1'S3'S4+S1S2'S4'
G1=S1S2S4'+S2S3S4+S1'S2S3'+S1S2'+S2'S3S4'
G2=S1S4+S2S4+S1'S2S3'+S1'S2'S3S4'
B1=S2S4'+S3S4+S1S2'
B2=S1S3'+S1S2S4+S1'S2S4'+S1'S2'S3S4

' pomeni negiran

Tale dekoder sem skoraj prepričan da se ga da napisat, za števec pa je zelo verjetno alternativa v samem picu. Rahlo mi je začelo zmankovat časa, zato bi prosil koga da bi bil pripravljen tole napisat za pic.

lp
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo MSN Messenger - naslov
Pokaži sporočila:   
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Microchip PIC Časovni pas GMT + 2 uri, srednjeevropski - poletni čas
Stran 1 od 1

 
Pojdi na:  
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: 492 dni


Powered by phpBB © 2001, 2005 phpBB Group