اطلاعیه

Collapse
No announcement yet.

الگوریتم ساخت منو برای مقدار دهی به متغییرها

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

    الگوریتم ساخت منو برای مقدار دهی به متغییرها

    دوستان من برای پروژه ام نیاز دارم یه منو داشته باشم تا متغییر ها رو مقدار بدم ،خوب باید منو ساخته بشه ، حالا نمیدونم باید از چه الگوریتمی برای ساخت منو استفاده کنم تا به راحتی در اون حرکت کنم ، و روی ال سی دی هم به خوبی نشون داده بشه ،کسی تجربه ی ساخت منو رو داره یه لطف کنه راهنمایی بکنه ، که ما باید چیکار کنیم از چه دستوراتی استفاده کنیم تا کمترین کد نویسی رو هم داشته باشیم!!!!


    با تشکر .
    به سمت نور خورشيد حرکت کن،تو ميتوني تابش خورشيد رو حس کني ،حتي اگه کور باشي.
    (پيش به سوي هدف)

    #2
    پاسخ : الگوریتم ساخت منو برای مقدار دهی به متغییرها

    سلام
    این تاپیک شاید بتونه کمکتون کنه:
    با سلام، این یک پروژه کامل ساعت با منو هستش که در کدویژن و WinAVR کامپایل و تست شده! فایل های هگز مربوطه طبق معمول در پوشه Prepared HEX قرارداده شده اند. هدف از این پروژه، آموزش استفاده از DS1307 و ایجاد منوهای حرفه ای برای LCD های گرافیکی هستش! امیدوارم که خوشتون بیاد :mrgreen: در این پروژه، آخرین نسخه های کتابخونه هام رو

    دیدگاه


      #3
      پاسخ : الگوریتم ساخت منو برای مقدار دهی به متغییرها

      یه ماشین وضعیت ساده مثلا با Switch Case ایجاد میکنی و باهاش منو میسازی.

      دیدگاه


        #4
        پاسخ : الگوریتم ساخت منو برای مقدار دهی به متغییرها+مکمل

        نوشته اصلی توسط روح الامین نمایش پست ها
        یه ماشین وضعیت ساده مثلا با Switch Case ایجاد میکنی و باهاش منو میسازی.
        و مقدار زیادی حوصله و وقت
        .
        .
        اگه برای پروژت وقت بزاری_کار خیلی تر و تمیزی در میاد____اگه هم ممکنه براتون، اگر خروجی موفقیت امیزی داشت بزارید اینجا که بقیه هم بتونن استفاده کنند

        دیدگاه


          #5
          پاسخ : الگوریتم ساخت منو برای مقدار دهی به متغییرها

          من منظور از ماشین وضعیت نمیدونم چیه !!!!! میشه یخورده بگی چه روشیه این!!!!
          البته یه جای دیگه با switch case کار کردم ، که یخورده طولانی شده بود case ها ، تو فراخانی آخرین case تقریبا اشتباه میکرد. برای همین من تو بسکام اعتمادم و به switch case از دست دادم ،

          باشه کد بسکام و میزارم اگه بدردتون خورد ازش استفاده کنید ، منو رو ساختم با if تو بسکام.


          ممنون دوستان.
          به سمت نور خورشيد حرکت کن،تو ميتوني تابش خورشيد رو حس کني ،حتي اگه کور باشي.
          (پيش به سوي هدف)

          دیدگاه


            #6
            پاسخ : الگوریتم ساخت منو برای مقدار دهی به متغییرها

            نوشته اصلی توسط hosseinam نمایش پست ها
            من منظور از ماشین وضعیت نمیدونم چیه !!!!! میشه یخورده بگی چه روشیه این!!!!
            البته یه جای دیگه با switch case کار کردم ، که یخورده طولانی شده بود case ها ، تو فراخانی آخرین case تقریبا اشتباه میکرد. برای همین من تو بسکام اعتمادم و به switch case از دست دادم ،

            باشه کد بسکام و میزارم اگه بدردتون خورد ازش استفاده کنید ، منو رو ساختم با if تو بسکام.


            ممنون دوستان.
            مطمئن باشید اشتباه از طرف شما بوده...اگر دو شرط از یک سوئیچ با هم اشتراک داشته باشند اولین کیس اجرا میشه و دومی بدون اجرا باقی می مونه...
            تولید کننده تجهیزات برنامه پذیر اتوماسیون صنعتی

            www.intelart.ir


            ساخت کنترلر دما PID فازي با AVR [آموزشی]

            دیدگاه


              #7
              پاسخ : الگوریتم ساخت منو برای مقدار دهی به متغییرها

              نوشته اصلی توسط Mahdi.Faani نمایش پست ها
              مطمئن باشید اشتباه از طرف شما بوده...اگر دو شرط از یک سوئیچ با هم اشتراک داشته باشند اولین کیس اجرا میشه و دومی بدون اجرا باقی می مونه...
              نه داستان این بود که ، من عددی که مربوط به case بود رو از آرگومان تابع میگرفتم و میدادم به case < ,
              مثلا یه تابع بود به اسمه showinfo() هرجا نیاز داشتم تو کد ، تابع رو فراخانی میکردم به همراه کد مورد نظر ، و داخل تابع طبق همون کد ، یه سری اطلاعات بر روی ال سی دی میزاشتم ، که بعضی اوقات نشون نمیداد ، بعضی اوقات نشون میداد ، بدونه اینکه تغییری تو کد داده باشم ، برای همین کلا بیخیال شدم .با if else مینویسم .


              مقدار زیادی حوصله و وقت
              .
              .
              اگه برای پروژت وقت بزاری_کار خیلی تر و تمیزی در میاد____اگه هم ممکنه براتون، اگر خروجی موفقیت امیزی داشت بزارید اینجا که بقیه هم بتونن استفاده کنند
              دوسته عزیز این منو به کد چسبیده و بسکام هم هست ، ببین بدردتون میخوره ، کار منو که راه انداخت خروجی خوبی هم به قولتون داده ،
              کد:
              Sub Submenu
              Cls
              Lcd "Enter password:"
              Call Setpassword(0)
              If Password = Password1 Then
              
                 Do                             'dar in halqe tanzimate marbote neveshte khahad shod
                    Debounce Keyup , 0 , Subkeyup , Sub
                    Debounce Keydown , 0 , Subkeydown , Sub
                    Debounce Enter , 0 , Subkeyenter , Sub
                    If Flagkeyup = 1 Then
                       Flagkeyup = 0
                       Incr Menuvalue
                    Elseif Flagkeydown = 1 Then
                       Flagkeydown = 0
                       Decr Menuvalue
                    Elseif Flagkeyenter = 1 Then
                       Flagkeyenter = 0
                       Flagenter = 1
                    End If
              
                    If Menuvalue = 255 Then Menuvalue = 0
              
                    If Menuvalue = 0 Then
                      Cls
                      Lcd "1:Park floor"
              
                      Do
                       Debounce Keyup , 0 , Subkeyup , Sub
                       Debounce Keydown , 0 , Subkeydown , Sub
                       Debounce Enter , 0 , Subkeyenter , Sub
                       If Flagkeyup = 1 Then
                        Flagkeyup = 0
                        Incr Menuvalue
                        Exit Do
                       Elseif Flagkeydown = 1 Then
                        Flagkeydown = 0
                        Decr Menuvalue
                        Exit Do
                       Elseif Flagkeyenter = 1 Then
                        Flagkeyenter = 0
                        Flagenter = 1
                        Exit Do
                       End If
                      Loop
              
                      If Flagenter = 1 Then
                        Flagenter = 0
                        Gosub Subparkfloor
                      End If
              
              
                    Elseif Menuvalue = 1 Then
                      Cls
                      Lcd "2:park Time"
              
                      Do
                       Debounce Keyup , 0 , Subkeyup , Sub
                       Debounce Keydown , 0 , Subkeydown , Sub
                       Debounce Enter , 0 , Subkeyenter , Sub
                       If Flagkeyup = 1 Then
                        Flagkeyup = 0
                        Incr Menuvalue
                        Exit Do
                       Elseif Flagkeydown = 1 Then
                        Flagkeydown = 0
                        Decr Menuvalue
                        Exit Do
                       Elseif Flagkeyenter = 1 Then
                        Flagkeyenter = 0
                        Flagenter = 1
                        Exit Do
                       End If
                      Loop
              
                      If Flagenter = 1 Then
                        Flagenter = 0
                        Gosub Subtimegopark
                      End If
              
              
                    Elseif Menuvalue = 2 Then
                       Cls
                       Lcd "3:lamp Time off"
              
                       Do
                       Debounce Keyup , 0 , Subkeyup , Sub
                       Debounce Keydown , 0 , Subkeydown , Sub
                       Debounce Enter , 0 , Subkeyenter , Sub
                       If Flagkeyup = 1 Then
                        Flagkeyup = 0
                        Incr Menuvalue
                        Exit Do
                       Elseif Flagkeydown = 1 Then
                        Flagkeydown = 0
                        Decr Menuvalue
                        Exit Do
                       Elseif Flagkeyenter = 1 Then
                        Flagkeyenter = 0
                        Flagenter = 1
                        Exit Do
                       End If
                      Loop
              
                       If Flagenter = 1 Then
                          Flagenter = 0
                          Gosub Subtimelightoff
                       End If
                    Elseif Menuvalue = 3 Then
                       Cls
                       Lcd "4:pump Delay Off"
              
                       Do
                       Debounce Keyup , 0 , Subkeyup , Sub
                       Debounce Keydown , 0 , Subkeydown , Sub
                       Debounce Enter , 0 , Subkeyenter , Sub
                       If Flagkeyup = 1 Then
                        Flagkeyup = 0
                        Incr Menuvalue
                        Exit Do
                       Elseif Flagkeydown = 1 Then
                        Flagkeydown = 0
                        Decr Menuvalue
                        Exit Do
                       Elseif Flagkeyenter = 1 Then
                        Flagkeyenter = 0
                        Flagenter = 1
                        Exit Do
                       End If
                      Loop
              
                       If Flagenter = 1 Then
                          Flagenter = 0
                          Gosub Subpumpdelayoff
                       End If
              
                    Elseif Menuvalue = 4 Then
                       Cls
                       Lcd "5:start counter"
                       Do
                       Debounce Keyup , 0 , Subkeyup , Sub
                       Debounce Keydown , 0 , Subkeydown , Sub
                       Debounce Enter , 0 , Subkeyenter , Sub
                       If Flagkeyup = 1 Then
                        Flagkeyup = 0
                        Incr Menuvalue
                        Exit Do
                       Elseif Flagkeydown = 1 Then
                        Flagkeydown = 0
                        Decr Menuvalue
                        Exit Do
                       Elseif Flagkeyenter = 1 Then
                        Flagkeyenter = 0
                        Flagenter = 1
                        Exit Do
                       End If
                      Loop
                       If Flagenter = 1 Then
                          Flagenter = 0
                          Gosub Subcountstart
                       End If
              
              
                    Elseif Menuvalue = 5 Then
                       Cls
                       Lcd "6:ChangePassword"
              
                       Do
                       Debounce Keyup , 0 , Subkeyup , Sub
                       Debounce Keydown , 0 , Subkeydown , Sub
                       Debounce Enter , 0 , Subkeyenter , Sub
                       If Flagkeyup = 1 Then
                        Flagkeyup = 0
                        Incr Menuvalue
                        Exit Do
                       Elseif Flagkeydown = 1 Then
                        Flagkeydown = 0
                        Decr Menuvalue
                        Exit Do
                       Elseif Flagkeyenter = 1 Then
                        Flagkeyenter = 0
                        Flagenter = 1
                        Exit Do
                       End If
                      Loop
              
                       If Flagenter = 1 Then
                          Flagenter = 0
                          Gosub Subchangepassword
                       End If
                    End If
              
                    If Menuvalue = 6 Then Menuvalue = 5                   'baraye inke az tedad menu tajavoz nakone
              
              
                 Loop
              Else
                 Cls
                 Lcd "wrong password"
                 Pas1 = 0
                 Pas2 = 0
                 Pas3 = 0
                 Pas4 = 0
              
                 Do
                  Debounce Enter , 0 , Subkeyenter , Sub
                  Debounce Menu , 0 , Subkeymenu , Sub
                  If Flagkeyenter = 1 Then
                   Flagkeyenter = 0
                   Gosub Submenu
                  Elseif Flagkeymenu = 1 Then
                   Flagkeymenu = 0
                   Gosub Submenu
                  End If
                 Loop
              
              End If
              End Sub
              به سمت نور خورشيد حرکت کن،تو ميتوني تابش خورشيد رو حس کني ،حتي اگه کور باشي.
              (پيش به سوي هدف)

              دیدگاه


                #8
                پاسخ : الگوریتم ساخت منو برای مقدار دهی به متغییرها

                میشه منبع معرفی کنید من میخوام منونویسی کنم

                دیدگاه


                  #9
                  پاسخ : الگوریتم ساخت منو برای مقدار دهی به متغییرها

                  اینترنت پر از مطلب درباره ماشین وضعیت هستش. خصوصا با Switch case مثلا:


                  دیدگاه


                    #10
                    پاسخ : الگوریتم ساخت منو برای مقدار دهی به متغییرها

                    نوشته اصلی توسط hosseinam نمایش پست ها
                    دوستان من برای پروژه ام نیاز دارم یه منو داشته باشم تا متغییر ها رو مقدار بدم ،خوب باید منو ساخته بشه ، حالا نمیدونم باید از چه الگوریتمی برای ساخت منو استفاده کنم تا به راحتی در اون حرکت کنم ، و روی ال سی دی هم به خوبی نشون داده بشه ،کسی تجربه ی ساخت منو رو داره یه لطف کنه راهنمایی بکنه ، که ما باید چیکار کنیم از چه دستوراتی استفاده کنیم تا کمترین کد نویسی رو هم داشته باشیم!!!!


                    با تشکر .
                    برای ساخت منو صد در صد از Staste machin باید استفاده کنید ، در غیر اینصورت برای اضافه و کم کردن سربرگ ها و زیر برگ ها دچار مکل میشید و همچنین PC برنامه مدام در حلقه های بی اصول گیر میوفته / با بسکام نمیدانم اما بهترین سورس همینی هست که جناب نوربخش زحمتشو کشیدند . با بهترین اصول نوشته شده .
                    Reveng will surely come... Your hard time are ahead
                    // - - - - - - - - - -
                    برگه های کتاب به منزله بالهایی هستند که روح ما را به عالم نور و روشنایی پرواز میآ*دهند. فرانسوا ولتر
                    // - - - - - - - - - -
                    اگر برای هرچیزی به غیر از علاقه ی شدیدتان به الکترونیک تلاش کنید ، خیلی دور نخواهید رفت / خیلی هم خوب نخواهید شد.
                    // - - - - - - - - - -

                    دیدگاه

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