Tajmer za foto postupak sa LCD

Sve vezano za mikrokontrolere

Moderators: stojke369, pedja089, [eDo], trax

Tajmer za foto postupak sa LCD

Postby DaTi » 05-10-2009, 23:21

Ovih dana planiram i ja probati foto postupak, pa sam napravio svoj tajmer i odlučio sam da ga podelim sa vama.
Sastoji se od pic16f84a i lcd displeya 2x16. Nevolim da korisim 7-segmentne displeje u multipleksu jer mi nisu pregledni, pa sam se odlucio za lcd. Uredjaj sam testirao i sve je ok radilo. Probao sam ga na probnoj ploci, jer plocicu nisam jos nacrtao a ni izradio.
Način rada:
Kada se upali ide splash screen koji traje oko 1.5 s
posle toga podesavamo vreme a to radimo tako sto tipkom set pomeramo kursor, a sa + i - povecavamo ili smanjujemo vrednosti naj veća vrednost je 23:59:59 format vremena je HH:MM:SS , kada se kursor postavi na OK onda je vreme podeseno i moze se pritisnuti tipka SET da se krene sa osvetljavanjem. Kada smo to uradili i pritisnuli SET, uredjaj kreće od 00:00:00 i broji do zadate vrednosti, a za to vreme drzi relej upaljenim. Kada se nalazi u stanju osvetljavanja mozete pauzirati vreme sa tipkom + a nastaviti sa -,takodje mozete prekinuti osvetljavanje sa SELECT. Kada se vremena poklope uredjaj gasi relej i ispisuje da je završio. Tipkom SET vraćate se na podesavanje vremena. Nadam se da nije komplikovano i da će vam koristiti :)
semu sam rukom crtao, jer mi je bio puko sistem i sve biblioteke od eagle otišle u pm... pa mi se nije dalo da ih trazim. Ima i slika uredjaja u radu na kojoj se vidi voltmetar na kome se nazire napon od 4 v koji je dovoljan za napajanje releja. Naravno tu je i hex za pic.

http://www.imagesforme.com/upload/10334691.jpg
http://www.imagesforme.com/show.php/720182_Schema.jpg
Firmware_foto_tajmer.rar
(1.78 KiB) Downloaded 577 times
>> https://bellpro.tecomatic.net<< Automatizacija školskog zvona
User avatar
DaTi
 
Posts: 727
Joined: 10-06-2007, 13:24
Location: Novi Sad - Srbija

Re: Tajmer za foto postupak sa LCD


Re: Tajmer za foto postupak sa LCD

Postby Smjesko » 06-10-2009, 08:06

Bilo bi vrlo korisno da si na jedan port dodao zvučnik ili zujalo koje bi označilo završetak programa osvjetljavanja.
User avatar
Smjesko
 
Posts: 4012
Joined: 26-12-2005, 17:12

Re: Tajmer za foto postupak sa LCD

Postby pedja089 » 06-10-2009, 10:28

Koliku gresku pravi tajmer na 24 sata?
User avatar
pedja089
 
Posts: 7818
Joined: 20-02-2007, 14:50
Location: Beočin -Srbija

Re: Tajmer za foto postupak sa LCD

Postby DaTi » 06-10-2009, 13:17

@pedja089 neznam, ja sam ga tetirao sta vremena i uporedjivao sam sa stopericom i nije bilo odstupanja.
@Smjesko ima led indikacija releja :D
>> https://bellpro.tecomatic.net<< Automatizacija školskog zvona
User avatar
DaTi
 
Posts: 727
Joined: 10-06-2007, 13:24
Location: Novi Sad - Srbija

Re: Tajmer za foto postupak sa LCD

Postby Smjesko » 06-10-2009, 21:38

Vidio sam da ima LED indikacija, ali nema zvučna :!:
User avatar
Smjesko
 
Posts: 4012
Joined: 26-12-2005, 17:12

Re: Tajmer za foto postupak sa LCD

Postby DaTi » 06-10-2009, 21:47

Ću da je dodam, radim na tome ! :)
>> https://bellpro.tecomatic.net<< Automatizacija školskog zvona
User avatar
DaTi
 
Posts: 727
Joined: 10-06-2007, 13:24
Location: Novi Sad - Srbija

Re: Tajmer za foto postupak sa LCD

Postby Drago_Zg » 14-10-2009, 20:52

