اطلاعیه

Collapse
No announcement yet.

ایجادمنو و زیر منو با avr

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    ایجادمنو و زیر منو با avr

    سلام دوستان من دنبال یک برنامه هستم که با avr به زبان بیسیک نوشته شده باشه و توی اون یک منو تعریف کنه که وارد زیر منو بشه و بتونم داخل زیر منو یک کارهای کنترلی رو تعریف کنم یعنی میخوام مثلا توی صفحه اول مثلا بنویسم اگه قرار تنظیم ساعت انجام بشه بره به زیر منو یک اگه قراره تنظیم دما صورت بگیره بره به زیر منو 2 اگه قراره تنظیم مثلا ... بره توی زیر منو سه ( حتما هم میخوام توی زیر منوها قابلیت تغییر وجود داشته باشه ) - ممنون میشم اگه کسی نمونه کار کرده برام بذار یا راهنمایی کنه

    #2
    پاسخ : ایجادمنو و زیر منو با avr

    این یک نمونه برنامه که من برای راه اندازی موتور نوشتم .
    کد:
      $regfile = "m8def.dat"
      $crystal = 8000000
    
      Config Lcdpin = Pin , Db4 = Portc.2 , Db5 = Portc.3 , Db6 = Portc.4 , Db7 = Portc.5 , E = Portc.1 , Rs = Portc.0
    
      Config Lcd = 16 * 2
      Cursor off
    
      Dim I As Byte
      Dim A As Byte
      Dim B As Byte
      Dim C As Byte
      Dim D As Byte
      Dim E As Byte
    
      Ddrb.0 = 0 : Portb.0 = 1
      Ddrb.1 = 0 : Portb.1 = 1
      Ddrb.2 = 0 : Portb.2 = 1
      Ddrb.3 = 0 : Portb.3 = 1
      Ddrb.4 = 0 : Portb.4 = 1
      Ddrb.5 = 0 : Portb.5 = 1
      Ddrb.6 = 0 : Portb.6 = 1
      Ddrb.7 = 0 : Portb.7 = 1
    
      Config Pind.0 = Output
      Config Pind.1 = Output
      Config Pind.2 = Output
    
      Declare Sub A1
      Declare Sub A2
      Declare Sub A3
      Declare Sub A4
      Declare Sub A5
      Declare Sub A6
      Declare Sub A7
      Declare Sub A8
      Declare Sub A9
      Declare Sub A10
      Declare Sub A11
      Declare Sub A12
      Declare Sub A13
      Declare Sub A14
      Declare Sub A15
      Declare Sub A16
      Declare Sub A17
      Declare Sub A18
      Declare Sub A19
      Declare Sub A20
      Declare Sub A21
      Declare Sub A22
    
      Config Debounce = 30
    
      Cls
      Lcd "  H E L L O  "
      Wait 1
      Cls
      Lcd "NASER "
      Wait 1
      Lowerline
      For I = 1 To 17
      Lcd "~"
      Waitms 100
      Next I
      Cls
    
      Lcd " See Direction? "
      Lowerline
      Lcd "Y=Right / N=left"
    Do
       Debounce Pinb.5 , 0 , A1
       Debounce Pinb.4 , 0 , A2
    Loop
    
    Main:
      Reset Portd.1
      Waitms 100
      Reset Portd.2
      Waitms 100
    
      Cls
      Lcd "T1=" ; A ; ":" ; B ; " T2=" ; C
      Lowerline
      Lcd "T3=" ; D ; ":" ; E
    Do
      Debounce Pinb.1 , 0 , A4
    Loop
    
    Main1:
    Cls
    Do
       Debounce Pinb.2 , 0 , A5
       Debounce Pinb.3 , 0 , A6
       Debounce Pinb.5 , 0 , A7
    
      Lcd " TIME TO START? "
      Lowerline
      Lcd "T1=>(" ; A ; ":" ; B ; ") NEXT "
    Loop
    
    Main2:
    Cls
    Do
       Debounce Pinb.2 , 0 , A8
       Debounce Pinb.3 , 0 , A9
       Debounce Pinb.4 , 0 , A10
       Debounce Pinb.1 , 0 , A11
    
      Lcd " TIME TO START? "
      Lowerline
      Lcd "T1=>(" ; A ; ":" ; B ; ") NEXT "
    Loop
    
    Main3:
    Cls
    Do
       Debounce Pinb.2 , 0 , A12
       Debounce Pinb.3 , 0 , A13
       Debounce Pinb.1 , 0 , A14
    
      Lcd "SET CHANCHE TIME"
      Lowerline
      Lcd "T2=>(" ; C ; ")  NEXT "
    Loop
    
    Main4:
    Cls
    Do
       Debounce Pinb.2 , 0 , A15
       Debounce Pinb.3 , 0 , A16
       Debounce Pinb.5 , 0 , A17
    
      Lcd " SET WORK TIME? "
      Lowerline
      Lcd "T3=>(" ; D ; ":" ; E ; ") NEXT "
    Loop
    
    Main5:
    Cls
    Do
       Debounce Pinb.2 , 0 , A18
       Debounce Pinb.3 , 0 , A19
       Debounce Pinb.4 , 0 , A20
       Debounce Pinb.6 , 0 , A21
       Debounce Pinb.7 , 0 , A22
    
      Lcd " SET WORK TIME? "
      Lowerline
      Lcd "T3=>(" ; D ; ":" ; E ; ") NEXT "
    Loop
    
    Main6:
    
    
    Cls
      Lcd "T1=" ; A ; ":" ; B ; " T2=" ; C
      Lowerline
      Lcd "T3=" ; D ; ":" ; E
    M1:
      If B > 0 Then
      Decr B
      Cls
      Lcd "T1=" ; A ; ":" ; B ; " T2=" ; C
      Lowerline
      Lcd "T3=" ; D ; ":" ; E
      Wait 59
      Goto M1
      Else
      B = 59
      End If
      If A > 0 Then
      Decr A
      Cls
      Lcd "T1=" ; A ; ":" ; B ; " T2=" ; C
      Lowerline
      Lcd "T3=" ; D ; ":" ; E
      Goto M1
      Else
      B = 0
      Goto M2
      End If
    
    M2:
      Cls
      Lcd "T1=" ; A ; ":" ; B ; " T2=" ; C
      Lowerline
      Lcd "T3=" ; D ; ":" ; E
      Set Portd.1
      If C > 0 Then
      Decr C
      Cls
      Lcd "T1=" ; A ; ":" ; B ; " T2=" ; C
      Lowerline
      Lcd "T3=" ; D ; ":" ; E
      Wait 59
      Goto M2
      Else
      Goto M3
      End If
    M3:
      Reset Portd.1
      Waitms 500
      Set Portd.2
      Waitms 500
      Set Portd.1
      Goto M4
    M4:
      If E > 0 Then
      Decr E
      Cls
      Lcd "T1=" ; A ; ":" ; B ; " T2=" ; C
      Lowerline
      Lcd "T3=" ; D ; ":" ; E
      Wait 59
      Goto M4
      Else
      E = 59
      End If
      If D > 0 Then
      Decr D
      Cls
      Lcd "T1=" ; A ; ":" ; B ; " T2=" ; C
      Lowerline
      Lcd "T3=" ; D ; ":" ; E
      Goto M4
      Else
      E = 0
      Reset Portd.1
      Waitms 100
      Reset Portd.2
      Goto Main
      End If
    
      Reset Portd.1
      Reset Portd.2
    
    End                             'end program
    
    Sub A1:
      Cls
      Lcd " MOTOR STARTING "
      Set Portd.1
      Wait 7
      Reset Portd.1
      Cls
      Lcd " MOTOR STOPING! "
      Wait 1
      Cls
      Lcd "Change Direction"
      Lowerline
      Lcd "keep key 2second"
      Wait 5
      Debounce Pinb.0 , 0 , A3
      Goto Main
    End Sub A1
    
    Sub A2:
      Goto Main
    End Sub A2
    
    Sub A3:
      Cls
      Toggle Portd.0
      Lcd "Toggle Direction"
      Wait 1
      Cls
      Goto Main
    End Sub A3
    
    Sub A4:
      Goto Main1
    End Sub A4
    
    Sub A5:
      If A < 99 Then
      Incr A
      Else
      A = 0
      End If
      Goto Main1
    End Sub A5
    
    Sub A6:
      If A > 0 Then Decr A
      Goto Main1
    End Sub A6
    
    
    Sub A7:
      Goto Main2
    End Sub A7
    
    Sub A8:
     If B < 59 Then
      Incr B
      Else
      B = 0
      End If
      Goto Main2
    End Sub A8
    
    Sub A9:
      If B > 0 Then Decr B
      Goto Main2
    End Sub A9
    
    Sub A10:
      Goto Main1
    End Sub A10
    
    Sub A11:
      Goto Main3
    End Sub A11
    
    Sub A12:
      If C < 55 Then
      Incr C
      Else
      C = 0
      End If
      Goto Main3
    End Sub A12
    
    Sub A13:
      If C > 0 Then Decr C
      Goto Main3
    End Sub A13
    
    Sub A14:
      Goto Main4
    End Sub A14
    
    Sub A15:
      If D < 99 Then
      Incr D
      Else
      D = 0
      End If
      Goto Main4
    End Sub A15
    
    Sub A16:
      If D > 0 Then Decr D
      Goto Main4
    End Sub A16
    
    Sub A17:
      Goto Main5
    End Sub A17
    
    Sub A18:
     If E < 59 Then
      Incr E
      Else
      E = 0
      End If
      Goto Main5
    End Sub A18
    
    Sub A19:
      If E > 0 Then Decr E
      Goto Main5
    End Sub A19
    
    Sub A20:
      Goto Main4
    End Sub A20
    
    Sub A21:
      Goto Main6
    End Sub A21
    
    Sub A22:
      Return
    End Sub A22
    برنامه به این صورت هست که ابتدا اسم و مشخصات نوشته میشه و بعد مثل یک عمل لودینگ یه فلش زیرش تا ته پر میشه
    و وارد برنامه میشه اول می پرسه می خوای جهت گردش موتور رو ببینی ؟ بعد اگه بله زده بشه موتور به مدت 10 ثانیه کار می کنه اگه خواستی جهت رو عوض کنی کلید مربوطه رو نگه می داری و اگر نه دکمه بعدی رو میزنی سپس با چند کلید می تونی اطلاعات مربوط به مدت زمان شروع کار و سایر زمانها رو معرفی کنی و در آخر هم با زدن دکمه استارت مدار وارد اجرای برنامه میشه

    sigpic

    دیدگاه


      #3
      پاسخ : ایجادمنو و زیر منو با avr

      دوستان عزیز کاربر avr 68 , اقا ناصر ممنون از لطفتون که پاسخگو بودید - نه 68 AVRعزیز قصد من استفاده از محیط گرافیکی نیست بلکه میخوام توی صفحه اول مثل اون چیزی که اقا ناصر اشاره کردن حالات مختلف وجود دااشته باشه مثلا وقتی کلید یک رو میزنم برم وارد تنظیمات مربوط به یک بشم و همین طور الی اخر - اقا ناصر برنامه شما رو برداشتم اجازه بدید تست کنم ببینم اون چیزی که میخوام توی برنامه لحاظ شده ولی ازتون ممنون فکر کنم همون چییزیه که میخوام اما ایکاش فایل پروتئوس اونو هم زحمتشو میکشید ید از لینک دوچرخه هم که گذاشته بودید ممنونم

      دیدگاه


        #4
        پاسخ : ایجادمنو و زیر منو با avr

        سلام در این پروژه منو به طور کامل نوشته و اجرا شده علاوه بر اون امکانات دیگری هم داره که بهتره خودت بری و ببینی
        ببین به کارت میاد
        http://wle.ir/forum/showthread.php?tid=637&pid=6955#pid6955
        روزی که درک کردیم همه چیز به خدا تعلق دارد . آن روز .روز طلوع دانش است

        دیدگاه


          #5
          پاسخ : ایجادمنو و زیر منو با avr

          این هم فایل برنامه و کل مدار : :bye
          http://uplod.ir/7m2phi0rmvph/S.M_Naser_.rar.htm
          S.M Naser .rar - 44 KB

          sigpic

          دیدگاه


            #6
            پاسخ : ایجادمنو و زیر منو با avr

            جعفر اقا و اقا ناصر ازتون ممنون - اقاناصر من برنامه شما رو تست کردم بله منم میخوام یک کار مشابه شمارو روی پروزه ام انجام بدم از اینکه لطف کردید متشکر م

            دیدگاه


              #7
              پاسخ : ایجادمنو و زیر منو با avr

              سلام
              بیخبرمون نزار
              در کل میتونم بگم ایجاد منو برای یه مدار کاری نیست که بشه بصورت حاضری در برنامه اضافه کرد و 99 درصد باید ابتکاری باشه
              روزی که درک کردیم همه چیز به خدا تعلق دارد . آن روز .روز طلوع دانش است

              دیدگاه


                #8
                پاسخ : ایجادمنو و زیر منو با avr

                نوشته اصلی توسط جعفر رضائی
                سلام در این پروژه منو به طور کامل نوشته و اجرا شده علاوه بر اون امکانات دیگری هم داره که بهتره خودت بری و ببینی
                ببین به کارت میاد
                http://wle.ir/forum/showthread.php?tid=637&pid=6955#pid6955
                با سلام این پروژه پولی بود درسته؟

                دیدگاه


                  #9
                  پاسخ : ایجادمنو و زیر منو با avr

                  بله
                  روزی که درک کردیم همه چیز به خدا تعلق دارد . آن روز .روز طلوع دانش است

                  دیدگاه


                    #10
                    پاسخ : ایجادمنو و زیر منو با avr

                    این مطلب رو برای دوستانی که بعدا مراجعه میکنن قراردادم تا بتونن براحتی به خواسته شون برسن - برنامه هایی که اقا ناصر قرار دادن خیلی راهنما وکاربردی هست من با کمک این برنامه ها تونستم به خواسته ام که نوشتن برنامه به زیر منو بود برسم بازهم با تشکر از همه کسانی که توی این تاپیک کمک کردن مخصوصا اقا ناصر

                    دیدگاه

                    لطفا صبر کنید...
                    X