16f648a Mutfak Saat

Başlatan aRci, 03 Ağustos 2021, 20:32:06

aRci

Merhaba;
16f648a ile saat ve geri sayacı projesi yaptım sizle paylaşmak istedim. Projede Ds3231 ve TM1637 beyaz display kullanıldı. Saat ve zaman ayarı 2 buton ile ayarlanabilir halde. ekte projenin proteus 8.10 dosyası ve hex kodu vardır. Pic kristal olarak 20mhz kullanılmıştır.

Bu eki görüntüleyemezsiniz.
Bu eki görüntüleyemezsiniz.

elektro77

Elinize sağlık. Güzel çalışıyor. Bas dosyasını da koysaydınız nasıl bir yazılım olduğunu inceleseydik keşke.
"Eğer bir konuyu öğrenmek istiyorsan o konunun öğretmeni ol; daha iyi öğrenmek istiyorsan o konuda bir kitap yaz; daha da iyi öğrenmek istiyorsan yazdığın kitabi oku"

aRci

bas dosyası hakkında paylaşım yapabilirim ama projenin dosyasını paylaşma alışkanlığım yok.

Fakat ds3231 ve TM1637 çalıştırmak için gerekli kodları ararken çalışan örnek kodları bu formdan edindim edindiğim kodlarla çalışan saatten saat verilerini ekrana basan örnek kodu paylaşıyorum.

Ayrıca eğer uygulama yapacaksanız bende ki TM1637 kartı üzerinde haberleşme hattına bağlı kondansatör vardı ben söktüm yapacak arkadaşlarada sökmenizi tavsiye ederim. bu kondansatörler haberleşmeyi etkiliyor. bu durum arduino kartında sorun yapmıyor ama pic de problem yapmakta.

'****************************************************************
'*  Name    : UNTITLED.BAS                                      *
'*  Author  : [select VIEW...EDITOR OPTIONS]                    *
'*  Notice  : Copyright (c) 2021 [select VIEW...EDITOR OPTIONS] *
'*          : All Rights Reserved                               *
'*  Date    : 4.08.2021                                         *
'*  Version : 1.0                                               *
'*  Notes   :                                                   *
'*          :                                                   *
'****************************************************************
'****************************************************************
'*  Name    : UNTITLED.BAS                                      *
'*  Author  : [select VIEW...EDITOR OPTIONS]                    *
'*  Notice  : Copyright (c) 2021 [select VIEW...EDITOR OPTIONS] *
'*          : All Rights Reserved                               *
'*  Date    : 23.07.2021                                        *
'*  Version : 1.0                                               *
'*  Notes   :                                                   *
'*          :                                                   *
'****************************************************************
@ __config _BODEN_OFF  & _PWRTE_ON & _WDT_OFF & _LVP_OFF & _HS_OSC
Define OSC 20
'cmcon = 7
'OPTION_REG=%10001111
'///////////////////////////////////////////////////////////////////////////////   
'/////////////////////////////////////////////////////////////////////////////// 
'ON INTERRUPT GoTo KESME  'kesme oluşursa KESME adlı etikete git.
OPTION_REG=%00000111 'Pull  up dirençleri İPTAL- Bölme oranı 1/64.
'INTCON=%10100000 'Kesmeler  aktif ve TMR0 kesmesi aktif
TMR0=0
CMCON=7 '16F628 de komparatör pinleri iptal hepsi giris çıkıs
'///////////////////////////////////////////////////////////////////////////////   
'///////////////////////////////////////////////////////////////////////////////     
    Trisa            = 0
    TRISB            = %11111100
    Porta            = 0
    Portb            = 255
'///////////////////////////////////////////////////////////////////////////////   
'///////////////////////////////////////////////////////////////////////////////    
    DIO VAR PORTB.1
    CLK VAR PORTB.0
    SDA VAR PORTB.2
    SCL VAR PORTB.3
    symbol Ld       = porta.4
    symbol Bz       = porta.3
    
    Bt1  var Portb.4
    Bt2  var Portb.5
    
'///////////////////////////////////////////////////////////////////////////////   
'///////////////////////////////////////////////////////////////////////////////
'///////////////////////////////////////////////////////////////////////////////  
'///////////////////////////////////////////////////////////////////////////////
    'Zaman için
    AY               var byte
    YIL              var byte
    SN               VAR BYTE
    DAK              VAR BYTE
    SAAT             VAR BYTE
    GUN              VAR BYTE
    HGUN             VAR BYTE
    HAFTA            VAR BYTE
    Temp             var byte
    MEM              var byte
    
    DS_OKU           VAR BYTE : DS_OKU = %11010000
    DS_YAZ           VAR BYTE : DS_YAZ = %11010001
    ZAMAN_REG        VAR BYTE : ZAMAN_REG= $00
    i                var byte
    ZAMAN            var byte[7]
    'TempRegister CON $11      'temperature integer  REGISTER
    TempRegisterFRA  CON $12  'temperature fraction REGISTEr
    TempRegister     var byte    ' variable to hold DS3231 register address to read/write      
    Derece           var byte            ' Variable for temperature integer from register 11h
    Ondalik          var byte          ' Variable for temperature fraction for register 12h
    Isaret           var BYTE            ' Variable to hold sign bit  
    Ds1              var byte
'///////////////////////////////////////////////////////////////////////////////  
'///////////////////////////////////////////////////////////////////////////////   
     CHR1 var byte
     CHR2 var Byte
     CHR3 var byte
     CHR4 var byte
     CMD1 var byte
     CMD2 var byte
     CMD3 var byte
     CMD4 var byte
     Deger var word 

Reset:
high Ld
high Porta.3
CMD1 = $40                     'CMD1=$40 is the write command
CMD2 = $C0                     'CMD2=$C0 is the start digit position(left most)
CMD3 = $88

CHR1 = 0:CHR2 = 64:CHR3 = 64:CHR4 = 0
Gosub AyarEkran
Pause 500
CHR1 = 64:CHR2 = 0:CHR3 = 0:CHR4 = 64
Gosub AyarEkran
Pause 100
CHR1 = 32:CHR2 = 0:CHR3 = 0:CHR4 = 4
Gosub AyarEkran
Pause 100
CHR1 = 1:CHR2 = 0:CHR3 = 0:CHR4 = 8
Gosub AyarEkran
Pause 100
CHR1 = 0:CHR2 = 1:CHR3 = 8:CHR4 = 0
Gosub AyarEkran
Pause 100
CHR1 = 0:CHR2 = 8:CHR3 = 1:CHR4 = 0
Gosub AyarEkran
Pause 100
CHR1 = 16:CHR2 = 0:CHR3 = 0:CHR4 = 2
Gosub AyarEkran
pause 80
'///////////////////////////////////////////////////////////////////////////////     
'///////////////////////////////////////////////////////////////////////////////
basla:
CMD1 = $40                     'CMD1=$40 is the write command
CMD2 = $C0                     'CMD2=$C0 is the start digit position(left most)
CMD3 = $88 
gosub ZAMAN_OKU
'Deger = (Saat * 100) + Dak:gosub LEDOUT'(Saat * 100) + Dak
Deger = (DAK * 100) + Sn:gosub LEDOUT'(Saat * 100) + Dak
pause 1000
goto basla 
'///////////////////////////////////////////////////////////////////////////////     
'///////////////////////////////////////////////////////////////////////////////
AyarEkran:
CMD1 = $40                     'CMD1=$40 is the write command
CMD2 = $C0                     'CMD2=$C0 is the start digit position(left most) 
    GOSUB StartSeq                                  'SHIFTOUT Mode 0 works - LSB first, clock normally low
    SHIFTOUT DIO, CLK, 0, [CMD1]                    'This shifts out the 8-bit write command character $40
    GOSUB AckSeq
    GOSUB StopSeq
    
    GOSUB StartSeq
    SHIFTOUT DIO, CLK, 0, [CMD2]                    'This shifts out the 8-bit command character $C0 that places
    GOSUB AckSeq                                    'the first character CHR1 in the leftmost digit location                             
    SHIFTOUT DIO, CLK, 0, [CHR1]                    'SHIFTOUT CHR1-CHR4 to fill the display left to right   
    GOSUB AckSeq
    SHIFTOUT DIO, CLK, 0, [CHR2]                    'SHIFTOUT CHR1-CHR4 to fill the display left to right   
    GOSUB AckSeq
    SHIFTOUT DIO, CLK, 0, [CHR3]                    'SHIFTOUT CHR1-CHR4 to fill the display left to right   
    GOSUB AckSeq
    SHIFTOUT DIO, CLK, 0, [CHR4]                    'SHIFTOUT CHR1-CHR4 to fill the display left to right   
    GOSUB AckSeq
    GOSUB StopSeq 
    
    GOSUB StartSeq
    SHIFTOUT DIO, CLK, 0, [CMD3]                    'The output sequence ends with CMD3 which turns on the display
    GOSUB AckSeq                                    'and set the brightness duty cyle
    GOSUB StopSeq   