"DaTi" ponukala me rasprava o tvom timeru. Pa me zanima da li zna skuhati kavu u 7 00 u jutro?
Daj, molim te, ne obaziri se na te fazone. Po meni a i nekih drugih, koji su to vidjeli smatraju
korektno napravljeni projekat. Tema i estetika izrade su više nego dobre. Riječi samo hvale.
Što će biti, kad sve to se stavi u kutiju ?
Pozdrav svim Forumašima!
User avatar
Drago_Zg
 
Posts: 583
Joined: 16-09-2008, 19:40

Re: Tajmer za foto postupak sa LCD

Postby DaTi » 14-10-2009, 22:37

Pa nemam baš vremena da nacrtam pcb i šemu da uradim u nekom programu... Ja bi to stavio u neku plasticnu kutiju i kontakte releja izvukao napolje i spojio na luster klemu, i tu kačio uv neonku, zivinu sijalicu itd...
Pa me zanima da li zna skuhati kavu u 7 00 u jutro?

:lol: nezna, ali pravim nešto da u 06:15 upali toster :D
>> https://bellpro.tecomatic.net<< Automatizacija školskog zvona
User avatar
DaTi
 
Posts: 727
Joined: 10-06-2007, 13:24
Location: Novi Sad - Srbija

Re: Tajmer za foto postupak sa LCD

Postby Drago_Zg » 15-10-2009, 19:49

Pa naravno, to je ono vrijeme kad je jeftinija struja!!
User avatar
Drago_Zg
 
Posts: 583
Joined: 16-09-2008, 19:40

Re: Tajmer za foto postupak sa LCD

Postby DaTi » 15-10-2009, 21:44

ne, nego tada se ustajme za skolu :roll: :)
>> https://bellpro.tecomatic.net<< Automatizacija školskog zvona
User avatar
DaTi
 
Posts: 727
Joined: 10-06-2007, 13:24
Location: Novi Sad - Srbija

Re: Re: Tajmer za foto postupak sa LCD


Re: Tajmer za foto postupak sa LCD

Postby sindja1204 » 09-02-2010, 13:06

DaTi wrote: Naravno tu je i hex za pic.

@DaTi, hajde postavi Source kod za ovaj tajmer.Planiram da nesto iskombinujem sa 16F877A ali u tom slucaju bi trebalo napraviti neke izmene u programu, vezane za portove Pic-a .
User avatar
sindja1204
 
Posts: 790
Joined: 03-05-2009, 11:57
Location: Beograd

Re: Tajmer za foto postupak sa LCD

Postby DaTi » 14-04-2012, 03:41

Code: Select all
@ DEVICE HS_OSC,WDT_OFF,PROTECT_OFF
DEFINE OSC 4

DEFINE LCD_BITS 4
DEFINE LCD_DREG PORTB
DEFINE LCD_DBIT 0
DEFINE LCD_RSREG PORTB
DEFINE LCD_RSBIT 4
DEFINE LCD_EREG PORTB
DEFINE LCD_EBIT 5
DEFINE LCD_LINES 2

VECE   VAR PORTA.0
MANJE  VAR PORTA.1
LEVO   VAR PORTA.2
DESNO  VAR PORTA.3
RELEJ  VAR PORTB.6
ZVUCNIK VAR PORTB.7
INPUT VECE
INPUT MANJE
INPUT LEVO
INPUT DESNO
OUTPUT RELEJ
OUTPUT ZVUCNIK
tmp var byte
PRIKAZ      VAR WORD
PRIKAZ2     VAR WORD
pauza       var byte
STANJE      VAR byte
MINUTE      VAR BYTE
SEKUNDE     VAR BYTE
SATI        VAR BYTE
MINUTE2     VAR BYTE
SEKUNDE2    VAR BYTE
SATI2       VAR BYTE

clear

PORTA = 0
PORTB = 0

SPLASH:
relej = 0
lcdout $fe,1, "DadoSoft 2009 "
lcdout $fe,$c0,">Foto tajmer<"
pause 1500
gosub main

MAIN:

IF DESNO = 0 THEN
   PAUSE 500
   STANJE = STANJE + 1
endif

if stanje > 4 or stanje < 1 then stanje = 1

