ورود به حساب ثبت نام جدید فراموشی کلمه عبور
برای ورود به حساب کاربری خود، نام کاربری و کلمه عبورتان را در زیر وارد کرده و روی «ورود به سایت» کلیک کنید.





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









اگر فرم ثبت نام برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.









اگر فرم بازیابی کلمه عبور برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.






جهت تبلیغ در وب سایت ECA کلیک کنید.

کاربران برچسب زده شده

نمایش نتایج: از 1 به 6 از 6
  1. #1
    2013/12/20
    13
    0

    اینتراپت LPC 1768

    سلام.
    من دو مشکل برام پیش اومده.
    میخوام در برنامه وقتی اینتراپت خروجی رخ داد مقدار یک متغیر را تغییر دهد. این متغیر باید به صورت سراسری تعریف شود؟ چگونه؟ چون وقتی در main متغیر را تعریف می کنم در ساب روتین اینتراپت متغیر را نمی شناسد.
    دوم این که کدی که باید در ساب روتین اینتراپت انجام بشه زیاده. میخوام در ساب روتین اینتراپت که رفت یک زیر برنامه جدا اجرا بشه. چجوری باید این زیر برنامه رو تعریف و فراخوانی کنم؟
  2. #2
    2016/11/15
    531
    354

    پاسخ : اینتراپت LPC 1768

    نقل قول نوشته اصلی توسط kavous

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

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


    نقل قول نوشته اصلی توسط kavous

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

    دوم این که کدی که باید در ساب روتین اینتراپت انجام بشه زیاده. میخوام در ساب روتین اینتراپت که رفت یک زیر برنامه جدا اجرا بشه. چجوری باید این زیر برنامه رو تعریف و فراخوانی کنم؟
    متوجه نشدم _ یکم توضیح بده لطفا
  3. #3
    2013/12/20
    13
    0

    پاسخ : اینتراپت LPC 1768

    نقل قول نوشته اصلی توسط Amirlopez

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

    اگه متغییرت سراسری هست _ یعنی هر جای برنامه که خواستی روی اون کار کنی _ باید اول برنامه تعریفش کنی _ بعد از معرفی کتابخانه ها و هدرها
    تشکر فراوان.

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

    بعد یه سوال دیگه. برنامه اینتراپت باید قبل از تابع main نوشته بشه یا بعدش؟ چون من قبل از تابع main که مینویسم اجرا نمیشه ولی بعد از تابع main که مینویسم اجرا میشه. چرا اینجوریه؟

    بعد یه سوال دیگه اینه که چجوری میشه یه زیر برنامه تعریف کرد؟ باید از تابع استفاده کنم؟
  4. #4
    2016/11/15
    531
    354

    پاسخ : اینتراپت LPC 1768

    نقل قول نوشته اصلی توسط kavous

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

    واسه قسمت دوم منظورم اینه که اگر کدی که قرار است توی اینتراپت اجرا بشه زیاد و طولانی باشه، مشکلی نداره؟
    نه بعید میدونم مگر اینکه مثالا هنگ کنه ... من که تا حالا چنین مشکلی نداشتم ... اتفاقا چنین برنامه ای که طولانی باشه توی اینتراپت نوشتم ... من با کیل کار میکنم ...

    نقل قول نوشته اصلی توسط kavous

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

    نیازی نیست که توی اینتراپت یه تابع جدا فراخوانی بشه؟
    نه نیازی نیست ... حتی اگر هم تعریف کنی به شرط اینکه درست تعریف کنی بعد از اینکه به اون تابع مراجعه کرد دوباره به اینتراپت بر میگرده و خط بعد از فراخوانی رو اجرا میکنه مثلا تابع Delay


    نقل قول نوشته اصلی توسط kavous

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

    بعد یه سوال دیگه. برنامه اینتراپت باید قبل از تابع main نوشته بشه یا بعدش؟ چون من قبل از تابع main که مینویسم اجرا نمیشه ولی بعد از تابع main که مینویسم اجرا میشه. چرا اینجوریه؟
    نه نه نه باید قبلش نوشته بشه ...البته من همیشه قبلش مینویسم ... از چه نوع وقفه ای استفاده میکنی ؟؟ درست کانفیگش میکنی ؟؟
  5. #5
    2013/12/20
    13
    0

    پاسخ : اینتراپت LPC 1768

    نقل قول نوشته اصلی توسط Amirlopez

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

    از چه نوع وقفه ای استفاده میکنی ؟؟ درست کانفیگش میکنی ؟؟
    از اینتراپت خارجی 1 (P0.11) استفاده کردم.

    کد هم اینه:
    #include "LPC17xx.h"
    #include "delay.h"
    int a=1;


    int main(void)
    {
    SystemInit();

    LPC_SC->EXTINT = 1<<1;
    LPC_PINCON->PINSEL4 =1<<22;
    LPC_SC->EXTMODE = 1<<1;
    LPC_SC->EXTPOLAR = 1<<1;


    LPC_GPIO2->FIODIR=1<<0;
    LPC_GPIO0->FIODIR=1<<0;

    LPC_GPIO2->FIOSET=1<<0;
    LPC_GPIO0->FIOSET=1<<0;


    NVIC_EnableIRQ(EINT1_IRQn);

    while(1)
    {
    if (a==1)
    {
    LPC_GPIO2->FIOSET=1<<0;
    LPC_GPIO0->FIOCLR=1<<0;
    delay_ms(500);
    LPC_GPIO2->FIOCLR=1<<0;
    LPC_GPIO0->FIOSET=1<<0;
    delay_ms(500);
    }
    else if (a==0)
    {
    LPC_GPIO2->FIOCLR=1<<0;
    LPC_GPIO0->FIOCLR=1<<0;
    }


    }
    }


    void EINT1_IRQHandler(void)
    {

    if (a==1)
    {
    a=0;
    }
    else if (a==0)
    {
    a=1;
    }
    delay_ms(100);
    LPC_SC->EXTINT = (1<<1); /* Clear Interrupt Flag */
    }


  6. #6
    2008/04/02
    34
    10

    پاسخ : اینتراپت LPC 1768




    #include "LPC17xx.h"
    #include "delay.h"
    int a=1;
    unsigned char a_toggle = 0x00;


    void EINT1_IRQHandler(void)
    {


    if (a==1)
    {
    a=0;
    }
    else if (a==0)
    {
    a=1;
    }
    //delay_ms(100);big wrong
    a_toggle = 1;
    LPC_SC->EXTINT = (1<<1); /* Clear Interrupt Flag */
    }
    //--
    void check_a_is_toggled(void)
    {
    if(a_toggle)
    {
    delay_ms(100);
    a_toggle = 0;
    }
    //--
    return;
    }
    //--
    int main(void)
    {
    SystemInit();


    LPC_SC->EXTINT = 1<<1;
    LPC_PINCON->PINSEL4 =1<<22;
    LPC_SC->EXTMODE = 1<<1;
    LPC_SC->EXTPOLAR = 1<<1;




    LPC_GPIO2->FIODIR=1<<0;
    LPC_GPIO0->FIODIR=1<<0;


    LPC_GPIO2->FIOSET=1<<0;
    LPC_GPIO0->FIOSET=1<<0;




    NVIC_EnableIRQ(EINT1_IRQn);


    while(1)
    {
    //--
    check_a_is_toggled();
    //--
    if (a==1)
    {
    LPC_GPIO2->FIOSET=1<<0;
    LPC_GPIO0->FIOCLR=1<<0;
    delay_ms(500);
    LPC_GPIO2->FIOCLR=1<<0;
    LPC_GPIO0->FIOSET=1<<0;
    delay_ms(500);
    }
    else if (a==0)
    {
    LPC_GPIO2->FIOCLR=1<<0;
    LPC_GPIO0->FIOCLR=1<<0;
    }




    }
    }





نمایش نتایج: از 1 به 6 از 6

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

  1. اینتراپت
    توسط stooy در انجمن میکروکنترلرهای AVR
    پاسخ: 8
    آخرين نوشته: 2015/08/21, 13:41
  2. اینتراپت
    توسط sejil در انجمن STM
    پاسخ: 5
    آخرين نوشته: 2015/07/22, 08:17
  3. اینتراپت
    توسط SILVER MAN در انجمن میکروکنترلرهای AVR
    پاسخ: 30
    آخرين نوشته: 2013/12/31, 14:08
  4. اینتراپت
    توسط reza kazemi1368 در انجمن پروسسورهای ARM
    پاسخ: 10
    آخرين نوشته: 2012/04/14, 21:57
  5. اینتراپت
    توسط aparsa در انجمن رباتيك و مكاترونيك
    پاسخ: 3
    آخرين نوشته: 2009/09/27, 09:27

کلمات کلیدی این موضوع

علاقه مندي ها (Bookmarks)

علاقه مندي ها (Bookmarks)

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

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