NOTICE توجه: این یک موضوع قدیمی است که آخرین پست ارسالی آن مربوط به 4712 روز قبل است . لطفا فقط پاسخ ها ، سوالات و درخواست های 100 درصد مرتبط را به آن ارسال کنید و برای درخواست ها و سوالات جدید موضوع جدیدی را ایجاد کنید
نمایش نتایج: از 1 به 8 از 8

موضوع: مشکل با keypad،کی keypadو راه انداخته؟

  1. #1
    عضو جدید
    تاریخ عضویت
    Feb 2011
    نوشته ها
    19
    تشکر
    9
    تشکر شده 3 بار در 3 پست

    پیش فرض مشکل با keypad،کی keypadو راه انداخته؟

    با سلام
    دوستان من هر کاری کردم نتونستم key padرو رابندازم
    هدری که دوستان همراه pmm4 گذاشتن کار نمیکنه،چند تا مشکلم داره:
    1.دیبانچش اصلا تو هدر نیومده
    2.پایه هایی که باید ورودی بشن،نشدن
    3.کارنمیکنه
    تو فایل پیوستی که گذاشتم من این ایرادارو درست کردم ولی بازم کار نکرد
    دوستان اگه میشه کمک کنید لطفا!


    _____________________________
    در کوی تو معروفم و از روی تو محروم گرگ دهن آلوده ی یوسف ندریده
    فايل هاي پيوست شده فايل هاي پيوست شده
    • نوع فایل: zip kbdd.zip (849 بایت, 29 نمايش)

  2. # ADS
    Circuit advertisement
    تاریخ عضویت
    Always
    نوشته ها
    Many
     

  3. #2
    عضو جدید
    تاریخ عضویت
    Feb 2011
    نوشته ها
    19
    تشکر
    9
    تشکر شده 3 بار در 3 پست

    پیش فرض

    دوستان کسی kbdراه ننداخته؟
    کمکککککککککککک

  4. #3
    کاربر ارشد 1nafar آواتار ها
    تاریخ عضویت
    Jul 2007
    نوشته ها
    2,745
    تشکر
    1,266
    تشکر شده 4,874 بار در 1,377 پست

    پیش فرض

    سلام
    2.پایه هایی که باید ورودی بشن،نشدن
    توي اين هدر چند تا دستور وجود داره :
    define KBD_PORT_x
    x ميتونه A براي اتصال كيپد به پورت A و B براي اتصال كيپد به پورت B باشه . در اين حالت يكي از مجموعه دستورات زير اجرا ميشه :
    براي پورت A
    #ifdef KBD_PORT_A
    #define KBD_PIO_enable *AT91C_PIOA_PER
    #define KBD_PIO_SetOutput *AT91C_PIOA_SODR
    #define KBD_PIO_ClearOutput *AT91C_PIOA_CODR
    #define KBD_PIO_CfgOutput *AT91C_PIOA_OER
    #define KBD_PIO_Cfginput *AT91C_PIOB_ODR
    #define KBD_PIO_Pull_up *AT91C_PIOA_PPUER
    #define KBD_PIO_Setinput *AT91C_PIOA_PDSR
    #endif

    يا براي پورت B

    #ifdef KBD_PORT_B
    #define KBD_PIO_enable *AT91C_PIOB_PER
    #define KBD_PIO_SetOutput *AT91C_PIOB_SODR
    #define KBD_PIO_ClearOutput *AT91C_PIOB_CODR
    #define KBD_PIO_CfgOutput *AT91C_PIOB_OER
    #define KBD_PIO_Cfginput *AT91C_PIOB_ODR
    #define KBD_PIO_Pull_up *AT91C_PIOB_PPUER
    #define KBD_PIO_Setinput *AT91C_PIOB_PDSR
    #endif

    در ادامه ما چند تا خط دستور داريم كه د ر اونا نماد هاي رجيستر هاي ما كه در بالا معرفي شدن مقدار دهي ميشن :
    KBD_PIO_enable=(0xFF << KBD_DATAPORT_OFFSET);
    KBD_PIO_Cfginput=((1<<(KBD_DATAPORT_OFFSET+4))|(1< <(KBD_DATAPORT_OFFSET+5))|(1<<(KBD_DATAPORT_OFFSET +6))|(1<<(KBD_DATAPORT_OFFSET+7)));
    KBD_PIO_Pull_up =((1<<(KBD_DATAPORT_OFFSET+4))|(1<<(KBD_DATAPORT_O FFSET+5))|(1<<(KBD_DATAPORT_OFFSET+6))|(1<<(KBD_DA TAPORT_OFFSET+7)));
    KBD_PIO_CfgOutput=((1<<KBD_DATAPORT_OFFSET)|(1<<(K BD_DATAPORT_OFFSET+1))|(1<<(KBD_DATAPORT_OFFSET+2) )|(1<<(KBD_DATAPORT_OFFSET+3)));
    *AT91C_PMC_PCER= (1 << AT91C_ID_PIOA)|(1 << AT91C_ID_PIOB);

    با اين دستورات پايه هاي تعيين شده فعال ميشن و سپس تعداد چهار تاشون به عنوان ورودي و چهار تاشون به عنوان خروجي فعال ميشه ، دستور KBD_PIO_Pull_up... هم مقاومت PULL UP پايه هاي ورودي فعال ميكنه .

    1.دیبانچش اصلا تو هدر نیومده
    توي هدر و در بين دستورات خواندن ورودي دستور زير قرار گرفته :
    KBD_delay_ms(deb);
    اين دستور تابع زير رو DEB بار اجرا ميكنه :
    void KBD_delay_ms(unsigned long KBD_b){
    unsigned long KBD_y;
    do{
    unsigned long KBD_e=0;

    for (KBD_e=0;KBD_e<3686;KBD_e++);
    KBD_y++;
    } while(KBD_y<KBD_b);
    KBD_y=0;
    }
    اين يعني هر بار كه اين تابع اجرا ميشه تاخير 1 ميلي ثانيه رخ ميده و تاخير نهايي برابر با تاخير رخ داده در فشردن كليد خواهد شد .
    3.کارنمیکنه
    بهتره فايل پروژتون رو به صورت كامل بزاريد

  5. کاربران : 3 تشکر کرده اند از شما 1nafar برای ارسال این پست سودمند:


  6. #4
    عضو جدید
    تاریخ عضویت
    Feb 2011
    نوشته ها
    19
    تشکر
    9
    تشکر شده 3 بار در 3 پست

    پیش فرض

    مرسی
    فردا صبح میزارمش فقط اگه میشه یه مقدار سریعتر جواب بدین

  7. #5
    عضو جدید
    تاریخ عضویت
    Feb 2011
    نوشته ها
    19
    تشکر
    9
    تشکر شده 3 بار در 3 پست

    پیش فرض

    بازم سلام
    آقا اینم فایل کامل پروژه.
    فايل هاي پيوست شده فايل هاي پيوست شده
    • نوع فایل: zip kbd1.zip (101.7 کیلو بایت, 51 نمايش)

  8. #6
    عضو جدید
    تاریخ عضویت
    Feb 2011
    نوشته ها
    19
    تشکر
    9
    تشکر شده 3 بار در 3 پست

    پیش فرض

    آقا چی شد؟

  9. #7
    کاربر علاقه مند
    تاریخ عضویت
    Dec 2010
    نوشته ها
    20
    تشکر
    2
    تشکر شده 0 بار در 0 پست

    پیش فرض

    میشه لطفا هدر رو بذارید؟؟؟؟؟؟

  10. #8
    کاربر علاقه مند
    تاریخ عضویت
    Dec 2010
    نوشته ها
    20
    تشکر
    2
    تشکر شده 0 بار در 0 پست

    پیش فرض

    میشه لطفا هدر رو بذارید؟؟؟؟؟؟

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •