![]() |
C++ &Visual C++ & Matlab
|
![]() |
| آشنایی با زبانهای برنامه نویسی سی پلاس پلاس ویژوال سی و مطلب به همراه دانلود کد ها |
|
آموزش GUI :
همان طور که برای خیلی از زبانهای برنامه نویسی پایه مثل Basic و c++ قسمتی به نام visual ایجاد شده است ، MATLAB هم ابزاری به نام GUIDE دارد که توسط آن می توان رابط های گرافیکی مثل دکمه ها ((PUSH BUTTON ، لیست ها (LIST BOX) ، اسلایدرها( SLIDER) و. . . ایجاد کرد این ابزار زمانی به درد می خورد که شما آن را برای افرادی که احتمالا کار با دستورات MATLAB را یاد ندارند به کار ببرید .مثلا فرض کنید شما می خواهید یک نمودار را با قطر های مختلف رنگهای متفاوت و اندازه های گوناگون رسم کنید.اگر شما کمی با برنامه نویسی در MATLAB آشنا باشید می توانید تمام دستورات را به اجزای گرافیکی بسپارید تا مثلا با فشار یک دکمه یک نمودار رسم شود و با انتخاب یک یک گزینه از منوی کشویی فرضا شکل نمودار تغییر کند . و اما شروع کار با GUI : برای ایجاد یک GUI خالی کافیست از ابزار GUIDE بهره ببریم و یا از منوی File گزینه New و سپس GUI را انتخاب کنیم . در ادامه در برگه Create New GUI و با انتخاب Blank GUIصفحه ای مانند شکل زیر ایجاد می شود :
ادامه مطلب |
|
+ نوشته شده در
جمعه 30 شهریور1386ساعت 8:57 بعد از ظهر توسط عباس سلیمی |
|
|
شرط swich-case : از اين ساختار براي تصميم گيري چندگانه بر اساس مقادير مختلف يك عبارت استفاده مي شود.به طور کلي در تمام تصميم گيري ها که بيش از ٣ انتخاب وجود داشته باشد از اين دستور استفاده مي شود. به عنوان مثال فرض کنيد متغيري مثل x ، مقادیری مثل 1، 2، 3 را اختيار مي کند و مي خواهيد بر اساس مقاديرمختلف x تصميم گيري مختلفي را انجام دهيد.اگر برابر ١ بود دستورات ١، اگر برابر ٢ بود دستورات ٢ و اگربرابر ٣ بود دستورات ٣ اجرا شوند و در صورتي که هيچ کدام از اين ها نبود دستورات ٤ (otherwise) اجرا شوند.جالت کلي اين دستور را مشاهده مي کنيد: switch switch_expr case case_expr, statement, ..., statement case {case_expr١, case_expr٢, case_expr٣,...} statement, ..., statement ... otherwise, statement, ..., statement end به چند نكته در اين مورد بايد دقت کرد: ١) پس از اجراي هر يك از دستورات روند اجرا برنامه به بعد از End منتقل مي شود و ساير Case ها کنترل نمي شوند. ٢)در بالا در مورد Case دوم در صورتي آه عبارت مورد نظر با هر يك ٣ عبارت داخل کروشه ({})برابر باشد دستورات اجرا مي شوند. ٣)استفاده از Otherwise نيز اختياري است. ادامه مطلب |
|
+ نوشته شده در
سه شنبه 27 شهریور1386ساعت 7:13 قبل از ظهر توسط عباس سلیمی |
|
|
مطالب زیر را از یکی از کتابهای PDF آورده ام (سایت irche.com ) که امیدوارم مثمر ثمر واقع شوند . آغاز برنامه نویسی در MATLAB : تا به حال تنها از توابعي استفاده ميکرديم که قبلا براي matlab تعريف شده بود؛ ولي ممكن است اين توابع نتوانند نيازهاي ما را پاسخ دهند، يا بخواهيم توابعي با کاربري خاص بنويسيم. يك تابع (function file) مانند يك m-file است با اين تفاوت که خط اول آن به صورت زير است: function [outputs]= name(inputs) اين خط مشخص مي کند که اين M-file يك تابع است. همچنين تعداد ورودي ها و خروجي ها را مشخص کرده و هر يك را در يك متغير قرار مي دهد.در صورتي که تنها يك ورودي داشته باشيم نيازي به کروشه [] نیست .name نيز نام تابع را مشخص مي کند. بهتر است براي خواناتر شدن برنامه از عبارات توضيحي استفاده کنيم.اين عبارات بايد ورودي ها و خروجي ها را مشخص کند.همچنين مي توان نام برنامه نويس و تاريخ نوشتن آن را نيز مشخص کرد. اين خطوط با اجرا دستور help name << به نمایش در می آیند . به عنوان مثال M-file زیر دستور prod را شبیه سازی می کند: function p=prod2 (x) % function p=PROD2 (x) % shabih sazi farman PROD % a:radif b:sotoon [a,b]=size2(x); p(1,:)=x(1,:); for i=2:a, % satr aval p dar satr haye x zarb shode % va dar satr aval p zakhir mishavad p(1,:)=p(1,:).*x(i,:); end % if x is rowvector while a==1; p=1; for i=1:b, p=p*x(i); end a=0; end ادامه مطلب |
|
+ نوشته شده در
یکشنبه 25 شهریور1386ساعت 2:27 بعد از ظهر توسط عباس سلیمی |
|
|
کتاب آموزشی MATLAB برای دانلود: در زیر لینک یک کتاب آموزش MATLAB به زبان فارسی را قرار داده ام که امیدوارم آن را دانلود کرده و از آن استفاده لازم را ببرید :
|
|
+ نوشته شده در
جمعه 23 شهریور1386ساعت 6:4 بعد از ظهر توسط عباس سلیمی |
|
|
دستورات پر کاربرد برای کار با پورت سریال: دستور fgetl : یک خط متنی از وسیله را می خواند(با رها کردن terminator) حالات استفاده : tline = fgetl(obj) [tline,count] = fgetl(obj) [tline,count,msg] = fgetl(obj)
دستور fgets : یک خط متنی از وسیله را می خواند(که شامل terminator می شود.) حالات استفاده : tline = fgets(obj) [tline,count] = fgets(obj) [tline,count,msg] = fgets(obj)
دستور fprintf : داده متنی را در وسیله می نویسد. حالات استفاده : fprintf(obj,'cmd') fprintf(obj,'format','cmd') fprintf(obj,'cmd','mode') fprintf(obj,'format','cmd','mode')
ادامه مطلب |
||||||||||||||||||||||||
|
+ نوشته شده در
پنجشنبه 22 شهریور1386ساعت 4:18 بعد از ظهر توسط عباس سلیمی |
|
|
مشخصات اجزاء پورت سریال: مشخصات ارتباطی ، خواندن ، نوشتن اجزای شئ پورت سریال به طور خلاصه در زیر برحسب الفبا آمده اند: این قسمت را از help نرم افزار ترجمه کرده ام که امیدوارم اگر احتمالا مشکلی دارد مرا بی اطلاع نگذارید. مشخصات ارتباطی : BaudRate: سرعتی که بیتها فرستاده می شوند را مشخص می کند . توضیحات : شما BaudRate را بر حسب بیت بر ثانیه پیکربندی می کنید.بیت های ارسالی شامل بیت شروع ، بیت های داده ، بیت توازن ،(اگر به کار روند) و بیت های توقف هستند.هر چند اگر بیت های داده ذخیره شوند . BaudRate سرعتی است که اطلاعات در کانال ارتباطی فرستاده می شود در مفهوم پورت سریال باود 9600 این معنی را می دهد که پورت سریال قادر به ارسال ماکزیمم 9600 بیت در هر ثانیه است .اگر واحد اطلاعاتی یک باود (یک بیت) باشد ،bitrate وbaudrate با هم یکی هستند اگر یک باود به عنوان ده بیت داده شود ،(برای مثال ،هشت پالس بیتهای داده دو چارچوب بیتی) ،bitrate هنوز 9600 است ولی baudrate ، ۹۶۰۰/۱۰یعنی 960 است . شما همیشه baudrate را بر حسب بیت در هر ثانیه پیکربندی می کنید .بنابرین در مثال بالا baudrate را 9600 تنظیم می کنید. توجه: هم کامپیوتر و هم دستگاه جانبی باید در یک باود تنظیم شوند برای اینکه شما بخواهید خواندن و نوشتن موفقی داشته باشید . برای این کار روی آیکون My computer کلیک راست کرده Manage را انتخاب می کنیم در صفحه باز شده Device Manager را انتخاب کرده و از سخت افزار های موجود در سمت راست Ports(Com&Lpt) را انتخاب می کنیم و روی + کلیک می نماییم ، روی Communicaitions که مربوط به COM1 است دو بار کلیک کرده و در دیالوگ باز شده در تب Port Setting گزینه Bit per second را روی مقدار مورد نظر تنظیم می کنیم. Baudrate های استاندارد شامل 110،300 ،600 ،1200 ،2400 ،4800 ،9600 ،14400 ،19200 ،38400 ،57600115200 ،128000 و256000 بیت در هر ثانیه است .
ادامه مطلب |
|
+ نوشته شده در
یکشنبه 18 شهریور1386ساعت 2:29 بعد از ظهر توسط عباس سلیمی |
|
|
دزدی جدید از وبلاگ من: دوستان عزیز جدیدا متوجه شدم که بعضی از افراد از مطالب وبلاگ من سوء استفاده کردن یعنی مطالب وبلاگ منو کپی کردن و در سایت خودشون آوردن. این آقا شایان که ادعای matlab کرده تمام مطالب وبلاگ منو تو یه سایت آورده که من در زیر آدرس سایتو آوردم : http://www.cloob.com/club/post/show/clubname/programmer/topicid/1255454 یارو یک سوتی خفن هم داده : کافیه شما در اون صفحه اسم وبلاگ منو سرچ کنید : پس کافیه به اون سایت برین و دکمه های ctrl+F رو بزنین و سپس بنویسین: matlabseven
خودتون لطفا در مورد این کار نظر بدین با تشکر: مدیر وبلاگ |
|
+ نوشته شده در
جمعه 16 شهریور1386ساعت 11:48 بعد از ظهر توسط عباس سلیمی |
|
|
پورتهای سریال در MATLAB : در رابطه ارتباط با پورتهای سریال MATLAB برنامه ها و دستورات متعدد و موثری دارد .این دستورات رابطه با پورت سریال را خیلی راحت می کند . نوشتن داده ، خواندن داده از پورت و. . . از کارهای عادی برای این نرم افزار است اما بهتر است در مورد سریال پورت و پروتکل RS-232 چیزهایی را بدانیم که در زیر توضیحاتی را میدهم که امیدوارم مفید واقع شوند . ارتباط سریال چیست؟ ارتباط سریال پروتکل سطح پایین مشترک برای ارتباط بین دو یا چند وسیله است که به صورت معمول یک وسیله کامپیوتر است و وسیله دیگر می تواند یک مودم ، پرینتر ، کامپیوتر دیگر و یا یک وسیله علمـــی از قبیل اسیلوسکوپ و یا فانکشن ژنراتور باشد. به عنوان یک اشاره ، سریال پورت بایتهایی از اطلاعات را در روش سریال - یک بیت در زمان – ارسال و دریافت می کند. در این ارتباط ، فرستنده و یا راه انداز ، بیت ها را به صورت پشت سر هم ارسال می کند. در ارتباط بیـن دو کامپیوتر ممکن است برای هر جهت خط مستقلی داشته باشیم یا اینکه بر روی یک خط در هر دو جهت داده ارسال شود. وقتی که بیشتر از دو دستگاه به هم متصل شوند ، معمولا دارای یک مسیر مشترک بین آنها هستیم و پروتکل شبکه است که مشخص می کند کدام دستکاه اجازه ارسال دارد. قسمت RS-232هنوز برای کاربردهای عمومی استفاده های فراوان دارد. قسمت RS-232 این مشخصات پورتهای سریال را معرفی می کند. - ماکزیمم سرعت انتقال بیت و طول کابلها- نامها ، مشخصات پورت سریال و توابع سیگنالها - ارتباط های ماشینی و واگذاری پین ها
ادامه مطلب |
|
+ نوشته شده در
شنبه 10 شهریور1386ساعت 4:55 بعد از ظهر توسط عباس سلیمی |
|
|
نمودارهای قطبی : دستور polar : این تا بع داده ها را بر روی مختصات قطبی رسم می کند . شکل کلی این تابع به صورت زیر است : Polar(theta,r) که در آن theta آرایه ای از زاویه ها بر حسب رادیان بوده و r آرایه ای از فواصل می باشد . مثال : تا بعr=1+cos(theta) را رسم کنید : >> theta=0:pi/20:2*pi; >> r=1+cos(theta); >> polar(theta,r)
دستور bar : این تابع یک نمودار میله ای عمودی تولید می کند : >> x=-2.9:0.2:2.9; >> y=exp(-x.*x); >> bar(x,y) ادامه مطلب |
|
+ نوشته شده در
جمعه 9 شهریور1386ساعت 8:43 بعد از ظهر توسط عباس سلیمی |
|
|
زیر نمودار ها : دستور subplot : در یک پنجره figure می توانیم بیش یک مجموعه از محورهای مختصات را رسم کنید . دستور subplot(m,n,p) پنجره figure جاری را به m*n ناحیه تبدیل کند و ناحیه p را به عنوان ناحیه فعال انتخاب می کند . زیر نمودارها به ترتیب از چپ به راست و بالا به پایین شماره گذاری می شوند . مثال : نمودارهای sin(x) ، cos(x) ، sinh(x) و cosh(x)را توسط زیر نمودار ها رسم کنیـد ؟ x=-5:0.1:5; y=sin(x); z=cos(x); y1=sinh(x); z1=cosh(x); subplot(2,2,1) plot(x,y) subplot(2,2,2) plot(x,z) subplot(2,2,3) plot(x,y1) subplot(2,2,4) plot(x,z1)
ادامه مطلب |
|
+ نوشته شده در
جمعه 2 شهریور1386ساعت 11:37 قبل از ظهر توسط عباس سلیمی |
|
|
صفحه نخست پست الکترونیک آرشیو |
| نوشته های پیشین |
|
دی 1387 آذر 1387 آبان 1387 مهر 1387 شهریور 1387 اردیبهشت 1387 بهمن 1386 دی 1386 آذر 1386 آبان 1386 مهر 1386 شهریور 1386 مرداد 1386 تیر 1386 خرداد 1386 اردیبهشت 1386 |