امتیاز موضوع:
  • 1 رأی - میانگین امتیازات: 3
  • 1
  • 2
  • 3
  • 4
  • 5
مدار ساعت با خاصیت لجوج بودن
نویسنده پیام
ha_60 آفلاین
بنيانگذار سايت
******

ارسال‌ها: 4,637
موضوع‌ها: 216
تاریخ عضویت: آبان ۱۳۸۳

تشکرها : 560
( 6556 تشکر در 2385 ارسال )
ارسال: #1
ساعت با تايمر لجوج ، ترموستات و نمايش تاريخ شمسي با AVR
در اين پروژه با استفاده از يك ATmega 16 و يك LCD از نوع 16*2 و چهار تا كليد ، يك ساعت را مي بينيد كه داراي تايمر با قابليت زنگ زدن و با خاصيت لجوج بودن و همينطور Short Sleep ، نمايش روز هفته و تاريخ بصورت شمسي و دماسنج همراه با ترموستات دماي بالا و پايين است .

جهت كسب اطلاعات بيشتر بر روي ادامه مطلب كليك كرده و يك فايل 250 KB را بگيريد .
<img src="Image/2ed9zxv.jpg" border="0" alt="Image and video hosting by TinyPic">

سلام بر عزيزان و مخصوصاً مديريت سايت

اين فايل 250 KB را از زير بگيريد تا توضيح بدم :

فايل TEST.DSN شبيه ساز مدار در نرم افزار پروتئوس 6.9 است . فايل CRCUIT.DSN فقط نقشه مدار را كامل تر نشان مي دهد . فايل SA@.bas نيز برنامه ميكرو است . فركانس ميكرو را بر روي 4 مگاهرتز تنظيم كنيد .

جهت كسب اطلاعات بيشتر و همين طور چگونگي تنظيم ساعت و غيره نيز فايل HELP را مشاهده كنيد .

با تشكر


A.N.T

فایلها :
CLOCK_A_N.zip 250.24KB
(آخرین ویرایش در این ارسال: ۳۱-مرداد-۱۳۸۹, ۱۳:۵۳:۳۱، توسط t3r!p3000.)
۱۸-اسفند-۱۳۸۶, ۱۲:۱۷:۳۷
وب سایت ارسال‌ها
پاسخ
morteza5625166 آفلاین
تازه وارد

ارسال‌ها: 2
موضوع‌ها: 1
تاریخ عضویت: تير ۱۳۸۶

تشکرها : 0
( 1 تشکر در 1 ارسال )
ارسال: #2
مدار ساعت با خاصیت لجوج بودن
این مداری در قسمت سورسش enable timer2 را error میده چه کار کنم

سورسش
کد php:
$regfile "m16def.dat"
$crystal 4000000
                                                                     
' DESINGED BY A.N.T
Config Lcd = 16 * 2
Config Lcdpin = Pin , Db4 = Pinc.3 , Db5 = Pinc.2 , Db6 = Pinc.1 , Db7 = Pinc.0 , E = Pinc.4 , Rs = Pinc.5
Cursor Off
Cls : Lcd "  DESINGED  BY  " : Home L : Lcd "   A . N . T   " : Wait 2

Config Portb = Output
Config Pind.7 = Output , Pind.6 = Output , Pind.5 = Output , Pind.4 = Output
Config Pind.3 = Input , Pind.2 = Input , Pind.2 = Input , Pind.0 = Input

Config Adc = Single , Prescaler = Auto

      Deflcdchar 0 , 24 , 24 , 32 , 32 , 15 , 8 , 8 , 15    ' 
.C
      Deflcdchar 2 
14 31 4        'UP
      Deflcdchar 3 , 4 , 4 , 4 , 4 , 4 , 31 , 14 , 4        '
DOWN
      Deflcdchar 1 
29 29 29 8       'zang


Dim Cc As Byte , Mm As Byte , Ss As Byte , Ct As Byte , Mt As Byte , W As Word
Dim Ecc As Eram Byte , Emm As Eram Byte , Ect As Eram Byte , Emt As Eram Byte
Dim A0 As Word , Stimer As Byte , F As Byte , Cup As Byte , Cdown As Byte , Mz As Byte
Dim Roz As Byte , Mah As Byte , Sal As Byte , Hafteh As Byte , B As Byte , Z As Byte
Dim Eb As Eram Byte , Eroz As Eram Byte , Emah As Eram Byte , Esal As Eram Byte
Dim Ehafteh As Eram Byte , Ecup As Eram Byte , Ecdown As Eram Byte , Ett5 As Eram Byte
Dim Tt1 As Byte , Tt2 As Byte , Tt3 As Byte , Tt4 As Byte , Tt5 As Byte , Kk As Byte
Dim Ett1 As Eram Byte , Ett2 As Eram Byte , Ett3 As Eram Byte , Ett4 As Eram Byte

Cc = Ecc : Mm = Emm : Ct = Ect : Mt = Emt : B = Eb : Cdown = Ecdown
Roz = Eroz : Mah = Emah : Sal = Esal : Hafteh = Ehafteh : Cup = Ecup
Tt1 = Ett1 : Tt2 = Ett2 : Tt3 = Ett3 : Tt4 = Ett4 : Tt5 = Ett5

Const T1 = 100

Config Timer2 = Timer , Async = On , Prescale = 32
Enable Interrupts
Enable Timer2
On Timer2 Sectic

               Cls
If Cc < 10 Then : Lcd " " ; Cc
Elseif Cc < 24 Then : Lcd Cc
Else : Cc = 10 : Lcd "10"
End If
               Lcd ":"
If Mm < 10 Then : Lcd "0" ; Mm
Elseif Mm < 60 Then : Lcd Mm
Else : Mm = 0 : Lcd "00"
End If
               Lcd ":00" : Locate 1 , 12
