اطلاعیه

Collapse
No announcement yet.

دسترسی راحت به پورتهای arm

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

    دسترسی راحت به پورتهای arm

    سلام
    با توجه به اینکه تازه یک ev bord (میکروکنترلر lpc23xx ) برای arm تهیه کردم ( قرض گرفتم ) و قصد شروع به کار حرفه ای باهاش را دارم و دیگه اینکه از باسکام دارم سوئیچ میکنم روی keil یکسری سوال برام پیش اومده که مهمترینش ( البته با توجه به ساختاری فکری قبلی از باسکام ) اینه که چطوری مثلا پایه شماره 34 میکرو را دسترسی بهش داشته باشم و بتونم مثلا در برنامه ای ساده اون پورت را خاموش روشن کنم ( برای شروع)

    توی مثالهایی که داشتم مثلا اومده بود 0X000xyz را به پورت ارسال کرده بود ، میخواستم ببینم مثل زبان باسکام این پایه ها اسم ندارند مثلا Pin34
    آن دم که مرا مي زده بر خاک سپاريد زير کفنم خمره اي از باده گذاريد
    تا در سفر دوزخ از اين باده بنوشم
    آنلحظه که با دوزخيان کنم ملاقات يک خمره شراب ارغوان برم به سوغات
    هرقدر که در خاک ننوشيدم از اين باده صافي ، بنشينم و با دوزخيان کنم تلافي

    #2
    پاسخ : دسترسی راحت به پورتهای arm

    آقا من بد سوالمو توضیح دادم یا راه حل خاصی نداره ؟ :smile:
    آن دم که مرا مي زده بر خاک سپاريد زير کفنم خمره اي از باده گذاريد
    تا در سفر دوزخ از اين باده بنوشم
    آنلحظه که با دوزخيان کنم ملاقات يک خمره شراب ارغوان برم به سوغات
    هرقدر که در خاک ننوشيدم از اين باده صافي ، بنشينم و با دوزخيان کنم تلافي

    دیدگاه


      #3
      پاسخ : دسترسی راحت به پورتهای arm

      پایه های میکرو کنترلر arm فقط از طریق رجیسترشون (که 32 بیتی هستن) قابل دسترسی هستن . برای همین به پوینتر اون رجیستر یک مقدار نسبت میدن (مثل همونی که شما نوشتید) و دستور مشابه بسکام نمیشه استفاده کرد .
      البته نوشتن یه کتابخونه برای این کار محال نیست ولی خیلی وقت گیره و برای هر میکرویی باید یه تغییراتی اعمال کنید (اسم رجیستر ها فرق داره) البته من توصیه نمیکنم وقتتون رو برای این کارها تلف کنید . به هر حال کسانی که با میکروکنترلر های آرم کار میکنن دیگه نباید دید آماتوری داشته باشن . اگه بخواید با میکرو های دیگه (مثلا موتورولا یا فری اسکیل) هم کار کنید همین موارد براتون پیش میاد چون استانداردش کار با رجیسترهاست نه استفاده از تابع های آماده اونم در حد بسکام .

      دیدگاه


        #4
        پاسخ : دسترسی راحت به پورتهای arm

        انگار جناب 1nafar برای مدل شرکت اتمل یکی نوشتن امروز ریلیز کردند

        http://iranmicro.ir/forum/showthread.php?t=3704
        سلام
        اگه خدا قبول کنه من یه دونه هدر برای واحد PIO نوشتم ، این هدر شامل دستورات زیر هست :
        PORTX_OUTPUT=VAR
        PORTA_INPUT=VAR
        این دو تا دستور برای پیکربندی پورت در حالت ورودی یا خروجی به کار میرن ، VAR ادرس پایه های مورد نظر به فرم هگز هست .
        در صورتی که پایه رو به عنوان خروجی پیکربندی کنید :
        SET_PORTB=VAR
        RST_PORTB=VAR
        دستور اول پایه های که ادرشون به جای VAR قرار میگره رو روشن و دستور دوم اونا رو خاموش میکنه ، شما همچنین میتونید از دستور کد ویژنی زیر هم استفاده کنید :
        PORTX=VAR
        در صورتی که ادرس VAR رو به این دستور بدید ، پایه ها روشن و اگر نات آدرس VAR رو به دستور بدید پایه ها خاموش میشه .
        در صورتی که پایه به عنوان ووردی معرفی بشه ، وضعیت اون در ارگومان PINX(Y) قرار میگره و شما میتونید با دستورات شرطی وضعیت پایه رو چک کنید . در این دستور نیازی به فعال کردن کلاک PIO و... وجود نداره و تمام کار ها در داخل هدر انجام میشه .
        برای فعال سازی مقاومت های PULL UP میتونید از دستور زیر استفاده کنید :
        PULL_UP_X=VAR
        VAR ادرس پایه های هست که قرار مقاومت های اونا فعال بشه و X هم اسم پورت هست .
        توی این هدر سایر دستورات مربوط به پورت ها نظیر فعال سازی حالت درین باز ، فعال سازی فیلتر ورودی ، کنترل کردن وقفه ها و... هم وجود داره که بعدا خودتون بخونیدش .
        در زیر فایل هدر به نام pio.h و یک پروزه ی عملی وجود داره . این پروژه با برد آموزشی eke2sam7 ساز گار هست .
        بعد از برنامه ریزی فایل هگز 8 تا led موجود بر روی برد شروع به چشمک زدن میکنه ، با کلید های sw3 , 4 میتونید الگوی چشمک زدن و با کلید های sw1,2 میتونید سرعت اون رو تغییر بدید .

        این هدر قرار روز جمعه و همراه با ویرایش دوم مجله ی ppm2 منتشر بشه ، در صورتی که در هدر خطایی بود ، یا شکل دستوری عوض بشه بهتره یا ... همین جا مطرح کنید
        فکر کنم باید یکی برای LPC ها خودم بنویسم با این اوضاع احوال :(
        آن دم که مرا مي زده بر خاک سپاريد زير کفنم خمره اي از باده گذاريد
        تا در سفر دوزخ از اين باده بنوشم
        آنلحظه که با دوزخيان کنم ملاقات يک خمره شراب ارغوان برم به سوغات
        هرقدر که در خاک ننوشيدم از اين باده صافي ، بنشينم و با دوزخيان کنم تلافي

        دیدگاه


          #5
          پاسخ : دسترسی راحت به پورتهای arm

          من منظورت رو نفهمیدم چی میگی

          برای lpc ها که این در کیل هستش مثلا

          IO0DIR=0x22
          منظورت این بود ؟

          دیدگاه

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