اطلاعیه

Collapse
No announcement yet.

آموزش ARM به زبان ساده

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

    #16
    پاسخ : آموزش ARM به زبان ساده

    اگر دقت کرده باشید برای فعال کردن کلاک باید بنویسید
    AT91_BASE_PMC -> PMC_PCER=(1<<AT91C_ID_PIOA
    که اینجا pio مخفف parallel input\out put هست پس چه در حالت خروجی و چه ورودی باید ازش استفاده کرد.a هم که مربوط به پورت a میشه

    دیدگاه


      #17
      پاسخ : آموزش ARM به زبان ساده

      [glow=red,2,300][move]استفاده از پایه های میکرو در حالت A یا B [/move]

      سلام ....
      همان طور که گفته شد هر پایه میکرو میتواند 3 حالت مختلف بسته به نوع کاربرد داشته باشد که امروز درباره حالت B توضیح داده میشه . اگه بخوایم یه مثال ساده درباره این بزنیم مثل همین ماشین حساب های مهندسی که مثلا کنار دکمه sin اگر نگاه کنید عبارت sin رو هم نوشته در واقع داره میگه کاربرد ان دکمه دوتاس یکی sin و دیگر sin هست که تو حالت عادی این دکمه همون عملیات سینوس رو انجام میده اما اگه مثلا shift رو بزنید حالا این دکمه کار sin رو براتون انجام میده خوب داخل این میکرو های ارم همه پایه هاش همین جوری هست یعنی یه پایه میتونه تقریبا 3 تا کاربرد مختلف رو داشته باشه . بجز ورودی / خروجی دو تا کاربرد دیگه هر پایه رو میتونید در صفحه 130 و در جدول 4-14 مشاهده کنید .مثلا داخل همون جدول PA0 اگر در وضعیت A استفاده بشه در حکم پایه خروجی برای پالس های PWM0 استفاده میشود . (PWM در واقع یه پالس تکرار شونده هست که فرکانس اون ثابت هست ولی دیوتی سایکلش متغیر هست )
      حالا فرض کنید از پایه PA0(پایه صفرام میکرو ) میخوایم به عنوان خروجی PWM0 استفاده کنیم برای این کار باید مراحل زیر طی بشه

      1- اولین گام باید با توجه به جدول 4-7 صفحه 118 بسته به نوع کاربرد پایه ؛ کلاکش رو فعال کنید مثلا اگه در جدول 4-7 نگاه کنید برای PWM باید بیت 10 رجیستر PIO_PCER رو یک کرد پس باید بنویسیم :
      کد:
      AT91C_BASE_PIO->PIO_PCER=(1<<10)

      2- در مرحله بعد باید ورودی / خروجی مربوط به همون پایه رو غیر فعال کرد برای این کار از رجیستر PIO_PDR استفاده میشه و چون با پایه PA0 (پایه صفرام میکرو ) کار میکنیم پس باید بیت 0 ام از رجیستر PIO_PDR یک کرد تا PA0 از حالت ورودی/خروجی غیر فعال شود پس می نویسیم :
      کد:
      AT91C_BASE_PIO->PIO_PDR=(1<<0)

      3- حالا باید به میکرو حالی کینم میخوایم از وضعیت A یا B استفاده کنیم برای این کار باید از رجیستر PIO_MDER استفاده کنیم . باید این هم بگم با این کار میکرو تازه میفهمه که شما میخواید از حالت A یا B استفاده کنید اما بیچاره نمیدونه حالا A هست یا B . این حالی کردن که A هست یا B با یه رجیستر دیگه هست. چون با PA0 (پایه صفرام میکرو ) کار میکنیم پس باید بیت 0 ام از رجیستر PIO_MDER رو یک کینم پس تا میکرو بفهمه میخوایم از حالت A یا B استفاده کینم پس می نویسیم :
      کد:
      AT91C_BASE_PIO->PIO_MDER=(1<<0)

      4- برای این که مشخص کنیم از حالت A یا B از دوتا رجیستر به طور جدا برای هر کدام استفاده میشه .
      اگر از حالت A باشه از رجیستر PIO_ASR استفاده کرد .
      اگر از حالت B باشه باید از رجیستر PIO_BSR استفاده کرد.
      و چون الان PWM0 مربوط به حالت A هست پس باید از رجیستر PIO_ASR استفاده کرد و چون مربوط به پایه PA0 هست (طبق جدول 4-14 صفحه 130) پس باید بیت 0 ام از این رجیستر رو یک کرد پس مینوسیم :
      کد:
      AT91C_BASE_PIO->PIO_ASR=(1<<0)

      خوب دیگه فکر کنم تموم شد ........ :agree: برای هر پایه در حالت B هم همین مراحل هست فقط در قسمت 4 باید از رجیستر PIO_BSR استفاده کرد .


      مصادیق اظهار محبت به همسر
      بررسی مسائل جنسی در زندگی زناشویی(فایل صوتی)
      ویژگی های خانواده سالم - مصادیق احترام (فایل صوتی)
      اثر قصه گویی برای کودکان

      دیدگاه


        #18
        پاسخ : آموزش ARM به زبان ساده

        دوستان واقعا دمتون گرم من همیشه شنیده بودم راه اندازی arm خیلی سخته و یه مقدار می ترسیدم برم جلو تا این شد که تاپیک شما رو خوندم واقعا فهمیدم که یاد گرفتنش اونچنان هم سخت نیست فصل های 1 و2 و3 کتاب مرجع میکرو کنترلر های arm واقعا وقتی می خوندم از کل مطالب شاید حدود 30 درصدش رو می فهمیدم یه مقدار گیج کننده هست دوستان ایا دونستن تکنولوژی ساخت و از این جور چیزها فایده ای هم داره در کل از کدوم فصل شروع کنم به خوندن البته شروع کردم از فصل 4 ولی می ترسم نکته هایی توی 3 فصل قبل باشه که من نخونده باشم لطفا راهنماییم کنید ممنون
        قم الکترونیک

        دیدگاه


          #19
          پاسخ : آموزش ARM به زبان ساده

          سلام به دوستان
          من این سایت رو پیشنهاد میکنم حتمان ببینید
          www.armcenter.org
          آموزش هاش از پایه ای ترین سطح شروع شده تا سطح حرفه ای و واقعا کامل هست مخصوصا برای دوستانی که به زبان c تسلط ندارن.
          www. a r m c e n t e r. o r g

          دیدگاه


            #20
            پاسخ : آموزش ARM به زبان ساده

            سلام به دوستان به خصوص جناب روزی طلب که سابقه زیادی در کار با ارم دارند(رفیق قدیمیم)
            هر ارم دستورات پیکر بندی خودش داره.
            بین سه مدل ارم lpc از همه قوی تر و روان تر هست.
            نرم افزار armwizard
            می تونه کمکتون کنه.

            دیدگاه

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