If Ct < 10 Then : Lcd " " ; Ct
Elseif Ct < 24 Then : Lcd Ct
Else : Ct = 6 : Lcd " 6"
End If
               Lcd ":"
If Mt < 10 Then : Lcd "0" ; Mt
Elseif Mt < 60 Then : Lcd Mt
Else : Mt = 30 : Lcd "30"
End If
               Locate 1 , 10
If B = 1 Then : Lcd Chr(1) : Set Portb.3
Elseif B = 0 Then : Lcd " " : Reset Portb.3
Else : B = 1 : Lcd Chr(1) : Set Portb.3
End If
               Home L
If Sal < 10 Then : Lcd " " ; Sal
Elseif Sal < 100 Then : Lcd Sal
Else : Sal = 87 : Lcd "87"
End If
               Locate 2 , 3 : Lcd "/"
If Mah < 10 Then : Lcd "0" ; Mah
Elseif 13 > Mah Then : Lcd Mah
Else : Mah = 1 : Lcd "01"
End If
               Locate 2 , 6 : Lcd "/"
If Roz < 10 Then : Lcd "0" ; Roz
Elseif Roz < 32 Then : Lcd Roz
Else : Roz = 1 : Lcd "01"
End If

If Cup > 99 Then : Cup = 40 : End If
If Cdown > 99 Then : Cdown = 10 : End If

If Tt1 > 15 Then Tt1 = 1
If Tt2 > 15 Then Tt2 = 1
If Tt3 > 15 Then Tt3 = 1
If Tt4 > 15 Then Tt4 = 1
If Tt5 > 15 Then Tt5 = 1

               Locate 2 , 9
Select Case Hafteh
      Case 1 : Lcd " SAT"
      Case 2 : Lcd " SUN"
      Case 3 : Lcd " MON"
      Case 4 : Lcd " TUE"
      Case 5 : Lcd " WED"
      Case 6 : Lcd " THU"
      Case 7 : Lcd " FRI"
Case Else
       Hafteh = 6 : Lcd " THU"
End Select
                                 ' 
SHORO BARNAMEH
Star
:
               
Waitms T1 Kk 0
Do
               
Debounce Pind.0 Ct
               Debounce Pind.3 
Tt
               
If Pind.1 1 Then :
                     If 
Pind.2 1 Then Exit Do
               
End If
Loop
      
For 0 To 40000
            
If Pind.1 0 Then Goto Star
            
If Pind.2 0 Then Goto Star
            Debounce Pind.3 
D7 Sub
            Waitus 60
      Next
Goto Dama1

Tt
:
      
Kk 1
      
For 0 To 40000
            
If Pind.3 0 Then Goto D7
            Waitus 63
      Next
      
Goto Tt1
                                  
' HAR 0.25 SANEH YEKBAR BE IN VAGHFEH MORAJEEH MISHAVAD
                                  ' 
BARAY BE ROOZ KARDAN ZAMAN
Sectic
:

Select Case Stimer
Case 0
         Gosub Offlcd

      
If Ss 20 Then :
            If 
A0 >= Cup Then Set Portb.0
            
Else : Reset Portb.0
            End 
If
            If 
Cdown >= A0 Then Set Portb.2
            
Else : Reset Portb.2
            End 
If
            If 
Cup A0 Then :
                  If 
A0 Cdown Then Set Portb.1
                  
Else : Reset Portb.1
                  End 
If
            Else : 
Reset Portb.1
            End 
If
            If 
A0 99 Then Reset Portb.0 Reset Portb.1 Reset Portb.2
            End 
If
      Elseif 
Ss 50 Then :
            If 
A0 >= Cup Then Set Portb.0
            
Else : Reset Portb.0
            End 
If
            If 
Cdown >= A0 Then Set Portb.2
            
Else : Reset Portb.2
            End 
If
            If 
Cup A0 Then :
                  If 
A0 Cdown Then Set Portb.1
                  
Else : Reset Portb.1
                  End 
If
            Else : 
Reset Portb.1
            End 
If
            If 
A0 99 Then Reset Portb.0 Reset Portb.1 Reset Portb.2
            End 
If
      
End If

      If 
1 Then Reset Portd.5 Set Portd.6
      
Elseif 3 Then Reset Portd.5 Set Portd.6
      
Else :
            If 
5 Then Set Portd.5 Set Portd.6
            
Else : Reset Portd.5 Reset Portd.6
            End 
If
      
End If
                                                                     
' DESINGED BY A.N.T
Case 1 :

      Toggle Portd.4 : Gosub Onlcd

      If Z = 1 Then : Reset Portd.5
      Elseif Z = 3 Then : Reset Portd.5
      Else :
            If Z = 5 Then : Reset Portd.5
            Else : Reset Portd.5 : Reset Portd.6
            End If
      End If
                     Start Adc : A0 = Getadc(0) : Stop Adc
                     A0 = A0 / 2 : Locate 2 , 13
      If F <> 11 Then :
            If F <> 12 Then :
                        If A0 < 10 Then : Lcd "  " ; A0 ; Chr(0)
                        Elseif A0 > 99 Then : Lcd " ERR"
                        Else : Lcd " " ; A0 ; Chr(0)
                        End If
            End If
      End If

