اطلاعیه

Collapse
No announcement yet.

اتصال کیبرد کامپیوتر به میکرو

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

    اتصال کیبرد کامپیوتر به میکرو

    سلام.
    از کسانی که با پروتکل PS2 کار کردن خواهش می کنم کمک کنن.
    می خوام کیبرد کامپیوتر رو به میکروکنترلرها وصل کنم حالا مشکل اینجاست که نمی دونم خروجی کیبرد چیه؟
    در زیر یه برنامه ای رو از اینترنت گرفتم که کار میکنه فقط مشکلش اینجاست سرعتش دریافت دیتاش خیلی پایینه.
    من می خوام خودم برنامه بنویسم که با زدن کلیدهای کیبرد اون رو مانند متن رو LCD نمایش بدم از دوستان خواهش می کنم کمک کنن خیلی فوری لازمه !!!!!
    اینم برنامه ای که از اینترنت گرفتم :
    $regfile = "m32def.dat"
    $crystal = 8000000
    '-------------------------
    Config Porta.1 = Output
    Porta.1 = 0
    Config Lcd = 16 * 2
    Config Lcdpin = Pin , Rs = Porta.0 , E = Porta.2 , Db4 = Porta.4 , Db5 = Porta.5 , Db6 = Porta.6 , Db7 = Porta.7
    '------------------------
    Config Keyboard = Pind.0 , Data = Pinc.1 , Keydata = Keydata
    '------------------------
    Dim K As Byte
    '------------------------
    Initlcd
    Cursor Off
    Lcd "arasteh"
    Wait 1
    Cls
    Main:
    K = Getatkbd()
    Select Case K:
    Case 44:
    Cls
    Home
    Case 13:
    Lowerline
    Case 9:
    Shiftcursor Right
    Shiftcursor Right
    Shiftcursor Right
    Shiftcursor Right
    Case 8:
    Shiftcursor Left
    Lcd " ";
    Shiftcursor Left
    Case 141:
    Cls
    Lcd " Press F1"
    Case 142:
    Cls
    Lcd " Press F2"
    Case 143:
    Cls
    Lcd " Press F3"
    Case 144:
    Cls
    Lcd " Perss F4"
    Case 152:
    Cls
    Lcd " Press F5"
    Case 153:
    Cls
    Lcd " Press F6"
    Case 154:
    Cls
    Lcd " Press F10"
    Case 158:
    Cls
    Lcd " Press F8"
    Case 159:
    Cls
    Lcd " Press F9"
    Case 163:
    Cls
    Lcd " Press F11"
    Case 164:
    Cls
    Lcd " Press F12"
    Case 10:
    Cls
    Lcd " Press ESC"
    Case 28:
    Home
    Case 30:
    Upperline
    Case 31:
    Lowerline
    Case 134 :
    Shiftcursor Left
    Case 135:
    Shiftcursor Right
    Case Else Lcd String(1 , K)
    End Select
    jmp main
    End 'end program
    Keydata: '
    'normal keys lower case
    Data 0 , 159 , 0 , 152 , 143 , 141 , 142 , 164 , 0 , 154 , 158 , 153 , 144 , 9 , 0 , 0
    Data 0 , 0 , 0 , 0 , 0 , 113 , 49 , 0 , 0 , 0 , 122 , 115 , 97 , 119 , 50 , 0
    Data 0 , 99 , 120 , 100 , 101 , 52 , 51 , 0 , 0 , 32 , 118 , 102 , 116 , 114 , 53 , 0
    Data 0 , 110 , 98 , 104 , 103 , 121 , 54 , 0 , 0 , 0 , 109 , 106 , 117 , 55 , 56 , 0
    Data 0 , 0 , 107 , 105 , 111 , 48 , 57 , 0 , 0 , 46 , 47 , 108 , 59 , 112 , 45 , 0
    Data 0 , 0 , 39 , 0 , 91 , 61 , 0 , 0 , 0 , 0 , 13 , 93 , 0 , 0 , 0 , 0
    Data 0 , 0 , 0 , 0 , 0 , 0 , 8 , 0 , 0 , 0 , 0 , 134 , 28 , 0 , 0 , 0
    Data 0 , 44 , 31 , 0 , 135 , 30 , 10 , 0 , 163 , 0 , 0 , 0 , 0 , 0 , 0 , 0


    'shifted keys UPPER case
    Data 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0
    Data 0 , 0 , 0 , 0 , 0 , 81 , 33 , 0 , 0 , 0 , 90 , 83 , 65 , 87 , 64 , 0
    Data 0 , 67 , 88 , 68 , 69 , 36 , 35 , 0 , 0 , 32 , 86 , 70 , 84 , 82 , 37 , 0
    Data 0 , 78 , 66 , 72 , 71 , 89 , 94 , 0 , 0 , 0 , 77 , 74 , 85 , 38 , 42 , 0
    Data 0 , 60 , 75 , 73 , 79 , 41 , 40 , 0 , 0 , 62 , 63 , 76 , 58 , 80 , 95 , 0
    Data 0 , 0 , 34 , 0 , 123 , 43 , 0 , 0 , 0 , 0 , 13 , 125 , 0 , 166 , 0 , 0
    Data 0 , 0 , 0 , 0 , 0 , 0 , 8 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0
    Data 0 , 44 , 0 , 0 , 0 , 0 , 10 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0
    چرا ناراحتی پاتریک!
    + امروز ی بچه دیدم سرچهارراه گل میفروخت
    - از دیدنش ناراحت شدی؟
    + نه
    پس چی ناراحتت کرده
    + اینکه دیدن اینجور بچه ها انقدر واسم عادی شده که دیگه ناراحتم نمیکنه
    ------------------------------------------------------------------------------------------------------
    تاحالا فکر کردی بیسواد کیه؟- بی سواد یعنی کسی که نمیتونه ذهنیاتش رو عملی کنه!
    ------------------------------------------------------------------------------------------------------
    محصولات

    #2
    پاسخ : اتصال کیبرد کامپیوتر به میکرو

    نوشته اصلی توسط soran111
    سلام.
    می خوام کیبرد کامپیوتر رو به میکروکنترلرها وصل کنم حالا مشکل اینجاست که نمی دونم خروجی کیبرد چیه؟
    سلام
    این ترتیب پایه های کیبرد هست
    http://micro-avr.blogfa.com/post-54.aspx
    اگه سرعت پاین هست بهش کریستال 16m وصل کن

    دیدگاه


      #3
      پاسخ : اتصال کیبرد کامپیوتر به میکرو

      با سلام.
      دوست عزیز من در اتصال مدار مشکل ندارم حتی تو همون برنامه قبل با زدن F1 و F12 قشگ اونها رو رو نمایشگر نشون می داد. مشکل من اینجاست که نمی تونم مثلا با زدن کلید S اون کاراکتر رو روی نمایشگر ببینم؟ برنامه ای هم که شما گذاشتین رو تست کردم بازم عدد رو نمایشگر نشون داده میشه اونم با یه تاخیر خیلی زیاد یعنی وقتی کلیدی رو فشار میدی باید کلید بعدی رو می خوای بزنی هزار بار فشار بدی تا عدد اون رو نشون بده.
      خواهشا اگر کسی در این زمینه اطلاع داره کمک کنه ؟!
      با سپاس فراوان.
      چرا ناراحتی پاتریک!
      + امروز ی بچه دیدم سرچهارراه گل میفروخت
      - از دیدنش ناراحت شدی؟
      + نه
      پس چی ناراحتت کرده
      + اینکه دیدن اینجور بچه ها انقدر واسم عادی شده که دیگه ناراحتم نمیکنه
      ------------------------------------------------------------------------------------------------------
      تاحالا فکر کردی بیسواد کیه؟- بی سواد یعنی کسی که نمیتونه ذهنیاتش رو عملی کنه!
      ------------------------------------------------------------------------------------------------------
      محصولات

      دیدگاه


        #4
        پاسخ : اتصال کیبرد کامپیوتر به میکرو

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

        دیدگاه


          #5
          پاسخ : اتصال کیبرد کامپیوتر به میکرو

          ببین داداش. :job:
          این برنامه رو واست میزارم.
          این جوری هست که هر کلیدی رو میزنی یه عددی مثلا x12 روی lcd نشون میده.تو فقط کافیه به جای x12 توی برنامه اسم کلیدی رو که زدی بزاری.
          http://s2.picofile.com/file/7166863438/keyboard.zip.html
          انا لله و انا اليه الراجعون

          دیدگاه


            #6
            پاسخ : اتصال کیبرد کامپیوتر به میکرو

            سلام
            کندی برنامتون به خاطر اینه که اول دستور کیبورد اجرا می شه بعد همه case ها را چک میکنه که باید دستور getatkbd را مثل زیر بنویسید
            Do

            B = Getatkbd()

            Loop Until B <> 0
            بااین کار دائم کیبرد چک میشود اگر کلیدی فشرده شد دنبال نمایش آن دکمه می رود
            نکته بعدی اینکه کی برد کد ها را به صورت هگز ارسال میکند پس شما باید در جدول اخر برنامه تان معادل اسکی هر کاراکتر را بنویسید

            یک نمونه برنامه
            $regfile = "m16def.dat"
            $crystal = 12000000
            Config Lcd = 16 * 2
            Config Lcdpin = Pin , Db4 = Portd.0 , Db5 = Portd.1 , Db6 = Portd.2 , Db7 =
            Portd.3 , E = Portd.4 , Rs = Portd.5
            Config Keyboard = Pind.2 , Data = Pind.4 , Keydata = Keydata
            Dim B As Byte
            Do
            ()B = Getatkbd
            If B > 0 Then
            (Lcd String(1 , B
            End If
            Loop
            End
            :Keydata
            normal keys lower case'
            Data 0 , 0 , 0 , 0 , 0 , 200 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , &H5E , 0
            Data 0 , 0 , 0 , 0 , 0 , 113 , 49 , 0 , 0 , 0 , 122 , 115 , 97 , 119 , 50 , 0
            Data 0 , 99 , 120 , 100 , 101 , 52 , 51 , 0 , 0 , 32 , 118 , 102 , 116 , 114 , 53 , 0
            Data 0 , 110 , 98 , 104 , 103 , 121 , 54 , 7 , 8 , 44 , 109 , 106 , 117 , 55 , 56 , 0
            Data 0 , 44 , 107 , 105 , 111 , 48 , 57 , 0 , 0 , 46 , 45 , 108 , 48 , 112 , 43 , 0
            Data 0 , 0 , 0 , 0 , 0 , 92 , 0 , 0 , 0 , 0 , 13 , 0 , 0 , 92 , 0 , 0
            Data 0 , 60 , 0 , 0 , 0 , 0 , 8 , 0 , 0 , 49 , 0 , 52 , 55 , 0 , 0 , 0
            Data 48 , 44 , 50 , 53 , 54 , 56 , 0 , 0 , 0 , 43 , 51 , 45 , 42 , 57 , 0 , 0
            shifted keys UPPER case'
            Data 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0
            Data 0 , 0 , 0 , 0 , 0 , 81 , 33 , 0 , 0 , 0 , 90 , 83 , 65 , 87 , 34 , 0
            Data 0 , 67 , 88 , 68 , 69 , 0 , 35 , 0 , 0 , 32 , 86 , 70 , 84 , 82 , 37 , 0
            Data 0 , 78 , 66 , 72 , 71 , 89 , 38 , 0 , 0 , 76 , 77 , 74 , 85 , 47 , 40 , 0
            Data 0 , 59 , 75 , 73 , 79 , 61 , 41 , 0 , 0 , 58 , 95 , 76 , 48 , 80 , 63 , 0
            Data 0 , 0 , 0 , 0 , 0 , 96 , 0 , 0 , 0 , 0 , 13 , 94 , 0 , 42 , 0 , 0
            Data 0 , 62 , 0 , 0 , 0 , 8 , 0 , 0 , 49 , 0 , 52 , 55 , 0 , 0 , 0 , 0
            Data 48 , 44 , 50 , 53 , 54 , 56 , 0 , 0 , 0 , 43 , 51 , 45 , 42 , 57 , 0 , 0


            **/nsm\**

            دیدگاه


              #7
              پاسخ : اتصال کیبرد کامپیوتر به میکرو

              با سلام.
              از دوستان بخاطر کمکشون خیلی ممنونم .دستتون درد نکنه.
              با سپاس فراوان.
              :wow: :wow: :job: :job: :wow: :wow:
              چرا ناراحتی پاتریک!
              + امروز ی بچه دیدم سرچهارراه گل میفروخت
              - از دیدنش ناراحت شدی؟
              + نه
              پس چی ناراحتت کرده
              + اینکه دیدن اینجور بچه ها انقدر واسم عادی شده که دیگه ناراحتم نمیکنه
              ------------------------------------------------------------------------------------------------------
              تاحالا فکر کردی بیسواد کیه؟- بی سواد یعنی کسی که نمیتونه ذهنیاتش رو عملی کنه!
              ------------------------------------------------------------------------------------------------------
              محصولات

              دیدگاه

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