اطلاعیه

Collapse
No announcement yet.

مقایسه ارایه دریافتی از usart

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

    #16
    پاسخ : مقایسه ارایه دریافتی از usart

    اون قسمتی که دیتا رو دریافت میکنم و داخل data[][] lمیریزم

    دیدگاه


      #17
      پاسخ : مقایسه ارایه دریافتی از usart

      اگه برنامه رو کامل بذارید و به طور واضح بگین میخواین چیکار کنید شاید بهتر بتونم کمک کنم
      گفت که دیوانه نهی لایق این خانه نهی

      دیدگاه


        #18
        پاسخ : مقایسه ارایه دریافتی از usart

        سلام
        متاسفانه به دلایلی نمیشه برنامه رو قرار بدم.اما من ارایه ای که میخوام مقایسه بشه رو نشون دادم.
        [code=c]
        const char a[4][8]={"{etx}","b","{\x80}&quo t;,"{\xc0}"};[/code]

        اضافه شده در تاریخ :
        اینم جواب نداد
        [code=c]char a[19]="{ETX}B{\X80}{\XC1}";
        char string[19];

        #int_RDA
        void RDA_isr(void)
        {



        gets(string);

        if(strstr(string, a)==0)
        output_high(CMD4);





        }//END OF INT
        [/code]

        دیدگاه


          #19
          پاسخ : مقایسه ارایه دریافتی از usart

          دوست من برنامه خیلی خفنی نوشتی. :mrgreen:
          داخل شرط فقط i==0 را بنویسد. data هم مثل a مقدار دهی کردم. تا از صحت مقایسه a و data مطلع بشیم
          من چون ccs ندارم برنامه رو پ.خ. دادم
          گفت که دیوانه نهی لایق این خانه نهی

          دیدگاه


            #20
            پاسخ : مقایسه ارایه دریافتی از usart

            سلام
            مهندس هردیتایی که میفرستم روشن میشه و دیگه دیتاهای دیگه ای که واسه اسکن کلید بود و از میکرو میومد متوقف میشه انگار مقایسه ای وجود نداره فقط با گرفتن دیتا روشن میشه

            دیدگاه


              #21
              پاسخ : مقایسه ارایه دریافتی از usart

              وقتی چیزی هم ارسال نمیکنم روشن نمیشه

              دیدگاه


                #22
                پاسخ : مقایسه ارایه دریافتی از usart

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

                دیدگاه


                  #23
                  پاسخ : مقایسه ارایه دریافتی از usart

                  چه راهی پیشنهاد میکنید؟

                  دیدگاه


                    #24
                    پاسخ : مقایسه ارایه دریافتی از usart

                    تا زمانی که دیتایی از سریال نفرستم روشن نمیشه led

                    دیدگاه


                      #25
                      پاسخ : مقایسه ارایه دریافتی از usart

                      [code=c]char data[4][7]={"{ETX}","B","{\X80}&quo t;,"{\XC1}"};
                      char a[4][7]={"{ETX}","B","{\X80}&quo t;,"{\XC1}"};



                      #int_RDA
                      void RDA_isr(void)
                      {
                      //gets(string[4][7]);
                      for( i=0;i<4;i++)
                      for(j=0;j<7;j++)
                      if(a[i][7] != data[i][7])
                      break;

                      if(i==4)
                      output_high(CMD4);

                      disable_interrupts(INT_RDA);

                      }//END OF INT
                      [/code]


                      وقتی disable رو قرار میدم درست کار میکنه اما فقط براییکبار

                      دیدگاه


                        #26
                        پاسخ : مقایسه ارایه دریافتی از usart

                        شما باید بررسی کنید که دیتایی که از سریال میگیرد صحت داره یا نه
                        تو پروژتون lcd دارین؟
                        گفت که دیوانه نهی لایق این خانه نهی

                        دیدگاه


                          #27
                          پاسخ : مقایسه ارایه دریافتی از usart

                          بله متوجه نمیشم چطور این کار رو انجام بدم
                          من برای ارایه با 4 کاراکتر که انجام دادم مقایسه درست انجام میشد و دیتا درست دریافت میشد

                          دیدگاه


                            #28
                            پاسخ : مقایسه ارایه دریافتی از usart

                            قسمت مقایسه هم که عیبی نداره.
                            میتونید در پایان i و j رو نمایش بدین تا معلوم بشه توی چه مرحله ای این دو آرایه با هم برابر نیستند
                            گفت که دیوانه نهی لایق این خانه نهی

                            دیدگاه


                              #29
                              پاسخ : مقایسه ارایه دریافتی از usart

                              [code=c]#int_RDA
                              void RDA_isr(void)
                              {
                              for( i=0;i<4;i++)
                              for(j=0;j<7;j++)

                              if(a[i][j] != data[i][j])
                              printf("%c\r\n",i);
                              printf("%c\r\n",j);
                              break;

                              if(i==4)
                              output_high(CMD4);[/code]



                              اینجوری؟این که اعداد شمارش شده رو نشون میده

                              دیدگاه


                                #30
                                پاسخ : مقایسه ارایه دریافتی از usart

                                دستورات نمایش باید بعد از break باشه

                                [code=c]
                                break;
                                printf("%c\r\n",i);
                                printf("%c\r\n",j);
                                [/code]


                                گفت که دیوانه نهی لایق این خانه نهی

                                دیدگاه

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