Case 2 :
      Gosub Offlcd

      Select Case B
      Case 1 :
            If Cc = Ct Then
               If Mm = Mt Then :
                     If Z = 0 Then :
                               Set Portd.5 : Set Portd.6 : Set Portd.7
                               Mz = Mm + Tt1 : Z = 1
                               If Mz > 59 Then : Mz = Mz - 60 : End If
                     End If
               Else : Reset Portd.5
               End If
            End If
      Case Else :
            Reset Portd.5
      End Select

      If Mz = Mm Then :
            If Z = 1 Then :
                  Z = 2 : Mz = Mm + Tt2
                  If Mz > 59 Then Mz = Mz - 60
            Elseif Z = 2 Then:
                  Z = 3 : Mz = Mm + Tt3
                  If Mz > 59 Then Mz = Mz - 60
            Else :
                  If Z = 3 Then :
                        Z = 4 : Mz = Mm + Tt4
                        If Mz > 59 Then Mz = Mz - 60
                  Elseif Z = 4 Then:
                        Z = 5 : Mz = Mm + Tt5
                        If Mz > 59 Then Mz = Mz - 60
                  Else : Z = 0
                  End If
            End If
      End If

      If Z = 1 Then : Set Portd.5 : Set Portd .6
      Elseif Z = 3 Then : Set Portd.5 : Set Portd .6
      Else :
            If Z = 5 Then : Set Portd.5
            Else : Reset Portd.5
            End If
      End If
                                                                     ' 
DESINGED BY A.N.T
Case :
                     
Toggle Portd.4 Ss Ss 1
If Ss 59 Then :
      
Ss Mm Mm 1
      
If Mm 59 Then
             Mm 
Cc Cc Ecc Cc
             
If Cc 23 Then
                  Cc 
Roz Roz Hafteh Hafteh 1
                  
If Hafteh 7 Then Hafteh 1

                  
If Mah 6 Then
                         
If Roz 30 Then
                               Roz 
Mah Mah 1
                               
If Mah 12 Then :
                                     
Mah Sal Sal 1
                                     
If Sal 99 Then Sal 0
                                     
If Sal 10 Then Home L Lcd " " Sal "/"
                                     
Else : Home L Lcd Sal
                                     End 
If
                                     
Esal Sal
                               End 
If
                               If 
Mah 10 Then Locate 2 Lcd "0" Mah "/"
                               
Else : Locate 2 Lcd Mah
                               End 
If
                               
Emah Mah
                         End 
If

                   Elseif 
Mah Then :
                         If 
Roz 31 Then
                               Roz 
Mah Mah 1
                               
If Mah 12 Then
                                     Mah 
Sal Sal 1

                                     
If Sal 10 Then Home L Lcd " " Sal "/"
                                     
Else : Home L Lcd Sal "/"
                                     
End If
                                     
Esal Sal
                               End 
If

                               If 
Mah 10 Then Locate 2 Lcd "0" Mah "/"
                               
Else : Locate 2 Lcd Mah
                               End 
If
                               
Emah Mah
                        End 
If
                         
Eroz Roz Ehafteh Hafteh
                   End 
If

                   
Locate 2 9
                   Select 
Case Hafteh
                         
Case Lcd " SAT"
                         
Case Lcd " SUN"
                         
Case Lcd " MON"
                         
Case Lcd " TUE"
                         
Case Lcd " WED"
                         
Case Lcd " THU"
                         
Case Lcd " FRI"
                   
End Select

                   Locate 2 
7
                   
If Roz 10 Then Lcd "0" Roz
                   
Else : Lcd Roz
                   End 
If

            
End If

                If 
Cc 10 Then Home Lcd " " Cc ":"
                
Else : Home Lcd Cc ":"
                
End If

                
Ecc Cc
      End 
If

          If 
Mm 10 Then Locate 1 Lcd "0" Mm ":"
          
Else : Locate 1 Lcd Mm ":"
          
End If
      
Emm Mm
End 
If
              
Locate 1 7

      
If Ss 10 Then Lcd "0" Ss
      
Else : Lcd Ss
      End 
If
      
Lcd " "

         
Gosub Onlcd Stimer 255

      
If 1 Then Reset Portd.5
      
Elseif 3 Then Set Portd.5
      
Else :
            If 
5 Then Set Portd.5 Set Portd.6
            
Else : Reset Portd.5
            End 
If
      
End If

End Select
            Incr Stimer 
Locate 2 20
Return

                                 
' BARAY TANZIM SA@
Cc:
      F = 1 : Locate 1 , 12
      If Ct < 10 Then : Lcd " " ; Ct ; ":"
      Else : Lcd Ct ; ":"
      End If
      Waitms T1
Do
               Debounce Pind.3 , 1 , D7 , Sub
               Debounce Pind.0 , 1 , Mm
               Debounce Pind.1 , 1 , Cc8
               Debounce Pind.2 , 1 , Cc9
Loop
Cc8:
         Cc = Cc + 1 : If Cc > 23 Then Cc = 0 : Goto Cc

Cc9:
         Cc = Cc - 1 : If Cc > 100 Then Cc = 23 : Goto Cc
Return
                                 ' 
BARAY TANZIM DAGHIGHEH
Mm
:
      
Ecc Cc Home
      
If Cc 10 Then Lcd " " Cc ":"
      
Else : Lcd Cc ":"
      
End If

Mm1:
      
Waitms T1
Do
               
Debounce Pind.3 D7 Sub
               Debounce Pind.0 
Ss
               Debounce Pind.1 
Mm8
               Debounce Pind.2 
Mm9
Loop

Mm8
:
         
Mm Mm : If Mm 59 Then Mm : Goto Mm1
Mm9
:
         
Mm Mm : If Mm 200 Then Mm 59 : Goto Mm1
Return
                                
' BARAY TANZIM SANIYEH
Ss:
      Emm = Mm : F = 3 : Locate 1 , 4
      If Mm < 10 Then : Lcd "0" ; Mm ; ":"
      Else : Lcd Mm ; ":"
      End If

Ss1:
      Waitms T1
Do
               Debounce Pind.3 , 1 , D7 , Sub
               Debounce Pind.0 , 1 , Ssal
               Debounce Pind.1 , 1 , Ss8
               Debounce Pind.2 , 1 , Ss9
Loop
                                                                     ' 
DESINGED BY A.N.T
Ss9
:
      
Timer2 Stimer Ss Locate 1 Lcd "00" : Goto Ss1
Ss8
:
      
