اطلاعیه

Collapse
No announcement yet.

کمک iopin

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

    کمک iopin

    اول یه سوال داشتم چرا موضوم رو حذف کردید؟
    دوم مشکلم رو دوباره مطرح میکنم
    من با keil برای lpc 2104 برنامه نوشتم
    که به وسیله یک کلید که به پورت 0 پین 0 وصله بتونه تمام پینهای دیگه رو روشن کنه
    اما مشکل ایجاست که وقتی میخوام پین 0 رو چک کنه کل پورت رو با دستورIOPIN چک میکنه واین کارمو خراب میکنه
    حلقه if قاطی میکنه وهمه پینها روشن خاموش میشن
    میخاستم بدونم دستور خاصی برای چک کردن یک پین خاص هست یا هتا برای خروجی گرفتن از اون
    مثلا تو codevision
    PORTX.X
    PINX.X
    بود اینجا هم چیزی هست که بشه این کارو کرد مثلا مثل:
    IOPIN0.0
    IOSET0.0
    اگه همچین چیزی نیست میشه رتهنمایی کنید چطور میتونم با یه طرفند این کارو انجام بدم ؟
    اینم برنامم:
    if(IOPIN==0x00000001)
    {
    IOSET=0xFFFFFFFF;
    }
    else
    {
    IOCLR=0xFFFFFFFF;
    };
    مرسی
    اشکهایی که پس از هر شکست میریزیم همان عرقیست که برای پیروزی نریخته ایم.
    هیتلر

    #2
    پاسخ : کمک iopin

    سلام
    من با سری های فیلیپس کار نکرده ام و با اتمل کار می کنم. اما در هر صورت در میکرو های arm7 دسترسی بیتی وجود ندارد و برای رفع این وضعیت بهتر است شما اول اون رجیستر IOPIN را برای چک کردن پین 0 با 0x00000001 AND منطقی کنید بعد شرط را چک کنید.
    کد:
    if((IOPIN&0x00000001)==0x00000001)
    {
    IOSET=0xFFFFFFFF;
    }
    else
    {
    IOCLR=0xFFFFFFFF;
    };

    دیدگاه


      #3
      پاسخ : کمک iopin

      خوب اول از همه شما باید با استفاده از دو رجیستر PINSEL0و 1 انتخاب کنید که هر پین در کدام حالت باشد . بعد زمانی که پین مورد نظر رو در حالت GPIO قرار دادید . با ید برید سراغ IODIR و ورودی و خروجی هر کدام از پین ها را مشخص کنید .
      و در اخر هم حالت اولیه را با استفاده از IOSET و یا IOCLR . و برای خواندن از روی یک پین هم از IOPIN می توان استفاده کرد .
      خوب حالا اگر که باز هم مشکلت حل نشد برنامه رو بزار تا تغییر بدم .

      دیدگاه


        #4
        پاسخ : کمک iopin

        نوشته اصلی توسط حامد AT91
        سلام
        من با سری های فیلیپس کار نکرده ام و با اتمل کار می کنم. اما در هر صورت در میکرو های arm7 دسترسی بیتی وجود ندارد و برای رفع این وضعیت بهتر است شما اول اون رجیستر IOPIN را برای چک کردن پین 0 با 0x00000001 AND منطقی کنید بعد شرط را چک کنید.
        کد:
        if((IOPIN&0x00000001)==0x00000001)
        {
        IOSET=0xFFFFFFFF;
        }
        else
        {
        IOCLR=0xFFFFFFFF;
        };
        lممنون حامد جان کار کرد دستت درد نکنه :nice:...مهدی جان روش شمارو هم امتحان میکنم..اما من دقیقا نفهمیدم چی شد میسه یه توضیح کوچیک بدبد :redface:
        اشکهایی که پس از هر شکست میریزیم همان عرقیست که برای پیروزی نریخته ایم.
        هیتلر

        دیدگاه


          #5
          پاسخ : کمک iopin

          من حرف اضافه تری نسبت به اقا حامد نگفتم و فکر می کردم که توی رجیستر ها مشکل داری ولی اقا حامد در اصل کامل تر گفتند .

          دیدگاه


            #6
            پاسخ : کمک iopin

            نوشته اصلی توسط مهدی کربلایی
            من حرف اضافه تری نسبت به اقا حامد نگفتم و فکر می کردم که توی رجیستر ها مشکل داری ولی اقا حامد در اصل کامل تر گفتند .
            مهدی جان من دنبال کاری که گفتید رفتم توکتاب نوشته:به منظور مهوه عملکرد پورت
            اما راستش مثال هارم دیدم دقیق نفهمیدم :angry: از این روش چطور میشه این کارو کرد..اگه توضیح بدید که خییییییییلییییی منمنون میشم :redface:
            اشکهایی که پس از هر شکست میریزیم همان عرقیست که برای پیروزی نریخته ایم.
            هیتلر

            دیدگاه


              #7
              پاسخ : کمک iopin

              شماتیکت رو بزلر و بگو که می خواهی چه کنی تا یه برنامه براش بنویسمو از رو اون با هم پیش بریم.

              دیدگاه


                #8
                پاسخ : کمک iopin

                راستی برای اینکه پاسخ بهتری بگیری افراد بیشتری این تاپیک روببینند مب بایستی که تو بخش NXP می زاشتی

                دیدگاه


                  #9
                  پاسخ : کمک iopin

                  نوشته اصلی توسط مهدی کربلایی
                  راستی برای اینکه پاسخ بهتری بگیری افراد بیشتری این تاپیک روببینند مب بایستی که تو بخش NXP می زاشتی
                  شرمنده دوست عزیز حواسم نبود :redface:داداشم این فایل رو اپدیت کردم
                  http://www.mediafire.com/?2hhfdej7c9cl2ze
                  اینم لینکش
                  حجمش 96 kb
                  فقط من برنامرو طبق فرمایش اون دوستمون تغییر دادم فعلن خوبه اما اگه بتونم با فرمایش شما هم کار کنم خیلی عالی میشه
                  مچکرم
                  اشکهایی که پس از هر شکست میریزیم همان عرقیست که برای پیروزی نریخته ایم.
                  هیتلر

                  دیدگاه

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