اطلاعیه

Collapse
No announcement yet.

یک مشکل برنامه نویسی

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

    یک مشکل برنامه نویسی

    سلام دوستان

    من یه برنامه دارم مینویسم میخوام یه رشته به عنوان شرط باشه ولی error میده یه جای کار مشکل دارم

    24 بیت صفر یا یک به صورت رشته پشت سر هم هستند میخوام متغییر bufer شرطم باشه

    کد:
    char bufer[13];
    unsigned char Tmp[24];
    
    
     for(i=0;i<12;i++){
      if (Tmp[i*2]==0 && Tmp[(i*2)+1]==0){
        bufer[i]='0';
      }
      else if(Tmp[i*2]==1 && Tmp[(i*2)+1]==1){       
        bufer[i]='1';  
      }
     
        else {
        bufer[i]='F';    
      };
     }
    ممنون
    عامل کلیدی تمام موفقیتها " عمل کردن" است

    #2
    پاسخ : یک مشکل برنامه نویسی

    با سلام
    سوال رو واضح تر بپرسین، کمی گنگه.
    در ضمن شاید بد نباشه متن error رو هم بذارین.
    The healthy human mind doesn't wake up in the morning thinking this is his last day on earth.

    دیدگاه


      #3
      پاسخ : یک مشکل برنامه نویسی

      سلام

      مشکل حل شد با دستور strcmp رشته رو با مقدار متغییر مقایسه کردم بعد گذاشتمش توی دستور شرطی

      ممنون
      عامل کلیدی تمام موفقیتها " عمل کردن" است

      دیدگاه


        #4
        پاسخ : یک مشکل برنامه نویسی

        با سلام
        من در پروژه خودم تو قسمت برنامه نویسیش موندم چون روی بسکام تسلط کافی ندام لطفا در مورد این مساله کمکم کنید
        من میخام با استفاده از ماژول بلوتوث hc05 چند وسیله رو روشن و خاموش کنم اما در برنامه گوشی به علت محدود بودن شستی ها میخاهم با فرستادن حرف A پورت b0 رو فعال و دوباره با فرستادن همان حرف A پورت b0 رو غیر فعال شود برنامه ای هم خودم نوشتم اما ارور میده و نمیدونم علت ارورش چیه برنامه به این صورته

        $regfile = "M8adef.dat"
        $crystal = 8000000
        $baud = 9600
        Dim A As String * 2
        Enable Interrupts
        Enable Urxc
        Enable Utxc
        Config Portd = Output
        Config Portb = Output

        Do
        A = Inkey()

        A = "A" And Portb.0 = 0
        Set Portb.0
        Print "on"
        A = "A" And Portb.0 = 1
        Reset Portb.0
        Print "1"
        لطفا راهنمایی کنید

        دیدگاه


          #5
          پاسخ : یک مشکل برنامه نویسی

          سلام

          این برنامه که گذاشتید خیلی ناقصی داره من براتون یه کم تغییرش دادم ولی الگوریتمش با خودتونه

          کد:
          $regfile = "M8adef.dat"
          $crystal = 8000000
          $baud = 9600
          Dim A As String * 2
          Enable Interrupts
          Enable Urxc
          Enable Utxc
          Config Portd = Output
          Config Portb = Output
          
          Do
          A = Inkey()
          
           If A = "A" And Portb.0 = 0 Then
          Set Portb.0
          Print "on"
          End If
          
           If A = "A" And Portb.0 = 1 Then
           Reset Portb.0
          Print "1"
          End If
          
          
          Loop
          
          End
          عامل کلیدی تمام موفقیتها " عمل کردن" است

          دیدگاه


            #6
            پاسخ : یک مشکل برنامه نویسی

            کد:
            $regfile = "M8adef.dat"
            $crystal = 8000000
            $baud = 9600
            Dim A As String * 2
            Enable Interrupts
            Enable Urxc
            Enable Utxc
            Config Portd = Output
            Config Portb = Output
            
            Do
            A = Inkey()
            
             If A = "A" And Portb.0 = 0 Then
            toggle Portb.0
            waitms 50
            End If
            
            
            
            
            Loop
            
            End

            دیدگاه

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