Timer2 Stimer 0
            
If Ss 29 Then Mm Mm 1

      
If Mm 59 Then
             Mm 
Cc Cc Ecc Cc
             
If Cc 23 Then
                  Cc 
Roz Roz Hafteh Hafteh 1
                  
If Hafteh 7 Then Hafteh 1

                  
If Mah 6 Then
                         
If Roz 30 Then
                               Roz 
Mah Mah 1
                               
If Mah 12 Then
                                     Mah 
Sal Sal 1
                                     
If Sal 99 Then Sal 0
                                     
If Sal 10 Then Home L Lcd " " Sal "/"
                                     
Else : Home L Lcd Sal
                                     End 
If
                                     
Esal Sal
                               End 
If

                               If 
Mah 10 Then Locate 2 Lcd "0" Mah "/"
                               
Else : Locate 2 Lcd Mah
                               End 
If
                               
Emah Mah
                         End 
If

                   Elseif 
Mah Then :
                         If 
Roz 31 Then
                               Roz 
Mah Mah 1
                               
If Mah 12 Then
                                     Mah 
Sal Sal 1
                                     
If Sal 10 Then Home L Lcd " " Sal "/"
                                     
Else : Home L Lcd Sal "/"
                                     
End If
                                     
Esal Sal
                               End 
If

                               If 
Mah 10 Then Locate 2 Lcd "0" Mah "/"
                               
Else : Locate 2 Lcd Mah
                               End 
If

                               
Emah Mah
                        End 
If
                         
Eroz Roz Ehafteh Hafteh
                   End 
If

                   
Locate 2 9
                   Select 
Case Hafteh
                         
Case Lcd " SAT"
                         
Case Lcd " SUN"
                         
Case Lcd " MON"
                         
Case Lcd " TUE"
                         
Case Lcd " WED"
                         
Case Lcd " THU"
                         
Case Lcd " FRI"
                   
End Select

                   Locate 2 
7
                   
If Roz 10 Then Lcd "0" Roz
                   
Else : Lcd Roz
                   End 
If

            
End If

                If 
Cc 10 Then Home Lcd " " Cc ":"
                
Else : Home Lcd Cc ":"
                
End If
                
Ecc Cc
      End 
If
            
Locate 1 4
         
If Mm 10 Then Lcd "0" Mm "/00"
         
Else : Lcd Mm "/00"
         
End If

      
Ss : Goto Ss1
Return
                               
' BARAT TANZIM SA@ TIMER
Ct:
      F = 4
      For W = 0 To 40000
            If Pind.0 = 0 Then : Goto Ct1 : End If
            Waitus 60
            Debounce Pind.3 , 1 , D7 , Sub
      Next
      Goto Cc
Ct1:
       Waitms T1 : Z = 10 : Reset Portb.3
Do
               Debounce Pind.3 , 1 , D7 , Sub
               Debounce Pind.0 , 1 , Mt
               Debounce Pind.1 , 1 , Ct8
               Debounce Pind.2 , 1 , Ct9
Loop

Ct8:
            Ct = Ct + 1 : If Ct > 23 Then Ct = 0 : Goto Ct1
Ct9:
            Ct = Ct - 1 : If Ct > 200 Then Ct = 23 : Goto Ct1
Return
                               ' 
BARAT TANZIM DAGHIGHEH TIMER
Mt
:
      
Ect Ct Locate 1 12 10

      
If Ct 10 Then Lcd " " Ct ":"
      
Else : Lcd Ct ":"
      
End If
Mt1:
      
Waitms T1
Do
               
Debounce Pind.3 D7 Sub
               Debounce Pind.0 
Mt2
               Debounce Pind.1 
Mt8
               Debounce Pind.2 
Mt9
Loop

Mt8
:
          
Mt Mt : If Mt 59 Then Mt : Goto Mt1
Mt9
:
         
Mt Mt : If Mt 200 Then Mt 59 : Goto Mt1
Mt2
:
      
Emt Mt Locate 1 15
      
If Mt 10 Then Lcd "0" Mt
      
Else : Lcd Mt
      End 
If
      
: If 1 Then Set Portb.3 : Goto Star
Return
                                  
' BARAY FAAL VA GHER FAAL KARDAN TIMER
D7:
      Locate 1 , 10
            If B = 0 Then : B = 1 : Lcd Chr(1) : Set Portb.3
            Elseif B = 1 Then : B = 0 : Lcd " " : Reset Portb.3
            Else : B = 1 : Lcd Chr(1) : Set Portb.3
            End If
      Eb = B : Locate 2 , 20 : Reset Portd.7 : Z = 0
      Reset Portd.5 : Reset Portd.6 : If Kk = 1 Then Goto Star
      Waitms T1

Return
Return
                                 ' 
BARAY TANZIM TARIKH SAL
Ssal
:
      
Locate 1 7
      
If Ss 10 Then Lcd "0" Ss
      
Else : Lcd Ss
      End 
If
Ssal1:
       
Waitms T1
Do
               
Debounce Pind.3 D7 Sub
               Debounce Pind.0 
Mmah
               Debounce Pind.1 
Ssal8
               Debounce Pind.2 
Ssal9
Loop

Ssal8
:
         
Sal Sal : If Sal 99 Then Sal : Goto Ssal1
Ssal9
:
         
Sal Sal : If Sal 200 Then Sal 99 : Goto Ssal1
Return
                                 
' BARAY TANZIM TARIKH MAH
Mmah:
      F = 7 : Esal = Sal : Home L
      If 10 > Sal Then : Lcd " " ; Sal ; "/"
      Else : Lcd Sal ; "/"
      End If
Mmah1:
      Waitms T1
Do
               Debounce Pind.3 , 1 , D7 , Sub
               Debounce Pind.0 , 1 , Rroz
               Debounce Pind.1 , 1 , Mmah8:
               Debounce Pind.2 , 1 , Mmah9
