اطلاعیه

Collapse
No announcement yet.

مشکل با اسکن کیبرد

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

    #16
    پاسخ : مشکل با اسکن کیبرد

    سلام دوستان.
    آقای freedom_truth می بخشید که چند وقته نیومدم و جواب ندادم. آخه میدوید چیه ؟ من اون مدار رو قرار بود شنبه تحویل بدم که جواب نداد. بردم به استاد نشون دادم تا شاید بدون ایرادش از کجاست. ولی تا برنامه رو دید گفت برنامتون خیلی طولانی و بلنده. و اصلاً نگاه نکرده ردش کرد . منم مجبور شدم برنامه رو تغییر بدم. یه برنامه ی جدید نوشتم که نسبتاً جواب میده . این که میگم نسبتً منظورم چند تا اشکال نه چندان کوچک هستش که امیدوارم کمکم کنید تا حلشون کنم.
    مشکل مدار اینا هستن :
    1- موقتی یه کلید فشار داده میشه باید اون رو رو سگمنت اول نشون بده و کاراکتری که روی سگمنت اول بود رو به سگمنت دوم شیفت بده و دومی رو به سومی و سومی رو به چهارمی و چهارمی رو بندازه دور. ولی این مدار اصلاً شیفت نمیده . وقتی یه کلید فشرده میشه اون رو روی همه ی سگمنت ها نشون میده.
    2- کلید ها رو با هم اشتباه میگیره .یعن مثلاً وقتی کلید 0 رو فشار میدم اون رو گاهی صفر میخونه ، گاهی 4 یا 8 یا C . یعنی کلید های یک هر ستون رو با هم قاطی میکنه.

    فایل های جدید مدار تو لینک زیر هست. بیزحمت یه نگاه بهشون بندازید.
    http://www.4shared.com/file/14619341.../KEYPAD_2.html
    خدایا
    من در کلبه ی فقیرانه ی خود چیزی دارم که تو در عرش کبریایی خود نداری
    من چون تویی دارم و تو چون خودی نداری
    امام سجاد (ع)

    دیدگاه


      #17
      پاسخ : مشکل با اسکن کیبرد

      سلام دوست عزیز

      1_ مشکل اصلی اینه که تو برنامه جدید برعکس برنامه قبلی سگمنت ها رو با "1" انتخاب کردید ولی برنامه تشخیص کیپد رو هم طبق اون تغییر ندادین!! اون گیتهای NOT رو هم بر نداشتین !
      2_ همونطور که قبلا گفتم مقدار 4 برای دیبانس کمه که شما گوش نکردی! (در ضمن بهتره یه کد اضافه کنی که تا دست از روی دکمه برداشته نشده عدد بعدی رو نگیره. )
      3_ توی اون قسمت LETTER TABLE هم دوتا حرف آخر رو فراموش کرده بودی (E و F).

      کلیت برنامه شما درسته و مشکلی نداره شاید لازم باشه یه کوچولو تغییرش بدی. به هر حال میتونی اصلاح شدهآ‌شو از اینجا دانلود کنی.

      دیدگاه


        #18
        پاسخ : مشکل با اسکن کیبرد

        آقا دستتون درد نکه . الان درست کلید ها رو اسکن میکنه. ولی یه مشکل دیگه داره که هر چی فکر میکنم سر در نمیارم.
        من تو مدار به آند مشترک، ترانزیستور های npn وصل میکنم . به بیسشون هم صفر میدم. مثل شکل زیر

        کلید ها درست اسکن میشن. ولی روی هر چهار تا سگمنت نشون میده و شیفتش نمیده.
        حالا وقتی ترانزیستور pnp میذارم و بازم به بیسش صفر میدم ،

        همون مشکل قبلی پیش میاد و اصلاً کلید ها اسکن نمیشن. یعنی هیچ چی نشون نمیده. در حالی که این دومی درست تره.
        حالا سر در نمیارم چرا با NPN کار میکنه ولی با PNP نه. و چرا شیفتش نمیده.
        خدایا
        من در کلبه ی فقیرانه ی خود چیزی دارم که تو در عرش کبریایی خود نداری
        من چون تویی دارم و تو چون خودی نداری
        امام سجاد (ع)

        دیدگاه


          #19
          پاسخ : مشکل با اسکن کیبرد

          سلام
          آخر من نفهمیدم میخوای سگمنتها رو یا "یک" انتخاب کنی(00000001) یا با "صفر" (11111110) ؟!
          این دیگه PNP و NPN پرسیدن نداره که! این دوتا دقیقاً آ‌برعکس همن.
          وقتی خودت میدونی سگمنتها رو با مثلاً "صفر" انتخاب میکنی دیگه چرا NPN رو امتحان کنی!(مگر اینکه ندونی NPN وقتی یه بیسش یک بدی روشن میشه که بعید میدونم ندونی.)

          بذار یه چیزی بهت بگم خودتو خلاص کن:
          شما برنامتو توی پروتیوس بنویس و تست کن و با ترانزیستور مرانزیستور کاری نداشته باش.
          اگه برنامت درست بود و تصمیم گرفتی مدارو ببندی اونوقت توی عمل ترانزیستورها رو بذار.
          به این صورت که اگه سگمنت ها رو با "صفر انتخاب میکنی(یعنی اینجوری 1110) PNP بذار و بالعکس. یه مقاومت سری 1K هم پشت بیس هر ترازیستور بذار.

          دیدگاه


            #20
            پاسخ : مشکل با اسکن کیبرد

            دوست عزیز چون من میخوام همزمان کیبرد رو هم اسکن کنم باید صفر بدم که دفعه ی پیش اشتباهی یک داده بودم و به همین دلیل هم کلید ها رو باهم اشتباه میگرفت.(همزمان چند تا صفر رو پورت بود و چند تا کلیر رو می خوند. ) یعنی در کل باید صفر بدم و وقتی هم صفر میدم باید ترانزیستور PNP بزارم. ولی با این ترانزیستور کار نمیکنه . یعنی سگمنت ها اسکن و روشن میشن و لی کیبرد رو نمی خونه. ولی وقتی NPN میزارم و صفر میدم هم کیبرد رو میخونه و هم سگمنت ها رو روشن میکنه (که اصولاً نباید روشن بشن ولی میشن).در مورد شیفت ندادن هم فکر کنم دلیلشو فهمیدم. وقتی من NPN میذارم و صفر رو می چرخونم اون ترانزیستوری که بیسش صفره خاموش میشه و بقیه همزمان روشن میشن و یه عدد رو رو همشون نشون میده . بنابراین اگه شیفت هم بده دیده نمیشه. ولی الان سوال اینه که چرا با PNP کار نمی کنه ؟
            خدایا
            من در کلبه ی فقیرانه ی خود چیزی دارم که تو در عرش کبریایی خود نداری
            من چون تویی دارم و تو چون خودی نداری
            امام سجاد (ع)

            دیدگاه


              #21
              پاسخ : مشکل با اسکن کیبرد

              سلام مجدد
              دوست عزیز شما باید از یه ترانزیستور PNP استفاده کنید. مثل شکل زیر.

              دیدگاه


                #22
                پاسخ : مشکل با اسکن کیبرد

                سلام و دستتون درد نکنه. PNP با مقاومت تو بیس گذاشتم درست شد و نشون داد. در مورد شیفت دادن هم دلیلشو فهمیدم که چرا شیفت نمیده.
                چون ما فشرده شدن کلید رو چک میکنیم ولی رها شدنش رو نه. درستش اینه که ما رها شدن کلید رو هم چک کنیم و وقتی کلید رها شد نشونش بدیم. ولی تو برنامه ی من چون این رعایت نشده و سرعت کار میکرو هم خیلی زیاد هست ، با هر با فشرده شدن کلید ، اونو چند بار میخونه.
                من واسه چک کردن رها شدن کلید هم یه برنامه نوشتم و به قبلیه اضافه کردم. ولی بازم با مشکل مواجهم و بعضی کلید ها رو نمیخونه و بعضی ها رو هم مثل قبل چند تا نشون میده (روی همه ی سگمنت ها نشون میده.)
                اگه میشه ببینید برنامش درسته یا نه ؟
                http://www.4shared.com/file/14782514.../keypad_2.html
                خدایا
                من در کلبه ی فقیرانه ی خود چیزی دارم که تو در عرش کبریایی خود نداری
                من چون تویی دارم و تو چون خودی نداری
                امام سجاد (ع)

                دیدگاه


                  #23
                  پاسخ : مشکل با اسکن کیبرد

                  سلام دوست عزیز
                  ببین ناراحت نشیا ولی من قبلاً دوبار بهت گفتم اون مقدار MOV R3,#4 رو بذار رو 200 ولی توجه نکردی.
                  خب معلومه که اینجوری درست کار نمیکنه.من فکر میکردم شما این رو اصلاح کردی ولی .....
                  الانم بعد از دو صفحه پست زدن به این نتیجه ای رسیدی.

                  متاسفانه من وقت نکردم به فایلهای شما نگاه کنم. ولی برای حل این مشکل میتونی این کارو بکنی:
                  یکی اینکه هم اون مقدار R3 رو زیاد کنی و برای اینکه مطمئن بشی کاربر دستشو از رو دکمه برداشته اینجوری بنویس:

                  LABEL: MOV A,P1
                  CJNE A,#0FH,LABEL

                  دیدگاه


                    #24
                    پاسخ : مشکل با اسکن کیبرد

                    دوست عزیز . اون R3 برای گرفتن لرزش کلید هست و فکر نکنم بیشتر از 20ms نیاز باشه. تایمر 4ms پر میشه و اینتراپت میده و 4 تا 4ms هم میشه 16ms که استاد هم تاییدش کرده. در ضمن 4 گذاشتم تا پس از چهار بار رجیستر R2 که برای سلکت سگمنت ها و اسکن کلید هاست به همون حالت قبلی برگرده.
                    در مورد دستوری که نوشتین ، من هم همین کارو کردم فقط موقع چک کردن رها شدن کلید هم لرزش رو به حساب آوردم و این قسمت رو هم مثل چک کردن فشرده شدن کلید دوبار انجام دادم.

                    میبخشید که اینهمه زحمتتون دادم. بابت همه چیز ازتون ممنونم.

                    خدایا
                    من در کلبه ی فقیرانه ی خود چیزی دارم که تو در عرش کبریایی خود نداری
                    من چون تویی دارم و تو چون خودی نداری
                    امام سجاد (ع)

                    دیدگاه


                      #25
                      پاسخ : مشکل با اسکن کیبرد

                      سلام به همه ی دوستان
                      تو لینک زیر برنامه ی کامل رو که کاملاً درست جواب داد میذارم. امیدوارم به درد کسی بخوره.
                      از همه ی دوستان و به خصوص جناب freedom_truth که لطف کردن و بنده رو راهنمایی کردن تشکر میکنم.امیدوارم بتونم جبران کنم.
                      http://dc149.4shared.com/download/151590998/a01c4ab5/keypad_3.zip

                      البته تو پروتئوس با اون ترانزیستورهایی که گذاشتم ، جواب نمیده ولی اگه مدار رو همون طوری ببندید حتماً جواب خواهد داد.

                      خدایا
                      من در کلبه ی فقیرانه ی خود چیزی دارم که تو در عرش کبریایی خود نداری
                      من چون تویی دارم و تو چون خودی نداری
                      امام سجاد (ع)

                      دیدگاه


                        #26
                        پاسخ : مشکل با اسکن کیبرد

                        من شدیدا و اورژانسی به این پروژه نیاز ارم ولی دانلود نمی شه. :cry2:
                        میشه لطف کنید و با کمی توضیح این برنامه رو برام MAIL کنید ؟
                        Raha.e84@gmail.com
                        واقعا ممنوم می شم اگه تا دو روز این لطف رو بکنید .

                        دیدگاه

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