اطلاعیه

Collapse
No announcement yet.

ارتباط بین میکرو و Matlab

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

    ارتباط بین میکرو و Matlab

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

    clear
    clc
    figure(1)
    for f=1:.1:10
    end
    s=serial('COM1&#039
    set(s,'BaudRate',9600)
    fopen(s)
    t=0;
    for i=1:100
    j=1;
    for n=1:5
    b=fgetl(s);
    c(:,j)=str2num(b);
    j=j+1;
    end
    z=sum(c)/5;
    t=t+0.1;
    plot(t,z)
    axis([0,20,20,60]);
    hold on;
    end
    fclose(s);
    delete(s);

    قنديل، تنديس قطره هايي است كه تسليم جاذبه زمين نشدند. "چگوآرا"

    #2
    پاسخ : ارتباط بین میکرو و Matlab

    ممکن مشکل از اجرای سریع روتین ها باشه :read:
    من هرچی توی help مطلب سرچ کردن برنامه ای برای delay ندیدم خودم یه برنامه delay نوشتم فایده نداشت
    کسی می دونه delay توی مطلب دستورش چیه
    :bye :eek:
    قنديل، تنديس قطره هايي است كه تسليم جاذبه زمين نشدند. "چگوآرا"

    دیدگاه


      #3
      پاسخ : ارتباط بین میکرو و Matlab

      درود
      در برنامه نویسی حرفه ای اصلا delay بی معنی هست وکلا در برنامه نویسی کامپیوتری delay استفاده نمی شه وکاربرد نداره

      شما باید میکرو کامپیوتر رو سنگرون کنید یعنی با ارسال و دریافت کد در زمان های مشخص باید میکرو و کامپیوتر سنگرون بشه(مطمئن باش نرم افزاری قوی تر از مطلب توی این زمینه نمی تونی گیر بیاری)
      به کد زیر توجه کن



      cheak=0; %

      while cheak~=20 %
      fwrite(s,40); %
      fwrite(s,41); %
      cheak=fread(s,1); %
      end


      نادانترين مردم کساني هستند که فکر مي کنند داناترين آنها هستند.

      دیدگاه


        #4
        پاسخ : ارتباط بین میکرو و Matlab

        دستور pause اجرای برنامه رو متوقف میکنه
        مثلا pause(3) برنامه رو در اون سطر به مدت 3 ثانیه نگه میداره که معادل همون delay هست.
        افتادگی آموز اگر طالب فیضی هرگز نخورد آب زمینی که بلند است

        دیدگاه


          #5
          پاسخ : ارتباط بین میکرو و Matlab

          نوشته اصلی توسط سارا امامی فر
          درود
          در برنامه نویسی حرفه ای اصلا delay بی معنی هست وکلا در برنامه نویسی کامپیوتری delay استفاده نمی شه وکاربرد نداره

          شما باید میکرو کامپیوتر رو سنگرون کنید یعنی با ارسال و دریافت کد در زمان های مشخص باید میکرو و کامپیوتر سنگرون بشه(مطمئن باش نرم افزاری قوی تر از مطلب توی این زمینه نمی تونی گیر بیاری)
          به کد زیر توجه کن



          cheak=0; %

          while cheak~=20 %
          fwrite(s,40); %
          fwrite(s,41); %
          cheak=fread(s,1); %
          end


          سلام
          ممنون از توجهتون
          من نفهمیدم این برنامتون چه کار می کنه میشه کمی توضیح بدید.....
          ممنون
          قنديل، تنديس قطره هايي است كه تسليم جاذبه زمين نشدند. "چگوآرا"

          دیدگاه


            #6
            پاسخ : ارتباط بین میکرو و Matlab

            ممنون از توجهتون
            مشکل رو فهمیدم چی بود ننوشتن دستور زیر بود اگه دوباره مشکلی پیش اومد دوباره مزاحمتون می شم :redface:
            ممنون
            clear
            clc
            %figure(1)
            %for f=1:.1:10
            %end
            s=serial('COM1&#039
            set(s,'BaudRate',9600)
            fopen(s)
            t=0;
            for i=1:100
            j=1;
            for n=1:5
            b=fgetl(s);
            c(:,j)=str2num(b);
            j=j+1;
            end
            z=sum(c)/5;
            t=t+0.1;
            figure(1)
            plot(t,z)
            axis([0,20,20,60]);
            hold on;
            end
            fclose(s);
            delete(s);
            قنديل، تنديس قطره هايي است كه تسليم جاذبه زمين نشدند. "چگوآرا"

            دیدگاه


              #7
              پاسخ : ارتباط بین میکرو و Matlab

              نوشته اصلی توسط mohsen_22
              سلام
              ممنون از توجهتون
              من نفهمیدم این برنامتون چه کار می کنه میشه کمی توضیح بدید.....
              ممنون
              سلام
              مثلا شما کد 40 و41 را ارسال می کنید منتظر می شوید تا میکرو کد 20 را برای شما ارسال کند و بعد ادامه برنامه . . .
              متقابل می توانید این سیکل برنامه را در میکرو تکرار کنید

              این دستور را می توانی در فواصل مناسب برنامه بکار ببرید تا مطمئن شوید میکرو و متلب سنکرون هست

              موفق باشید
              نادانترين مردم کساني هستند که فکر مي کنند داناترين آنها هستند.

              دیدگاه

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