اطلاعیه

Collapse
No announcement yet.

انجام 2 تا کار با یک کلید .باید از چه دستورهایی استفاده کنم؟

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

    انجام 2 تا کار با یک کلید .باید از چه دستورهایی استفاده کنم؟

    سلام .من میخام با یه کلید که بار اول زدم یه led روشن بشه و اگه همونو چند ثانیه نگه داشته باشم یه led دیگه.
    دقت کنید دستمو ول نکنم یا اگه کلید رو زدم یه led و اگه همونو فشار داده داشته باشم چند ثانیه (led اول هیچ عکسالعملی انجام نده)led دوم روشن بشه.
    من با بسکام کار میکنم.اگه یه راهنمایی هم کنید ممنون میشم. :nerd:
    به سمت نور خورشيد حرکت کن،تو ميتوني تابش خورشيد رو حس کني ،حتي اگه کور باشي.
    (پيش به سوي هدف)

    #2
    پاسخ : انجام 2 تا کار با یک کلید .باید از چه دستورهایی استفاده کنم؟

    با استفاده از تایمر به راحتی میتونید این کار رو انحام بدید.
    از جمله ی رفتگان این راه دراز
    باز آمده ای کو که به ما گوید راز
    هان بر سر این دو راهه از روی نیاز
    چیزی نگذاری که نمی آیی باز

    دیدگاه


      #3
      پاسخ : انجام 2 تا کار با یک کلید .باید از چه دستورهایی استفاده کنم؟

      نوشته اصلی توسط mori64
      با استفاده از تایمر به راحتی میتونید این کار رو انحام بدید.
      یه نمونه برنامه ساده داری بذاری؟ یا همینی که دوستمون گفتند رو میتونید شبیه سازی کنید بذارید؟ ممنون
      در جهان هرگز مشو مدیون احساس کسی - تا نباشد رایگان مهرت گروگان کسی
      گوهر خود را نزن بر سنگ هر ناقابلی - صبر کن پیدا شود گوهر شناس قابلی

      دیدگاه


        #4
        پاسخ : انجام 2 تا کار با یک کلید .باید از چه دستورهایی استفاده کنم؟

        برای قسمت اول که فکر نکنم مشکلی داشته باشی شما میتونید با فشردن کلید led رو روشن کنید برای قسمت دوم هم میتونید یک تایمر تعریف کنید بعد تو اون تایم مربوطه به وضعیت فشرده شدن یا عدم فشردن اون نگاه کنید و هر عمل کنترلی که مد نظرتون هست رو انجام بدید

        دیدگاه


          #5
          پاسخ : انجام 2 تا کار با یک کلید .باید از چه دستورهایی استفاده کنم؟

          نوشته اصلی توسط hosseinam1370
          سلام .من میخام با یه کلید که بار اول زدم یه led روشن بشه و اگه همونو چند ثانیه نگه داشته باشم یه led دیگه.
          دقت کنید دستمو ول نکنم یا اگه کلید رو زدم یه led و اگه همونو فشار داده داشته باشم چند ثانیه (led اول هیچ عکسالعملی انجام نده)led دوم روشن بشه.
          من با بسکام کار میکنم.اگه یه راهنمایی هم کنید ممنون میشم. :nerd:
          بیا داداش این واسه 1 ثانیه،خودت تغییر بده

          l1:
          if pinx.x=0 then goto l1

          if pinx.x=1 then
          set portx.x ' led 1
          end if

          for a = 0 to 100
          if pinx.x=0 then goto l1
          waitms 10
          next
          set portx.y 'led 2
          انحصار طلبي علمي در دنياي امروز جايگاهي ندارد،بياييد تا دانسته هاي خود را هرچند اندک؛با ديگران به اشتراک بگذاريم...
          فرهنگ و تمدن بي همتاي ايرانيان به سبب حمله ي وحشيانه مغولان نابود شد،امروز نوبت من و توست که با انتشار دانسته هاي خود ايران را به جايگاه بي همتاي گذشته باز گردانيم.

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

          دیدگاه


            #6
            پاسخ : انجام 2 تا کار با یک کلید .باید از چه دستورهایی استفاده کنم؟

            شاید هنوز هم ترفند های دیگه ای وجود داشته باشه ولی موضوعی که هست این مربوطه به توان کدنویسی شما میرسه.
            شما باید بیشتر تمرین بگیرید و باهاش ور برید(تو نت تا دلت بخواد هست). توی این پرسش شما هم فکر کنم با یک یا دو متغییر bit بتونید کارتون رو راه بندازید.

            دیدگاه


              #7
              پاسخ : انجام 2 تا کار با یک کلید .باید از چه دستورهایی استفاده کنم؟

              نوشته اصلی توسط rozeh
              شاید هنوز هم ترفند های دیگه ای وجود داشته باشه ولی موضوعی که هست این مربوطه به توان کدنویسی شما میرسه.
              شما باید بیشتر تمرین بگیرید و باهاش ور برید(تو نت تا دلت بخواد هست). توی این پرسش شما هم فکر کنم با یک یا دو متغییر bit بتونید کارتون رو راه بندازید.
              بینهایت ترفند و کد وجود داره،دقیقا به سبک و توان کد نویسیه
              انحصار طلبي علمي در دنياي امروز جايگاهي ندارد،بياييد تا دانسته هاي خود را هرچند اندک؛با ديگران به اشتراک بگذاريم...
              فرهنگ و تمدن بي همتاي ايرانيان به سبب حمله ي وحشيانه مغولان نابود شد،امروز نوبت من و توست که با انتشار دانسته هاي خود ايران را به جايگاه بي همتاي گذشته باز گردانيم.

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

              دیدگاه


                #8
                پاسخ : انجام 2 تا کار با یک کلید .باید از چه دستورهایی استفاده کنم؟

                نوشته اصلی توسط ravanjok
                بینهایت ترفند و کد وجود داره،دقیقا به سبک و توان کد نویسیه
                دقیقا!

                دیدگاه


                  #9
                  پاسخ : انجام 2 تا کار با یک کلید .باید از چه دستورهایی استفاده کنم؟

                  نوشته اصلی توسط ravanjok
                  بیا داداش این واسه 1 ثانیه،خودت تغییر بده

                  l1:
                  if pinx.x=0 then goto l1

                  if pinx.x=1 then
                  set portx.x ' led 1
                  end if

                  for a = 0 to 100
                  if pinx.x=0 then goto l1
                  waitms 10
                  next
                  set portx.y 'led 2
                  باحال بود.ولی نگاه کنید وقتی که کلید زده میشه led1 روشن میشه و بعد اگه 1 ثانیه معطل بشه led 2 روشن میشه.
                  ولی من اینطور میخام که اگه کلید زده شد led1 درجا روشن نشه برا اینکه شاید میخام led 2 روشن بشه .یعنی من اینطور میخام که اگه کلید زده شد و قبل از یک ثانیه دستمو ول کردم led1 روشن شه ولی اگه دستمو 1 ثانیه نگه داشتم دیگه led1 روشن نشه مستقیم led 2 روشن شه.
                  ممنونم که راهنمایی میکنید.
                  دوستای من ،منم دقیقا دارم توان کد نویسیمو بالا میبرم برا همین دارم از شما کمک میگیرم.اگه میشه و وقتشو دارید کد بنویسید و ترفند رو نشون بدید. :agree:
                  با تشکر از شما. :applause:
                  به سمت نور خورشيد حرکت کن،تو ميتوني تابش خورشيد رو حس کني ،حتي اگه کور باشي.
                  (پيش به سوي هدف)

                  دیدگاه


                    #10
                    پاسخ : انجام 2 تا کار با یک کلید .باید از چه دستورهایی استفاده کنم؟

                    بیا فک کنم این خوب باشه
                    l1:
                    if pinx.x=0 then goto l1
                    if pinx.x=1 then
                    wait 1
                    if pinx.x=0 then goto l1
                    end if


                    set portx.x ' led 1


                    for a = 0 to 100
                    if pinx.x=0 then goto l1
                    waitms 10
                    next
                    set portx.y 'led 2
                    انحصار طلبي علمي در دنياي امروز جايگاهي ندارد،بياييد تا دانسته هاي خود را هرچند اندک؛با ديگران به اشتراک بگذاريم...
                    فرهنگ و تمدن بي همتاي ايرانيان به سبب حمله ي وحشيانه مغولان نابود شد،امروز نوبت من و توست که با انتشار دانسته هاي خود ايران را به جايگاه بي همتاي گذشته باز گردانيم.

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

                    دیدگاه


                      #11
                      پاسخ : انجام 2 تا کار با یک کلید .باید از چه دستورهایی استفاده کنم؟

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

                      دیدگاه


                        #12
                        پاسخ : انجام 2 تا کار با یک کلید .باید از چه دستو&#

                        پس من منظورتونو متوجه نمیشم ،چون این باید حدود یک ثانیه دستون رو کلید باشه تا LED1 روشن بشه،و اگر 1 روشن بشه و دستون هنوز 1 ثانیه دیگه روش باشه بعدی روشن میشه وگرنه هر2 خاموش میشن
                        کلیدتونو پول پ یا پول دون کردین؟
                        انحصار طلبي علمي در دنياي امروز جايگاهي ندارد،بياييد تا دانسته هاي خود را هرچند اندک؛با ديگران به اشتراک بگذاريم...
                        فرهنگ و تمدن بي همتاي ايرانيان به سبب حمله ي وحشيانه مغولان نابود شد،امروز نوبت من و توست که با انتشار دانسته هاي خود ايران را به جايگاه بي همتاي گذشته باز گردانيم.

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

                        دیدگاه


                          #13
                          پاسخ : انجام 2 تا کار با یک کلید .باید از چه دستورهایی استفاده کنم؟

                          ببخشید اون موقع از خواب بیدار شده بودم گیج بودم اینو آلان خوب خوندم
                          نوشته اصلی توسط hosseinam1370
                          یعنی من اینطور میخام که اگه کلید زده شد و قبل از یک ثانیه دستمو ول کردم led1 روشن شه ولی اگه دستمو 1 ثانیه نگه داشتم دیگه led1 روشن نشه مستقیم led 2 روشن شه.
                          بیا اینه
                          l1:
                          if pinx.x=0 then goto l1
                          if pinx.x=1 then

                          for b = 0 to 100
                          waitms 10
                          if pinx.x=0 then
                          goto l3
                          end if
                          next
                          end if


                          for a = 0 to 100
                          if pinx.x=0 then goto l1
                          waitms 10
                          next
                          set portx.y 'led 2

                          l3:
                          set portx.x ' led 1
                          انحصار طلبي علمي در دنياي امروز جايگاهي ندارد،بياييد تا دانسته هاي خود را هرچند اندک؛با ديگران به اشتراک بگذاريم...
                          فرهنگ و تمدن بي همتاي ايرانيان به سبب حمله ي وحشيانه مغولان نابود شد،امروز نوبت من و توست که با انتشار دانسته هاي خود ايران را به جايگاه بي همتاي گذشته باز گردانيم.

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

                          دیدگاه


                            #14
                            پاسخ : انجام 2 تا کار با یک کلید .باید از چه دستورهایی استفاده کنم؟

                            دوست عزیز ravanjok ممنون که وقتت رو گزاشتی ایشالا خوشگل دوماد بشی .بله منظورم همین بود،فقط یه اشکال داشت که برطرفش کردم و برات میزارم .
                            خیلی کف کردم با این برنامت.بوس بوس :redface: :rolleyes: :nerd:

                            Config Porta = Output
                            Config Pinc.1 = Input
                            Config Pinc.2 = Input
                            Dim F As Word , D As Word , T As Byte
                            Do
                            N:
                            If Pinc.1 = 0 Then Goto N

                            If Pinc.1 = 1 Then

                            For T = 0 To 100
                            Waitms 10
                            If Pinc.1 = 0 Then Goto M
                            End If
                            Next

                            For D = 0 To 10
                            If Pinc.1 = 0 Then Goto N

                            Waitms 100

                            Next For

                            Toggle Porta.2
                            Bitwait Pinc.1 , Reset ' in khat ro ja gozashtin doste aziz ,bos bos
                            Goto N
                            M:
                            Toggle Porta.0
                            Loop
                            End
                            به سمت نور خورشيد حرکت کن،تو ميتوني تابش خورشيد رو حس کني ،حتي اگه کور باشي.
                            (پيش به سوي هدف)

                            دیدگاه


                              #15
                              پاسخ : انجام 2 تا کار با یک کلید .باید از چه دستو&#

                              بیسیک بلد نیستم ولی میتونید کلید رو به زمین وصل کنید و یکی از اینتراپت ها رو پول پ کنید
                              0 - تابع وقفه روی دو حالت نوشته میشه بعد از فشردن و بعد از رها کردن
                              1- وقفه رو روحالت پایین رونده تنظیم کنید
                              2- وقتی وقفه فعال شد تایمر شروع به شمارش میکنه و وقفه روی حالت بالا رونده تنظیم میشه حالا اگه این وقفه فعال شد زمان رو میخونیم اگه کمتر از 1 ثانیه بود LED اول و اگه بیشتر LED دوم روشن میشه
                              شمای تابع به زبونه خاصی نیست !! اگه خواستید C ش رو بنویسم

                              FUNCTION
                              {
                              (if(your interrupt is at falling edge
                              something
                              (else if (your interrupt is at rising edge
                              something else
                              }
                              (and in main function interrupt should be set at falling edge(before while(1) loop

                              head<=
                              ...تشکر خدا...
                              [img width=97 height=100]http://mahdi3d.persiangig.com/image/5280543_t.jpg[/img]

                              دیدگاه

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