Loop

Mmah8:
         Mah = Mah + 1 : If Mah > 12 Then Mah = 1 : Goto Mmah1

Mmah9:
         Mah = Mah - 1 : If Mah = 0 Then Mah = 12 : Goto Mmah1
Return
                                 ' 
BARAY TANZIM TARIKH ROZ
Rroz
:
         
Emah Mah Locate 2 4

      
If 10 Mah Then Lcd "0" Mah "/"
      
Else : Lcd Mah "/"
      
End If
Rroz1:
         
Waitms T1
         Select 
Case Mah :
               Case 
Is :
                    If 
Roz 30 Then Roz 1
                    
Elseif Roz 0 Then Roz 30
                    End 
If
               Case 
Is :
                     If 
Roz 31 Then Roz 1
                     
Elseif Roz 0 Then Roz 31
                     End 
If
         
End Select
Do
               
Debounce Pind.3 D7 Sub
               Debounce Pind.0 
Hhafteh
               Debounce Pind.1 
Rroz8
               Debounce Pind.2 
Rroz9
Loop
Rroz8
:
       
Roz Roz : Goto Rroz1
Rroz9
:
       
Roz Roz : Goto Rroz1
Return
                                 
' BARAY TANZIM ROOZ HAFTEH
Hhafteh:

      F = 9 : Eroz = Roz : Locate 2 , 7

      If Roz < 10 Then : Lcd "0" ; Roz
      Else : Lcd Roz
      End If

Hhafteh1:
      Waitms T1
Do
               Debounce Pind.3 , 1 , D7 , Sub
               Debounce Pind.0 , 1 , Hhafteh2
               Debounce Pind.1 , 1 , Hhafteh8
               Debounce Pind.2 , 1 , Hhafteh9
Loop

Hhafteh8:
         Hafteh = Hafteh + 1 : If Hafteh > 7 Then Hafteh = 1 : Goto Hhafteh1

Hhafteh9:
         Hafteh = Hafteh - 1 : If Hafteh = 0 Then Hafteh = 7 : Goto Hhafteh1

Hhafteh2:
         Ehafteh = Hafteh : Locate 2 , 9
         Select Case Hafteh:
               Case 1 : Lcd " SAT"
               Case 2 : Lcd " SUN"
               Case 3 : Lcd " MON"
               Case 4 : Lcd " TUE"
               Case 5 : Lcd " WED"
               Case 6 : Lcd " THU"
               Case 7 : Lcd " FRI"
         End Select
Goto Star

Return
                                 ' 
BARAY TANZIM DAMAY BALA
Dama1
:
         
11
Do
               
Debounce Pind.3 D7 Sub
               Debounce Pind.0 
Dama2
               
If Pind.1 0 Then :
                     If 
Pind.2 0 Then Exit Do
               
End If

Loop
Dama15
:
            
Waitms T1
Do
               
Debounce Pind.3 D7 Sub
               Debounce Pind.0 
Dama2
               Debounce Pind.1 
Dama18
               Debounce Pind.2 
Dama19
Loop

Dama18
:
         
Cup Cup : If Cup 99 Then Cup : Goto Dama15
Dama19
:
         
Cup Cup : If Cup 200 Then Cup 99 : Goto Dama15
Return
                                 
' BARAY TANZIM DAMAY PAEEN
Dama2:
         F = 12 : Waitms T1
Do
               Debounce Pind.3 , 1 , D7 , Sub
               Debounce Pind.0 , 1 , Dama22
               Debounce Pind.1 , 1 , Dama28
               Debounce Pind.2 , 1 , Dama29
Loop

Dama28:
         Cdown = Cdown + 1 : If Cdown > 99 Then Cdown = 0 : Goto Dama2
Dama29:
         Cdown = Cdown - 1 : If Cdown > 200 Then Cdown = 99 : Goto Dama2
Dama22:
         Ecdown = Cdown : Ecup = Cup : Locate 2 , 13

                        If A0 < 10 Then : Lcd "  " ; A0 ; Chr(0)
                        Elseif A0 > 99 Then : Lcd " ERR"
                        Else : Lcd " " ; A0 ; Chr(0)
                        End If

            Goto Star
Return
                                 ' 
BARAY TANZIM ZAMAN T1
Tt1
:

         
21 Waitms T1 Kk 0
Do
               
Debounce Pind.3 D7 Sub
               Debounce Pind.0 
Tt13
               Debounce Pind.1 
Tt11
               Debounce Pind.2 
Tt12
Loop

Tt11
:
         
Tt1 Tt1 : If Tt1 15 Then Tt1 : Goto Tt1
Tt12
:
         
Tt1 Tt1 : If Tt1 255 Then Tt1 15 : Goto Tt1
Tt13
:
         
Ett1 Tt1 : Goto Tt2
Return
                                 
' BARAY TANZIM ZAMAN T2
Tt2:
         F = 22 : Waitms T1
Do
               Debounce Pind.3 , 1 , D7 , Sub
               Debounce Pind.0 , 1 , Tt23
               Debounce Pind.1 , 1 , Tt21
               Debounce Pind.2 , 1 , Tt22
Loop

Tt21:
         Tt2 = Tt2 + 1 : If Tt2 > 15 Then Tt2 = 0 : Goto Tt2
Tt22:
         Tt2 = Tt2 - 1 : If Tt2 = 255 Then Tt2 = 15 : Goto Tt2
Tt23:
         Ett2 = Tt2 : Goto Tt3
Return
                                 ' 
BARAY TANZIM ZAMAN T3
Tt3
:
         
23 Waitms T1
Do
               
Debounce Pind.3 D7 Sub
               Debounce Pind.0 
Tt33
               Debounce Pind.1 
Tt31
               Debounce Pind.2 
Tt32
Loop

Tt31
:
         