Return

LEDOUT:                                           'This subrountine outputs all 4 characters to the LED
    GOSUB StartSeq                                  'SHIFTOUT Mode 0 works - LSB first, clock normally low
    SHIFTOUT DIO, CLK, 0, [CMD1]                    'This shifts out the 8-bit write command character $40
    GOSUB AckSeq
    GOSUB StopSeq
    
    GOSUB StartSeq
    SHIFTOUT DIO, CLK, 0, [CMD2]                    'This shifts out the 8-bit command character $C0 that places
    GOSUB AckSeq                                    'the first character CHR1 in the leftmost digit location
                                                    'and then writes all 4 digits.
    CHR1 = Deger dig 3  
    Gosub Disp                                             
    SHIFTOUT DIO, CLK, 0, [CHR1]                    'SHIFTOUT CHR1-CHR4 to fill the display left to right
    GOSUB AckSeq                                    'TM1637 auto-increment mode
    CHR1 = Deger dig 2  
    Gosub Disp  
    'if (Ayar = 0 and Pals = 1 ) or Ayar = 1 then CHR1 = Chr1 + 128                                             
    SHIFTOUT DIO, CLK, 0, [CHR1]                    'SHIFTOUT CHR1-CHR4 to fill the display left to right
    GOSUB AckSeq                                    'TM1637 auto-increment mode
    CHR1 = Deger dig 1  
    Gosub Disp                                              
    SHIFTOUT DIO, CLK, 0, [CHR1]                    'SHIFTOUT CHR1-CHR4 to fill the display left to right
    GOSUB AckSeq                                    'TM1637 auto-increment mode
    CHR1 = Deger dig 0  
    Gosub Disp                                              
    SHIFTOUT DIO, CLK, 0, [CHR1]                    'SHIFTOUT CHR1-CHR4 to fill the display left to right
    GOSUB AckSeq                                    'TM1637 auto-increment mode
    GOSUB StopSeq
    
    GOSUB StartSeq
    SHIFTOUT DIO, CLK, 0, [CMD3]                    'The output sequence ends with CMD3 which turns on the display
    GOSUB AckSeq                                    'and set the brightness duty cyle
    GOSUB StopSeq
Return

'****************************************Subroutine StartSeq******************************************************* 
 StartSeq:                                         
   HIGH CLK                                        
   HIGH DIO                                        'The Start sequence takes DIO low and then CLK low 5 uSec later
   'PAUSEUS 5                                       
   LOW DIO
   Low CLK
 Return     

'**************************************Subroutine AckSeq*********************************************************    
 AckSeq:
    LOW CLK 
    High DIO
    High CLK    
    input DIO                                    'The ACK waits for the TM1637 to assert low on DIO
    'PAUSEUS 100                                       'and then replies with a 5 uSec ACK pulse on CLK
    while DIO = 1
    ClearWDt
    wend
    output DIO
    LOW DIO     
 Return

'****************************************Subroutine StopSeq****************************************************** 
 StopSeq:   
    LOW CLK                                        'The stop sequence takes CLK high and then DIO high 5 uSec later
    LOW DIO
    'PAUSEUS 5
    HIGH CLK
    HIGH DIO
 Return
 '///////////////////////////////////////////////////////////////////////////////
