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

موضوع: برد ميكرو ورودي را نميخواند:لطفا راهنمايي كنيد

  1. #1
    تازه وارد
    تاریخ عضویت
    Aug 2010
    نوشته ها
    1
    تشکر
    0
    تشکر شده 0 بار در 0 پست

    Gadid برد ميكرو ورودي را نميخواند:لطفا راهنمايي كنيد

    با سلام
    برد ميكرو ورودي هيچ برنامي اي را قبول نميكند هم براي كي پد و هم براي كليد.لطفا راهنمايي كنيد.
    #include "AT91SAM7X256.h"
    #include "lib_AT91SAM7X256.h"
    int main (void){

    AT91F_PIO_CfgOutput( AT91C_BASE_PIOB, AT91C_PIO_PB0);
    AT91F_PIO_CfgInput( AT91C_BASE_PIOB, AT91C_PIO_PB1);
    ( AT91F_PIO_GetInput( AT91C_BASE_PIOB) , 0x02) ;
    AT91F_PIO_CfgPullup( AT91C_BASE_PIOB, AT91C_PIO_PB1);
    AT91F_PIO_SetOutput ( AT91C_BASE_PIOB, AT91C_PIO_PB0);
    while (1){
    if ((AT91F_PIO_GetInput(AT91C_BASE_PIOB) & 0x02 ) == (0) ) {
    AT91F_PIO_ClearOutput ( AT91C_BASE_PIOB, 0x01);
    }
    }

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

  3. #2
    همکار M3R آواتار ها
    تاریخ عضویت
    Aug 2009
    نام
    مسعود
    نوشته ها
    710
    تشکر
    426
    تشکر شده 649 بار در 304 پست

    پیش فرض

    منظورتون رو متوجه نمیشم!!!
    شما میخوای ورودی رو از میکرو سوئیچ بخونی و 0 و 1 رو تشخیص بدی؟
    اگه برای اینکار میخوایی باید برنامه رو به شکل زیر بنویسی :
    کد:
    #include <AT91SAM7X256.h>
    #include <LIB_AT91SAM7X256.h>
    #include <delay.h>
    int main (void){
    AT91F_PIO_CfgOutput (AT91C_BASE_PIOB,AT91C_PIO_PB19);
    AT91F_PMC_EnablePeriphClock(AT91C_BASE_PMC, 1 << AT91C_ID_PIOA); 
    AT91F_PIO_CfgInput (AT91C_BASE_PIOA,AT91C_PIO_PA27);
    while(1){
    if ((AT91F_PIO_GetInput(AT91C_BASE_PIOA) & AT91C_PIO_PA27) == 0)
    AT91F_PIO_SetOutput (AT91C_BASE_PIOB,AT91C_PIO_PB19);
    else
    AT91F_PIO_ClearOutput (AT91C_BASE_PIOB,AT91C_PIO_PB19);
    }}
    مشکل شما فقط اینه که دستور :
    کد:
    AT91F_PMC_EnablePeriphClock(AT91C_BASE_PMC, 1 << AT91C_ID_PIOA);
    رو اجرا نکردید.با اجرای این دستور کلاک پورت فعال میشه و شما میتونید ورودی رو بخونید.
    در ضمن پیشنهاد میکنم از هدر pio.h استفاده کن.دستورات خیلی کاهش پیدا میکنه و به خاطر سپردنشون آسون تر میشه.برای آشنایی با این هدر یه سری به پست زیر بزن:
    هدر خلاصه کننده دستورات پورت

    موفق باشی

  4. تشکرها از این نوشته :


موضوعات مشابه

  1. راهنمايي براي قفل كردن ميكرو
    توسط SMRS در انجمن AVR
    پاسخ: 20
    آخرين نوشته: 26-10-2014, 00:36
  2. پاسخ: 6
    آخرين نوشته: 06-01-2013, 13:53
  3. گرد همايي اعضاي ايران ميكرو
    توسط armstk در انجمن اطلاعیه ها و اخبار سایت
    پاسخ: 75
    آخرين نوشته: 04-04-2012, 20:33
  4. تغذيه ميكرو و ريست ميكرو
    توسط safavism در انجمن AVR
    پاسخ: 11
    آخرين نوشته: 27-07-2011, 20:07
  5. ميكرو كنترلر ها و ميكرو پروسسور
    توسط ROBOTICS در انجمن پیشنهادات ،انتقاد و نظرات شما در مورد انجمن
    پاسخ: 1
    آخرين نوشته: 09-01-2010, 23:10

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

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