Tt3 Tt3 : If Tt3 15 Then Tt3 : Goto Tt3
Tt32
:
         
Tt3 Tt3 : If Tt3 255 Then Tt3 15 : Goto Tt3
Tt33
:
         
Ett3 Tt3 : Goto Tt4
Return
                                 
' BARAY TANZIM ZAMAN T4
Tt4:
         F = 24 : Waitms T1
Do
               Debounce Pind.3 , 1 , D7 , Sub
               Debounce Pind.0 , 1 , Tt43
               Debounce Pind.1 , 1 , Tt41
               Debounce Pind.2 , 1 , Tt42
Loop

Tt41:
         Tt4 = Tt4 + 1 : If Tt4 > 15 Then Tt4 = 0 : Goto Tt4
Tt42:
         Tt4 = Tt4 - 1 : If Tt4 = 255 Then Tt4 = 15 : Goto Tt4
Tt43:
         Ett4 = Tt4 : Goto Tt5
Return
                                 ' 
BARAY TANZIM ZAMAN T5
Tt5
:
         
25 Waitms T1
Do
               
Debounce Pind.3 D7 Sub
               Debounce Pind.0 
Tt53
               Debounce Pind.1 
Tt51
               Debounce Pind.2 
Tt52
Loop

Tt51
:
         
Tt5 Tt5 : If Tt5 15 Then Tt5 : Goto Tt5
Tt52
:
         
Tt5 Tt5 : If Tt5 255 Then Tt5 15 : Goto Tt5
Tt53
:
         
Ett5 Tt5 Locate 1 12 :
            If 
Ct 10 Then Lcd " " Ct
            
Else : Lcd Ct
            End 
If

         
Lcd ":" Locate 1 15 :
            If 
Mt 10 Then Lcd "0" Mt
            
Else : Lcd Mt
            End 
If

         Goto 
Star
Return
                                 
' BARAY KHAMOSH KARDAN ETELAAT LCD DAR ZAMAN CHESHMAK ZADAN HENGAM ENTEKHAB GOZINEH MARBOTEH
Offlcd:

If F <> 0 Then :

      If F = 1 Then : Home : Lcd "  "
      Elseif F = 2 Then : Locate 1 , 4 : Lcd "  "
      Else :
               If F = 3 Then : Locate 1 , 7 : Lcd "  "
               Elseif F = 4 Then : Locate 1 , 12 : Lcd "  "
               End If
      End If

      If F = 5 Then : Locate 1 , 15 : Lcd "  "
      Elseif F = 6then : Locate 2 , 1 : Lcd "  "
      Else :
               If F = 7 Then : Locate 2 , 4 : Lcd "  "
               Elseif F = 8then : Locate 2 , 7 : Lcd "  "
               End If
      End If

      If F = 9 Then : Locate 2 , 9 : Lcd "    "
      Elseif F = 25 Then : Locate 1 , 15 : Lcd "   "
      Else :
               If F = 11 Then : Locate 2 , 13 : Lcd "   " ; Chr(2)
               Elseif F = 12 Then : Locate 2 , 13 : Lcd "   " ; Chr(3)
               End If
      End If
                                                                     ' 
DESINGED BY A.N.T
      
If 21 Then Locate 1 15 Lcd "   "
      
Elseif 22 Then Locate 1 15 Lcd "   "
      
Else :
               If 
23 Then Locate 1 15 Lcd "   "
               
Elseif 24 Then Locate 1 15 Lcd "   "
               
End If
      
End If
End If
Return
                                 
' BARAY NAMAYESH ETELAAT MORED NIYAZ DAR ZAMAN MONASEB BAR ROY LCD
Onlcd:

If F <> 0 Then :

            Home
            If Cc < 10 Then : Lcd " " ; Cc
            Else : Lcd Cc
            End If

            Locate 1 , 4
            If Mm < 10 Then : Lcd "0" ; Mm
            Else : Lcd Mm
            End If


            Locate 1 , 7
            If Ss < 10 Then : Lcd "0" ; Ss
            Else : Lcd Ss
            End If

            Home L
            If Sal < 10 Then : Lcd " " ; Sal
            Else : Home L : Lcd Sal
            End If

      If F = 5 Then
            Locate 1 , 15 :
            If Mt < 10 Then : Lcd "0" ; Mt
            Else : Lcd Mt
            End If
      Elseif F = 4 Then
            Locate 1 , 12 :
            If Ct < 10 Then : Lcd " " ; Ct
            Else : Lcd Ct
            End If
      End If

            Locate 2 , 4
            If Mah < 10 Then : Lcd "0" ; Mah
            Else : Lcd Mah
            End If

            Locate 2 , 7
            If Roz < 10 Then : Lcd "0" ; Roz
            Else : Lcd Roz
            End If

            Locate 2 , 9
            Select Case Hafteh
                  Case 1 : Lcd " SAT"
                  Case 2 : Lcd " SUN"
                  Case 3 : Lcd " MON"
                  Case 4 : Lcd " TUE"
                  Case 5 : Lcd " WED"
                  Case 6 : Lcd " THU"
                  Case 7 : Lcd " FRI"
            End Select

      If F = 25 Then
            Locate 1 , 12 : : Lcd "T5="
            If Tt5 < 10 Then : Lcd "0" ; Tt5
            Else : Lcd Tt5
            End If
      End If

      If F = 11 Then
            Locate 2 , 14
            If Cup < 10 Then : Lcd "0" ; Cup
            Else : Lcd Cup
            End If
      Elseif F = 12 Then :
            Locate 2 , 14
            If Cdown < 10 Then : Lcd "0" ; Cdown
            Else : Lcd Cdown
            End If
      End If

      If F = 21 Then
            Locate 1 , 12 : Lcd "T1="
            If Tt1 < 10 Then : Lcd "0" ; Tt1
            Else : Lcd Tt1
            End If
      Elseif F = 22 Then
            Locate 1 , 12 : : Lcd "T2="
            If Tt2 < 10 Then : Lcd "0" ; Tt2
            Else : Lcd Tt2
            End If
      End If

      If F = 23 Then
            Locate 1 , 12 : Lcd "T3="
            If Tt3 < 10 Then : Lcd "0" ; Tt3
            Else : Lcd Tt3
            End If
      Elseif F = 24 Then
            Locate 1 , 12 : : Lcd "T4="
            If Tt4 < 10 Then : Lcd "0" ; Tt4
            Else : Lcd Tt4
            End If
      End If

End If
Return
                                                                     ' 
DESINGED BY A.N.T
End
                                                                     
' terip2008@yahoo.com 
(آخرین ویرایش در این ارسال: ۱۱-اردیبهشت-۱۳۸۸, ۲۰:۴۳:۳۴، توسط t3r!p3000.)
۱۹-مرداد-۱۳۸۷, ۰۱:۴۴:۳۶
ارسال‌ها
پاسخ
تشکر شده توسط : t3r!p3000
t3r!p3000 آفلاین
         
*****

ارسال‌ها: 5,050
موضوع‌ها: 83
تاریخ عضویت: اردیبهشت ۱۳۸۵

تشکرها : 34447
( 17423 تشکر در 5116 ارسال )
ارسال: #3
RE: مدار ساعت با خاصیت لجوج بودن
سلام

ممنون كه از اين مدار استفاده كردي .Clap
ساعت با تايمر لجوج ، ترموستات و نمايش تاريخ شمسي با AVR

من الان برنامه رو امتحان كردم هيچ خطايي نداد . من از بسكام 1.11.9.0 استفاده كردم . البته اون زماني هم اين برنامه رو نوشتم ؛ يادمه ورژنهاي قديميش بود و اون زمان هم هيچ خطايي نداد . تو فايل پروتئوس برنامه تست شده و مشخص هستش .Rolleyes
من دوباره اصل برنامه رو مي ذارم ؛ اگه دوباره خطا داد مطمئن باش از نسخه بسكامت هستش .

در ضمن بسكامت بايد فول باشه و يا كرك هاشو نصب كرده باشي .

مي توني بسكام نسخه جديد رو از اينجا بگيري .
BASCOM 1.11.9.0


سوال ديگه اي داشتي ما در خدمت هستيم .


فایل‌(های) پیوست شده
.rar   SA@.rar (اندازه: 14.15 KB / تعداد دفعات دریافت: 146)
(آخرین ویرایش در این ارسال: ۲۵-آبان-۱۳۸۷, ۰۳:۳۲:۳۳، توسط t3r!p3000.)
۱۹-مرداد-۱۳۸۷, ۰۲:۱۹:۵۳
ارسال‌ها
پاسخ
تشکر شده توسط : mzm-rec, sita_rampail
mzm-rec آفلاین
تازه وارد

ارسال‌ها: 1
موضوع‌ها: 0
تاریخ عضویت: اردیبهشت ۱۳۸۸

تشکرها : 12
( 1 تشکر در 1 ارسال )
ارسال: #4
Toungue  RE: مدار ساعت با خاصیت لجوج بودن
سلام
ممنون بابته برنامه و مدار
من هم درستش کردم!
[تصویر:  8852437cc1f85cc704b248b2e4df0f78.JPG]

HappyHappyHappyHappy
(آخرین ویرایش در این ارسال: ۱۶-اردیبهشت-۱۳۸۸, ۰۳:۱۳:۱۸، توسط mzm-rec.)
۱۱-اردیبهشت-۱۳۸۸, ۱۷:۰۱:۴۲
ارسال‌ها
پاسخ
تشکر شده توسط : t3r!p3000
t3r!p3000 آفلاین
         
*****

ارسال‌ها: 5,050
موضوع‌ها: 83
تاریخ عضویت: اردیبهشت ۱۳۸۵

تشکرها : 34447
( 17423 تشکر در 5116 ارسال )
ارسال: #5
RE: مدار ساعت با خاصیت لجوج بودن
جالبه .

من مدار رو هیچ وقت درست نکردم و فقط رو بردبورد یه تستش کردم .


تو عکس اولی چرا سنسور دما خطا داده . نکنه LM35 رو وصل نکردی یا دما بیشتر از 125 درجه بوده !
۱۱-اردیبهشت-۱۳۸۸, ۲۰:۵۱:۱۴
ارسال‌ها
پاسخ
تشکر شده توسط : mzm-rec
SKH13571359 آفلاین
تازه وارد

ارسال‌ها: 1
موضوع‌ها: 0
تاریخ عضویت: خرداد ۱۳۸۸

تشکرها : 0
( 0 تشکر در 0 ارسال )
ارسال: #6
RE: مدار ساعت با خاصیت لجوج بودن
مدار اين برنامه كجاست؟؟؟؟
(آخرین ویرایش در این ارسال: ۲۰-خرداد-۱۳۸۸, ۱۳:۵۰:۵۲، توسط SKH13571359.)
۲۰-خرداد-۱۳۸۸, ۱۳:۵۰:۳۱
ارسال‌ها
پاسخ
mehrdadgh آفلاین
کاربر با تجربه
****

ارسال‌ها: 830
موضوع‌ها: 58
تاریخ عضویت: مرداد ۱۳۸۷

تشکرها : 654
( 1904 تشکر در 596 ارسال )
ارسال: #7
RE: مدار ساعت با خاصیت لجوج بودن
http://www.iranled.com/article93.html

لینک عوض شد :
http://www.iranled.com/node/75

وبلاگ من : Azarrobot.blogfa.com

ISAplast.ir
(آخرین ویرایش در این ارسال: ۲۴-آبان-۱۳۸۸, ۰۰:۲۸:۴۵، توسط t3r!p3000.)
۲۰-خرداد-۱۳۸۸, ۱۵:۱۹:۰۰
ارسال‌ها
پاسخ
تشکر شده توسط : t3r!p3000
reyha آفلاین
تازه وارد