'///////////////////////////////////////////////////////////////////////////////
Disp:
lookup CHR1,[$3f,$06,$5b,$4f,$66,$6d,$7d,$07,$7f,$6f,$77,$7c,$39,$5e,$79,$71],CHR1';//0~9,A,b,C,d,E,F],CHR1
return
'///////////////////////////////////////////////////////////////////////////////     
'///////////////////////////////////////////////////////////////////////////////
ZAMAN_OKU:
    i2cread SDA,SCL,DS_OKU,ZAMAN_REG,[ZAMAN[0],ZAMAN[1],ZAMAN[2],ZAMAN[3],ZAMAN[4],ZAMAN[5],ZAMAN[6]]
    GOSUB BCD_To_Decimal
    sn   =ZAMAN[0]
    DAK  =ZAMAN[1]
    SAAT =ZAMAN[2]
    HAFTA=ZAMAN[3]
    GUN  =ZAMAN[4]
    AY   =ZAMAN[5]
    YIL  =ZAMAN[6]  
    TempRegister = $11      ' DS3231 Temperature REgister High Byte (Integer portion)     
    I2Cread SDA,SCL, DS_OKU, TempRegister, [Derece, Ondalik]
    
    Ondalik = (Ondalik >> 6)   ' Shift <b7:b6> to <b1:b0>
    Ondalik = (Ondalik * 25)   ' Fractional portion is in .25 increments. Increment values are 0-3 (.00, .25, .50, .75)
    
    Isaret = "-"
    if derece.7 = 0 then  Isaret = "+"   ' save the sign bit for later
    
    '''If TempSign = 1 then  TempInt = (TempInt XOR $FF) + 1     'Do not use this, the DS3231 uses simple <b7> sign with <b6:b0> as absolute temperature value

RETURN 
'///////////////////////////////////////////////////////////////////////////////   
'///////////////////////////////////////////////////////////////////////////////
ZAMAN_YAZ:

    ZAMAN[0]=sn      ' saniye
    ZAMAN[1]=DAK     ' dakika
    ZAMAN[2]=SAAT    ' saat
    ZAMAN[3]=hafta   ' haftanin gunu
    ZAMAN[4]=gun     ' Gün
    ZAMAN[5]=ay      ' ay
    ZAMAN[6]=yil     ' Yil
    
    GOSUB Decimal_To_BCD

    i2cwrite SDA,SCL,DS_YAZ,ZAMAN_REG,[ZAMAN[0],ZAMAN[1],ZAMAN[2],ZAMAN[3],ZAMAN[4],ZAMAN[5],ZAMAN[6],$10]

return  
'///////////////////////////////////////////////////////////////////////////////   
'///////////////////////////////////////////////////////////////////////////////
DECIMAL_TO_BCD:

    for i=0 to 6
        ZAMAN[i] = ((ZAMAN[i] dig 1) << 4 ) + ZAMAN[i] dig 0
    next i

RETURN
'///////////////////////////////////////////////////////////////////////////////   
'///////////////////////////////////////////////////////////////////////////////
BCD_TO_DECIMAL:

    for i=0 to 6
        ZAMAN[i]   = ((ZAMAN[i] >> 4) *10) + (ZAMAN[i] & %00001111)
    next i

RETURN
'///////////////////////////////////////////////////////////////////////////////  

elektro77

Yapmayı düşünmüyorum ama düşünürsem uyarınızı dikkate alacağım. Amacım kod kütüphanemi geliştirmek. Paylaşımınız için teşekkürler.
"Eğer bir konuyu öğrenmek istiyorsan o konunun öğretmeni ol; daha iyi öğrenmek istiyorsan o konuda bir kitap yaz; daha da iyi öğrenmek istiyorsan yazdığın kitabi oku"

ete

TM1637 modül kartının üzerinde haberleşme bacaklarına bağlı kondansatörler aslında 100pf olması gerekir iken bazı üreticiler bu kondansatörleri 100nF olarak takmış. 100nF olan kartlar haberleşme yapamıyor ve çalışmıyor.Bu nedenle bence gereksiz olan o kondansatörlerin sökülmesi en doğrusu. Söküldükten sonra kart çalışabilmektedir.
Maalesef pek çok üretici görsel olarak kopya yapıyor ve kondansatör değerlerinede dikkat etmeden olsa olsa 100nF deyip onu takıyorlar. Sistemin 100nf lar ile Arduino da çalışıp çalışmadığından emin değilim. Ancak İnternete bakarsanız benzer sorunları yaşayan bir çok kişi olduğunu görebilirsiniz. 100nF kare dalga çıkışı için büyük bir değer ve sinyali düzleştirmeye çalışıyor. Bildiğiniz DC regülasyonu gibi. Bu hali ile I2C haberleşmesi yapılması bana göre mümkün değil ve olmuyor da zaten.

Bu modül ile bende saat yaptım ve yaklaşık modül boyutlarında pleksi kutu yapıp içine yerleştirdim. Beyaz display kullandım ve bu saati çok seviyorum.
Uzun süredir birde mutfak saati yapmayı planlıyor idim. Öncelikle mutfak saati nedir ne amaçla kullanılır onu bilmeyenler için açıklayayım. Mutfak da çoğu zaman süreli işler yada pişirmeler yapılıyor. Bu pişirme sürelerini geçirmemek adına süre sonunda sesli ikaz verecek bir zaman sayıcıya ihtiyaç duyulmaktadır. Açıkçası ben çoğu zaman ihtiyaç duyuyorum. Ancak bu tür bir saatin çok pratik bir kullanım şekli olmalı. Zira bir sürü zorluk aşılarak yapılacak bir zaman ayrı bu işin pratikliğini alıp götürüyor.
Üzerinde çok düşündüm ve sonunda en iyi sistemin 3 butonlu sistem olduğuna karar verdim. Benim saatlerim hep 3 butonludur. Birisi SEC/SET görevi üstlenir diğer ikisi artır ve azaltma işlevlerini yapar. Mevcut saatim bu temel üzerinden çalışıyor. İşin mutfak saati kısmında ise normal saat modunda iken artır yada azalt butonlarından herhangi birisine basıldığında sistem otomatikman mutfak saati moduna girmeli ve bu iki tuş yine artır yada azalt işlemlerini yerine getirmelidir. Mutfak saatinde genelde saniyeler bazında süreler kullanılıyor. Ama saat dakikalarıda sayabilmeli. Bu nedenle artır tuşu kısa basmalarda saniye değerini bir artırmalı

Bu konuda bir öneri alma mesajı yayınlayacaktım aRci nin projesi geldi. Bana göre proje güzel ancak yeterince pratikmi üzerinde düşünmek lazım. Şimdi daha önceden düşündüğüm bazı modeller açıklayacağım siz karar verin hangisi daha pratik. Açıklayacağım modeller tamamen mutfak saati ayarlama sistemi içindir. Saat ayarını burada düşünmüyoruz.
Model-A:
3 Tuşlu sistem, Artırma yada azaltma tuşlarından birisine basıldığında sistem mutfak saati moduna girecek ve orada yaklaşık 500 ms süre ile tuşlara yeniden basılmasını bekleyecek. Basılmaz ise tekrar normal saat gösterme işine geri dönecek. Diyelimki artır tuşuna bastım ve basmaya devam ettim .Bu durumda Saniye değeri artacak. Azaltma tuşuna basınca saniye değeri azalacak. Buraya kadar her şey iyi ve pratik. Bu aşamadan sonra dakika moduna nasıl gireceğim. ELbette SET/SEC tuşu bu işi halledebilir. Bu tuşa basarsam bu sefer dakika ayarına girmiş olacağım ve yine artır ve azalt tuşları ile ayarı yaptıktan sonra SEC/SET tuşu ile ayardan çıkıp saymaya geçeceğim.

Model-B:
3 tuşlu sistem, Artırma yada azaltma tuşları ile mutfak saati moduna geçiyorum. Artır tuşu dakika artırıyor, azalt tuşu saniye artırıyor. Sürekli artış yaptıran tuşların birerde azaltma fonksiyonları olmalı. Dakika da azaltma gerekirse "SET/SEC tuşu ile Artırma" tuşuna birlikte basarak dakika azaltıyorum, yine "SET/SEC tuşu ile Azaltma" tuşuna birlikte basarak saniye azaltma işlemini yerine getiriyorum. Tuşları bıraktığımda sistem zaman sayma moduna geçiyor otomatikman.

Model-C:
3 tuşlu sistem ancak yanlızca Artır ve Azalt tuşları kullanılıyor. Tuşlardan Artır tuşuna bastığım zaman saniye değeri birer artarak gidiyor ve tuşa basma işi devam ederse artışlar hızlanarak 59 sn değerine kadar devam ediyor. Her 59 değerinin geçilmesi sonucunda dakika değeri bir artıyor. Eksilt tuşuda benzer fonksiyon ile ekrandaki değeri azaltmaya çalışıyor. Bu sistem saniye ayarlamada çok pratik ancak dakika da aayrlayacak isem biraz pratikliği kayboluyor gibi gözüküyor.

Modeller dahada artırılabilir. Ancak aklıma gelenler bunlar. Varsa daha parlak fikri olan bildirsin değerlendirelim.

Ete

elektro77

#5
Klasik olması nedeniyle A modelini tercih ederdim. Bu tip tuş sistemlerini anneannem bile kullanabilir diye düşünüyorum.
Bir elimin hamurlu olduğunu varsayarsam 2. modeli tercih etmezdim. Tek elle ayar yapılması daha ergonomik olurdu.
3.modele gelirsek dakika ayarlamak için 59. saniyeye kadar beklemek sıkıcı olabilir.
"Eğer bir konuyu öğrenmek istiyorsan o konunun öğretmeni ol; daha iyi öğrenmek istiyorsan o konuda bir kitap yaz; daha da iyi öğrenmek istiyorsan yazdığın kitabi oku"

aRci

Merhaba;
ete bey bende aslında bir pcb tasarlamaya başladım ve diplay panel boyutuna uygun olamsına çalışıyorum eğer herşey yolunda giderse bastıracağım.

mutfak işleri hakkında pek bilgili değilimdir şahsen ancak koyde annem yemek yaparken özellikle düdüklüde saate bakma ihtiyacı oluyor buna sebeple bende bir sayac yapmak istedim. tabi huyum kurusun saac yapmakla yetinmeyip saati ve termomereyide ekledim.

pratiklik konusunda proje a bence daha pratik ama ayar işini saniye türünde değil dakika bazında yapılmalı bence saniye türünde bir zamanlama ihtiyacı duyulacağını pek sanmıyorum.

bence bir butona tek basımla ayara girilmesi pratik olabilir ama hatalı temasla zamanın yada saat ayarına yanlışlıkla girişini önlemek için süreli basım ihtiyacı duyulabilir.

ete

Yaptığım araştırmada mutfak saatlerinde yanlızca dakika ayarlanabildiğini gözlemledim. Saniye ayarı falan yok.
Elbette bu durum yanlızca saniye süresi kullanılmayacağı anlamına gelmiyor. Olursa fena olmaz ama pratiklik açısından yanlızca dakika ayarı gerçekten güzel. Üstelik bir defa o moda girdinizmi zaman geriye doğru sayarken gerekirse dakika artırımı yada azaltması yapabiliyorsunuz ki buda güzel bir özellik olsa gerek.

Ete

elektro77

Alıntı yapılan: ete - 07 Ağustos 2021, 09:21:27Yaptığım araştırmada mutfak saatlerinde yanlızca dakika ayarlanabildiğini gözlemledim. Saniye ayarı falan yok.
Elbette bu durum yanlızca saniye süresi kullanılmayacağı anlamına gelmiyor. Olursa fena olmaz ama pratiklik açısından yanlızca dakika ayarı gerçekten güzel. Üstelik bir defa o moda girdinizmi zaman geriye doğru sayarken gerekirse dakika artırımı yada azaltması yapabiliyorsunuz ki buda güzel bir özellik olsa gerek.

Ete
Hocam mutfak saatini yapıp Burada paylaşacak mısınız?
"Eğer bir konuyu öğrenmek istiyorsan o konunun öğretmeni ol; daha iyi öğrenmek istiyorsan o konuda bir kitap yaz; daha da iyi öğrenmek istiyorsan yazdığın kitabi oku"

ete

Mutfak saati yaptım elbette. Mutfak saati ayarlama açısından bir kaç versiyonu mevcut. Ancak kolaylıkla ticari ürüne dönüştürülebilecek bir proje bu. Bu nedenle yayınlamak istemiyorum. Aslında açık kod vermeden yayınlarım ama oda bana ters geliyor hiç yayınlamamak en iyisi galiba.
Yapmak isteyenlere destek veririm. Destek derken programı yine vermem. Yazmak isteyene takıldığı yerde destek veririm demek istedim.
Bu konuda banada destek lazım şimdi. Kim verebilir acaba?
Şeffaf plexi den kutu yaptırmam gerekiyor. Bu konuda hiç piyasam yada tanıdığım yok maalesef. Yardımcı olabilecek birisi varmıdır? Kutu detaylarını aşağı yukarı hazırladım. Lazer de plexi yi kesip özel yapıştırıcısı ile yapıştırıp kutuyu yapıyorlar. 4-5 adet kutu gerekecek.

Ete

elektro77

Alıntı yapılan: ete - 11 Ağustos 2021, 11:07:39Bu konuda banada destek lazım şimdi. Kim verebilir acaba?
Şeffaf plexi den kutu yaptırmam gerekiyor. Bu konuda hiç piyasam yada tanıdığım yok maalesef. Yardımcı olabilecek birisi varmıdır? Kutu detaylarını aşağı yukarı hazırladım. Lazer de plexi yi kesip özel yapıştırıcısı ile yapıştırıp kutuyu yapıyorlar. 4-5 adet kutu gerekecek.

Ete
Hocam bizim antalya nın esnafı tok esnaf. Geçenlerde bende böyle bir kutu yaptırmak istedim ve dolaşmadığım yer kalmadı. Yaptıramadım. Birde bu şeffaf olan flexi aralarında en pahalı olanı. Bir arkadaş var. abisi promasyon işleri falan yapıyordu. Ölçüleri verirseniz ona bir soracağım.
"Eğer bir konuyu öğrenmek istiyorsan o konunun öğretmeni ol; daha iyi öğrenmek istiyorsan o konuda bir kitap yaz; daha da iyi öğrenmek istiyorsan yazdığın kitabi oku"

elektro77

Şimdi sordum. o da bir ay doluymuş. İşte dedim ya toklar.
"Eğer bir konuyu öğrenmek istiyorsan o konunun öğretmeni ol; daha iyi öğrenmek istiyorsan o konuda bir kitap yaz; daha da iyi öğrenmek istiyorsan yazdığın kitabi oku"

Y_K

Hocam şeffaf kutu işini hallettinizmi bu işlerle ilgilenen bir arkadaşım var ölçüleri verirseniz görüşürüm.

ete

Hallettim .
Teşekkür ederim.
Ete

aRci

Merhaba uzun bir aradan sonra pcb baskı alabildim. Tm1637 modülü ile ~aynı ölçülerde olan pcb yi bugün montajlayıp çalıştırabildim. ilk çalışmadaki pin yapısını değiştirdim ve ayrıca ds18b20 ve bir adat npn transistör için çıkış ekledim. İlerde termometre yada saat bazlı çıkış yönetebilmek için. transistörü PWM çıkışına yaptım ki PWM özelliğinden de yaralana bileyim. Son olarak esp01 için de ayrıca bağlantı noktası var wifi'yi de işin içine eklemesem olmazdı.

16f648a 4mhz
Ds3231
Ds18b20
Esp01
Buzzer
Sinyal Led
Npn Transistor çıkışı

Yukardaki liste de sadece esp01 eksik ve devre yaklaşık 0.02A tüketiyor. Buna göre 100mah pil ile
100/0.02 * 0.707 = 3500 saat (145gün) süreceği yazmakta ne kadar doğru bilemedim. Hesaplama tahmini bir rakam çıkarttığı bahsediliyor.







Powered by EzPortal