IF STANJE = 1 or STANJE = 2 or STANJE = 3  THEN

     if stanje = 1 then
        if vece = 0 then
           pause 100
            sati = sati + 1
        endif
       
        if manje = 0 then
        pause 100
        sati = sati - 1
        endif
         if sati > 23 or sati < 0 then sati = 0
     endif
     
     if stanje = 2 then
        if vece = 0 then
           pause 100
           minute  = minute  + 1
        endif
       
        if manje = 0 then
           pause 100
           minute = minute - 1
        endif
         if minute > 59 or minute < 0 then minute = 0
     endif
     
     if stanje = 3 then
        if vece = 0 then
           pause 100
           sekunde = sekunde + 1
        endif
       
        if manje = 0 then
           pause 100
           sekunde = sekunde - 1
        endif
        if sekunde > 59 or sekunde < 0 then sekunde = 0
         
     endif
ENDIF
PAUSE 100

IF levo = 0 AND STANJE = 4 THEN
PAUSE 550
sati2 = 0
minute2 = 0
sekunde2 = 0
tmp = 0
GOSUB ODBROJAVANJE
ENDIF

IF STANJE = 1 THEN PRIKAZ = "h"
IF sTANJE = 2 THEN PRIKAZ = "m"
if stanje = 3 then prikaz = "s"
if stanje = 4 then prikaz = "O"

IF STANJE = 1 THEN PRIKAZ2 = "h"
IF sTANJE = 2 THEN PRIKAZ2 = "m"
if stanje = 3 then prikaz2 = "s"
if stanje = 4 then prikaz2 = "K"
 
lcdout $fe,1, "Podesi vreme: "
lcdout $fe,$c0,">" ,dec2 sati,":",dec2 minute,":",dec2 sekunde," ",prikaz,PRIKAZ2

goto main

ODBROJAVANJE:
    for pauza = 0 to 97     
        pause 10           
        if vece = 0 then gosub postavi_pauzu
        if manje = 0 then gosub ukloni_pauzu
        if desno = 0 then gosub zavrseno
    next pauza
     
if  tmp = 0   then
RELEJ = 1
 sekunde2 = (sekunde2 + 1)



    if sekunde2 > 59 then
        minute2 = (minute2 +1)
        sekunde2 = 0
    endif

    if minute2 > 59 then
        sati2 = (sati2 + 1)
        minute2 = 0
    endif
else
relej = 0
endif
IF SEKUNDE = SEKUNDE2 AND MINUTE = MINUTE2 AND SATI = SATI2 THEN GOSUB ZAVRSENO
    lcdout $fe,1, "Osvetljavanje: "
    lcdout $FE, $C0,"   *" ,dec2 sati2 ,":", dec2 minute2 ,":",dec2 sekunde2,"*"

 

goto odbrojavanje

ZAVRSENO:
    relej = 0 
    if levo = 0 then
    pause 550
    gosub main
    endif
    pause 100
   
    'sound ZVUCNIK, [220,100]
    lcdout $fe,1, "Zavrseno! "
    lcdout $FE, $C0,"Pritisnite SET"
goto zavrseno 

postavi_pauzu:
    pause 400
    tmp = 1
return

ukloni_pauzu:
    pause 400
    tmp = 0
return
 
end


Eto ga sors kome treba, semu nikada nisam ni imao, bila je nacrtana na papiru ali... pitaj boga gde je to
>> https://bellpro.tecomatic.net<< Automatizacija školskog zvona
User avatar
DaTi
 
Posts: 727
Joined: 10-06-2007, 13:24
Location: Novi Sad - Srbija

Re: Tajmer za foto postupak sa LCD

Postby Gargamel » 19-04-2012, 11:35



linkovi na sheme vise ne rade

ako ih netko slučajno ima
bio bih zahvalan, ako ih ponovo postavi
Gargamel
 
Posts: 1
Joined: 19-04-2012, 11:26

Re: Tajmer za foto postupak sa LCD

Postby DaTi » 29-08-2013, 02:33

Evo je i šema :D , posle 100god.. na papiru je nacrtana, tako da se nemojte uplašiti :)

https://www.dropbox.com/s/d23txm81rarntrp/Schema.jpg?m
>> https://bellpro.tecomatic.net<< Automatizacija školskog zvona
User avatar
DaTi
 
Posts: 727
Joined: 10-06-2007, 13:24
Location: Novi Sad - Srbija


Return to Mikrokontroleri i programatori

Who is online

Users browsing this forum: No registered users and 2 guests

GOOGLE