ارسال‌ها: 16
موضوع‌ها: 2
تاریخ عضویت: اردیبهشت ۱۳۸۹

تشکرها : 18
( 4 تشکر در 3 ارسال )
ارسال: #8
RE: ساعت با تايمر لجوج ، ترموستات و نمايش تاريخ شمسي با AVR
با سلام خدمت مهندس عزیز . اول لازمه که از مداری که واسمون تهیه کردید تشکر کنم .
من این مدار رو روی برد برد ساختم و واسم خیلی جالب بود که هم ساعت و هم تاریخ و هم دما رونشون میده . ولی من یه مشکلی با این مدارتون پیدا کردم و اون اینه که تا زمانی که دستم رو روی کریستال ساعت نذارم ثانیه شمار ساعت کار نمیکنه . یعنی وقتی دستم رو از روی کریستال برمیدارم ساعت از کار میافته و دما هم ناپدید میشه . ولی به محض اینکه دستم رو روی کریستال ساعت میذارم ساعت حالت عادی به خودش میگیره و درست عمل میکنه . البته لازم به ذکره که من بیزر رو بهش متصل نکردم و حتی رله هم بهش وصل نکردم یعنی از پایه های 20 . 21 . 1.2.3.4.استفاده نکردم که فکر نمیکنم مشکلم از اینا باشه . شاید مشکلم از فیوزبیتهام باشه . لطفا راهنماییم کنید .
۱۴-آبان-۱۳۸۹, ۱۴:۲۱:۱۰
ارسال‌ها
پاسخ
t3r!p3000 آفلاین
         
*****

ارسال‌ها: 5,050
موضوع‌ها: 83
تاریخ عضویت: اردیبهشت ۱۳۸۵

تشکرها : 34447
( 17423 تشکر در 5116 ارسال )
ارسال: #9
RE: ساعت با تايمر لجوج ، ترموستات و نمايش تاريخ شمسي با AVR
خوب مهندس کریستال ساعت شما خرابه !!!

کرستال ساعت رو عوض کنین مشکل حل میشه !
موقع لحیم کردن هم زیاد داغش نکنین چون یه خورده حساسه !!!


البته برد رو هم یه تمیز بکنید !
چون اگه برد هم کثیف باشه چنین مشکلی پیش میاد !!!


در ضمن دما ناپدید نمیشه !
بلکه سنس نمی کنه !!!


یادش بخیر اولین برنامه ای نوشتم که منو بندی چشمک زن و تقریبا یوزر فرندلی داشت همین بود ! ( سال 85 )
(آخرین ویرایش در این ارسال: ۱۵-آبان-۱۳۸۹, ۰۲:۵۵:۱۵، توسط t3r!p3000.)
۱۴-آبان-۱۳۸۹, ۱۵:۲۴:۵۴
ارسال‌ها
پاسخ
reyha آفلاین
تازه وارد

ارسال‌ها: 16
موضوع‌ها: 2
تاریخ عضویت: اردیبهشت ۱۳۸۹

تشکرها : 18
( 4 تشکر در 3 ارسال )
ارسال: #10
RE: ساعت با تايمر لجوج ، ترموستات و نمايش تاريخ شمسي با AVR
ممنونم کریستالشو تعویض کردم مشکلم بر طرف شد .
۱۵-آبان-۱۳۸۹, ۱۷:۰۴:۵۵
ارسال‌ها
پاسخ


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  مدار دور موتور خودرو HPower 15 8,332 ۲۷-آبان-۱۳۹۷, ۲۱:۵۱:۱۷
آخرین ارسال: 1نفر
  درخواست کمک برای ساعت با فونت بزرگ sobhan6831 4 2,400 ۲۴-فروردین-۱۳۹۷, ۲۰:۱۹:۱۲
آخرین ارسال: sobhan6831
  دانلود رایگان سورس ساعت حرم امام رضا (ع) ورژن 2 sina6479 3 5,371 ۲۶-اسفند-۱۳۹۶, ۲۲:۱۹:۴۴
آخرین ارسال: sajjad85
  ساخت تابلو روان و ساعت هوایی گردون یا همون Propeller Clock با موتور فن !!! t3r!p3000 85 91,068 ۲۲-شهریور-۱۳۹۵, ۲۱:۴۴:۳۸
آخرین ارسال: taherehselseleh
  [سوال] بهترین مدار برای آشکارسازی عبور از صفر hamze_b 9 7,424 ۰۸-مرداد-۱۳۹۵, ۲۲:۴۳:۴۹
آخرین ارسال: alimogmov
  [سوال] مشکل در لینک دادن مدار فرمان آردوینویی به مدار قدرت biner 2 2,578 ۲۹-فروردین-۱۳۹۵, ۱۱:۰۱:۴۳
آخرین ارسال: biner
  سوال در مورد ساخت ساعت با ال سي دي navayi 5 4,744 ۱۲-اسفند-۱۳۹۴, ۱۲:۱۷:۱۰
آخرین ارسال: 1نفر
Smile آموزش جامع طراحی و ساخت PCB (برد مدار چاپی) k1_elo0 13 22,556 ۰۸-اسفند-۱۳۹۴, ۱۴:۲۰:۰۶
آخرین ارسال: sadegh_54
  کریستال خارجی+کریستال ساعت در atmega8 cortex-m3 1 2,967 ۰۳-مرداد-۱۳۹۴, ۲۰:۱۳:۰۳
آخرین ارسال: sharin
  درخواست راهنمایی برای مدار آمپلی فایر sinastar 1 3,786 ۰۸-تير-۱۳۹۴, ۰۹:۰۵:۲۱
آخرین ارسال: Ambassador

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS