اطلاعیه

Collapse
No announcement yet.

بیاید این چهار خط کد رو برسی کنیم uart->IRQ

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

    بیاید این چهار خط کد رو برسی کنیم uart->IRQ

    سلام

    من دارم روی uart کار میکنم و با cmsis یوارت 0 و irq اون رو فعال کردم(از برنامه های اماده کمک گرفتم) و مرحله بعد uart 1 رو راه انداختم و حالا میخام irq1 رو فعال کنم که نمیدونم چکار کنم!
    به فکرم رسید که از همون کد irq0 استفاده کنم و تغیرش بدم که ارور میده و نمیشه و تضمیم گرفتم بدونم کار این زیر برنامه چیه که متوجه نمیشم و نیازمند کمک شما هستم!
    این کد
    void UART0_IRQHandler(void)
    {
    uint32_t intsrc, tmp, tmp1;

    //gotoxy(0,0);print_string("IRQ "
    /* Determine the interrupt source */
    intsrc = UART_GetIntId(LPC_UART0);
    tmp = intsrc & UART_IIR_INTID_MASK;

    // Receive Line Status
    if (tmp == UART_IIR_INTID_RLS){
    // Check line status
    tmp1 = UART_GetLineStatus(LPC_UART0);
    // Mask out the Receive Ready and Transmit Holding empty status
    tmp1 &= (UART_LSR_OE | UART_LSR_PE | UART_LSR_FE \
    | UART_LSR_BI | UART_LSR_RXFE);
    // If any error exist
    if (tmp1) {
    UART_IntErr(tmp1);
    }
    }

    // Receive Data Available or Character time-out
    if ((tmp == UART_IIR_INTID_RDA) || (tmp == UART_IIR_INTID_CTI)){
    UART_IntReceive();
    }

    // Transmit Holding Empty
    if (tmp == UART_IIR_INTID_THRE){
    UART_IntTransmit();
    }

    sprintf(buf,"IRQ_uart0 %c %u ",rb.rx[contt++],contt);
    gotoxy(0,0);print_string(buf);
    }
    خوب خط اول رو خودم میگم !
    اسم زیر برنامه هست که موقع ای که میخاد اطلاعات جدید بیاد میپره به این زیر برنامه!
    مونده بقیش که ممنون میشم راهنمای کنین.

    در مورد اروری که گفتم وقتی توی اون خط بالا uart0 رو به uart1 تغیر میدم این ارور رو دارم!
    Build target 'LPC1700 FLASH'
    assembling startup_LPC17xx.s...
    compiling core_cm3.c...
    compiling system_LPC17xx.c...
    compiling lpc17xx_clkpwr.c...
    compiling lpc17xx_pinsel.c...
    compiling lpc17xx_uart.c...
    compiling uart_interrupt_test.c...
    ..\uart_interrupt_test.c(151): error: #167: argument of type "LPC_UART1_TypeDef *" is incompatible with parameter of type "LPC_UART_TypeDef *"
    Target not created
    انجام پروژه هاي برنامه نويسي اندرويد
    [glow=red,2,300]نرم افزار نقشه هاي پاور کامپيوتر اندوريد[/glow]
    http://cafebazaar.ir/app/?id=com.atxdroid

    #2
    پاسخ : بیاید این چهار خط کد رو برسی کنیم uart->IRQ

    باز هم خدا رو شکر 16 نفر پست رو باز کردن!
    انجام پروژه هاي برنامه نويسي اندرويد
    [glow=red,2,300]نرم افزار نقشه هاي پاور کامپيوتر اندوريد[/glow]
    http://cafebazaar.ir/app/?id=com.atxdroid

    دیدگاه


      #3
      پاسخ : بیاید این چهار خط کد رو برسی کنیم uart->IRQ

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

      دیدگاه

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