اطلاعیه

Collapse
No announcement yet.

تابع و تغریف پورت

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

    تابع و تغریف پورت

    سلام.
    من یه تابع برای اسکن کیپد نوشتم (کدویژن) حالا میخوام تبدیل به کتابخونه کنم ولی یه مشکل دارم.
    میخوام پایه های کیپد رو تو برنامه مشخص کنم مثلا وقتی نوشتم 1,1 منظور اینه که پایه یک از کیپد به پورت a پین 1 متصل شده.
    چطوری میتونم این کار رو بکنم؟

    #2
    پاسخ : تابع و تغریف پورت

    این همه مهندس تو سایت هستن که این همه کتابخونه نوشتن.
    هیچکدوم نمیتونن جواب منو بدن؟؟

    دیدگاه


      #3
      پاسخ : تابع و تغریف پورت

      ولله این سئوال جواب سختی نداره. شاید جسارتا یک مقداری بیخودی بنظر بیاد. یا جذبه کافی نداره که کسی جواب نداده. اما راه حل های متعدد و ساده ای هم میشه براش درآورد. مثلا شما میتونی یک جدول متشکل از آدرس پورتها رو در برنامه ات قرار بدی و اندیس بایت و بیت دلخواه رو در برنامه ات استفاده کنی. مثلا 1 برای porta و 2 برای portb و الی آخر. منتهی آی سی به آی سی متفاوت میشه.یعنی کتابخونه ای داری که برای هر مدل آی سی بایستی دوباره کامپایل بشه. البته در کد ویژن این مشکلی نداره اما کسی به این بطور عمومی تابع کتابخانه ای نمیگه.

      دیدگاه


        #4
        پاسخ : تابع و تغریف پورت

        نوشته اصلی توسط reza_agha
        ولله این سئوال جواب سختی نداره. شاید جسارتا یک مقداری بیخودی بنظر بیاد. یا جذبه کافی نداره که کسی جواب نداده. اما راه حل های متعدد و ساده ای هم میشه براش درآورد. مثلا شما میتونی یک جدول متشکل از آدرس پورتها رو در برنامه ات قرار بدی و اندیس بایت و بیت دلخواه رو در برنامه ات استفاده کنی. مثلا 1 برای porta و 2 برای portb و الی آخر. منتهی آی سی به آی سی متفاوت میشه.یعنی کتابخونه ای داری که برای هر مدل آی سی بایستی دوباره کامپایل بشه. البته در کد ویژن این مشکلی نداره اما کسی به این بطور عمومی تابع کتابخانه ای نمیگه.
        سلام.
        من تازه کار رو با کدویژن شروع کردم.
        من میخوام یه کتابخونه مثل کتابخونه LCD تو بیسکام بنویسم که میشه هر پایه از LCD رو به هر پایه از میکرو متصل کرد.

        دیدگاه


          #5
          پاسخ : تابع و تغریف پورت

          در کد ویژن یک سری پین برای کار با مثلا lcd پیش بینی شده که ترتیب و محل اونها ثابته فقط اینکه از چه پورتی استفاده میشه قابل تغییره. اینقدر قابل تغییر نیست که مثلا پایه EN روی پورت A باشه و پایه RS روی پورت B. ضمنا انجام این تغییرات چون منجر به تغییر سخت افزار میشه عملا احتیاجی به قابل تغییر بودن توسط کد در زمان اجرا نداره. فقط بایستی در زمان کامپایل این تغییرات معرفی بشه. برای یک همچین کاری درخواست شما اشتباهه (یا شاید من اشتباه فهمیدم) اگر منظورتون این باشه شما کافیه چهار پورت رو به همراه بیت هاش معرفی کنین. مثلا:

          KEYPAD_ROW0_PIN تا KEYPAD_ROW3_PIN و برای هرکدوم پورت و شماره پین مربوطه رو معرفی کنین که خیلی شلوغ پلوغ میشه. میتونین کد دسترسی برای نوشتن روی کی پد و خوندن از اون رو از کاربر درخواست کنین. مثلا فرض کنین که یک روال بایستی به اسم write_keypad , read_keypad نوشته بشه ولی این روالها بایستی توسط برنامه شما نوشته بشه و کتابخانه شما از این توابع برای دسترسی به کیپد استفاده کنه. در اینصورت اصلا کیپد احتیاجی به دونستن اینکه کدوم پین به کجا وصل شده نداره.

          دیدگاه

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