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

موضوع: راه اندازی pmc برای twi

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

    Gadid راه اندازی pmc برای twi

    برای اینکه بخوام از قابلیت های جانبی میکروی at91 مثل I2C استفاده کنم باید قسمت PMC مربوط به این واحد رو فعال کنم، می خواستم بدونم مراحل فعال سازی PMC واسه ی I2C چطوریه.

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

  3. #2
    مدير بخش STM32 sadmonew آواتار ها
    تاریخ عضویت
    Jun 2011
    نام
    صادق محمدي
    نوشته ها
    2,002
    تشکر
    6,283
    تشکر شده 3,115 بار در 1,408 پست

    پیش فرض

    با سلام
    شما لطفا لينك زير رو يه نگاه بندازيد. پست شماره 6# . در مورد نحوه راه اندازي I2C توضيح كاملي قرار داده شده.
    http://www.iranmicro.ir/forum/showth...8445#post28445


    ________________________
    برنامه نويسي، الكترونيك(PE)
    ________________________

  4. #3
    عضو جدید
    تاریخ عضویت
    Aug 2011
    نوشته ها
    5
    تشکر
    1
    تشکر شده 0 بار در 0 پست

    پیش فرض

    تو لینکی که قرار دادین پروتکلi2c رو به صورت نرم افزاری پیاده کرده و از سخت افزار i2c میکرو استفاده ای نشده.
    ولی سوال من در مورد راه اندازی خود سخت افزار i2c میکرو هستش.

    برنامه ی نوشته شده تو لینک بالا رو هم امتحان کردم ولی جواب نگرفتم ازش .

    مرسی

  5. #4
    مدیرکل انجمنها agape آواتار ها
    تاریخ عضویت
    Feb 2009
    نام
    Zeus
    نوشته ها
    1,235
    تشکر
    139
    تشکر شده 2,209 بار در 846 پست

    پیش فرض

    برای چه موردی میخواید ازش استفاده کنید ؟
    برنامه لینک بالا رو خودم نوشتم و جواب هم گرفتم
    در مورد راه اندازی درگاه خود میکرو متاصفانه جواب نگرفتم هنوز وقت هم زیاد ندارم که زود به پایانش برسونم ولی اگر سوالی دارید بفرمایید در خدمتم من رجیستر ها رو مطالعه کردم و تقریبا میدونم چی یه چی هست

  6. #5
    عضو جدید
    تاریخ عضویت
    Aug 2011
    نوشته ها
    5
    تشکر
    1
    تشکر شده 0 بار در 0 پست

    پیش فرض

    می خوام سنسور فاصله یاب srf02 رو با i2c میکرو راه اندازی کنم، برنامه ای که شما نوشته بودین رو هم امتحان کردم ولی جواب نگرفتم

  7. #6
    عضو جدید
    تاریخ عضویت
    Aug 2011
    نوشته ها
    5
    تشکر
    1
    تشکر شده 0 بار در 0 پست

    پیش فرض

    دستوری که تو هدر lib_AT91SAM7X256.h واسه ی فعال کردن PMC واسه ی I2C هستش دستور زیره

    AT91F_TWI_CfgPMC();

    آیا تنظیمات دیگه ای هم واسه ی فعال سازی این بخش باید نوشته بشه؟

  8. #7
    مدیرکل انجمنها agape آواتار ها
    تاریخ عضویت
    Feb 2009
    نام
    Zeus
    نوشته ها
    1,235
    تشکر
    139
    تشکر شده 2,209 بار در 846 پست

    پیش فرض

    روند کار به این صورت هست
    اول کلاک قسمت TWI رو وصل میکنی با مقدار دهی کردن رجیستر PMC
    دوم کلاک قسمت PIO مربوطه رو هم با مقدار دهی PMC وصل میکنی
    سوم رجیستر کنترلی رو مقدار دهی میکنی که مستر باشه و کلاک رو انتخاب میکنی
    چهارم آدرس اسلیو رو تو رجیستر ارسال می نویسی و مقدار بایتی که باید فرستاده بشه چون بر خلاف AVR این میکرو آدرس و بایت رو با هم میگیره یعنی هم آدرس اسلیو رو میخواد و هم اونم بدون بیت R\W ، مثلا آدرس آیسی حافظه سری 24 مقدار 0xA0 هست ولی وقتی میخوای برای آدرس در این آی سی ازش استفاده کنی آدرشو باید به صورت 0x50 بدی که آیسی جواب بده .
    به مثال برات می فرستم ببین:
    کد:
    AT91C_BASE_PMC->PMC_PCER = (1 << AT91C_ID_TWI);// POWER ON TWI UNIT
     TWI_Configure_PIO_MAKS(TWI_PIO,TWI_PIO_MASK); // PIO INIT UNIT
     TWI_ConfigureMaster(AT91C_BASE_TWI,100000,48000000);
    
       AT91C_BASE_TWI->TWI_MMR = 0;
        AT91C_BASE_TWI->TWI_MMR = (2 << 8) | AT91C_TWI_MREAD | (0x50<< 16);
    
       // Set internal address bytes
        AT91C_BASE_TWI->TWI_IADR = 0;
    
        // Send START condition
        AT91C_BASE_TWI->TWI_CR = AT91C_TWI_START;
    
         for(W=0;W<3;W++){
             while(!((AT91C_BASE_TWI->TWI_SR&AT91C_TWI_RXRDY)==0));
             buf[W]=AT91C_BASE_TWI->TWI_RHR; 
         }
        TWI_Stop(AT91C_BASE_TWI);

  9. کاربران : 2 تشکر کرده اند از شما agape برای ارسال این پست سودمند:


  10. #8
    عضو جدید
    تاریخ عضویت
    Aug 2011
    نوشته ها
    5
    تشکر
    1
    تشکر شده 0 بار در 0 پست

    پیش فرض

    خیلی ممنون

    یه سوال دیگه ای که دارم اینه که کار Internal Device Address Register Size چیه؟

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

  1. ره اندازی smt160 با پورت موازی
    توسط M.ABDOLLAHI در انجمن AVR
    پاسخ: 3
    آخرين نوشته: 27-04-2009, 21:34

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

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