تبليغاتX
آموزش c++ and visual c++ matlab
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صفحه ای مانند شکل زیر ایجاد می شود :

 

new 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 به زبان فارسی را قرار داده ام که امیدوارم آن را دانلود کرده و از آن استفاده لازم را ببرید :

 

کتاب فارسی آموزش MATLAB                                  دانلود 279KB

 

                                                                                         

+ نوشته شده در  جمعه 23 شهریور1386ساعت 6:4 بعد از ظهر  توسط عباس سلیمی | 

دستورات پر کاربرد برای کار با پورت سریال:

 

دستور fgetl :

 

یک خط متنی از وسیله را می خواند(با رها کردن terminator)

 

حالات استفاده :

 

tline = fgetl(obj)

[tline,count] = fgetl(obj)

[tline,count,msg] = fgetl(obj)

 

obj

شئ پورت سریال است .

tline

خواندن متن از وسیله ، بدون terminator

count

تعداد مقادیر خوانده شده ، شامل terminator

msg

یک پیغام نمایش داده می شود اگر عمل خواندن با موفقیت نباشد.

 

دستور fgets :

 

یک خط متنی از وسیله را می خواند(که شامل terminator می شود.)

 

حالات استفاده :

 

tline = fgets(obj)

[tline,count] = fgets(obj)

[tline,count,msg] = fgets(obj)

 

obj

شئ پورت سریال است .

tline

خواندن متن از وسیله ،با terminator

count

تعداد بایتهای خوانده شده ، شامل terminator

msg

یک پیغام نمایش داده می شود اگر عمل خواندن با موفقیت نباشد.

 

دستور fprintf :

 

داده متنی را در وسیله می نویسد.

 

حالات استفاده :

 

 

fprintf(obj,'cmd')

fprintf(obj,'format','cmd')

fprintf(obj,'cmd','mode')

fprintf(obj,'format','cmd','mode')

 

 

obj

شئ پورت سریال است .

'cmd'

رشته نوشته شده در وسیله

'format'

تعیین تبدیل در زبان c (به راهنمای MATLAB مراجعه کنید.)

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 قبل از ظهر  توسط عباس سلیمی | 
 
صفحه نخست
پست الکترونیک
آرشیو
 

 
درباره وبلاگ
با سلام به شما دوست عزیز که از این وبلاگ بازدید می فرمائید ضمن آرزوی توفیق برای شما دوست گرامی وبلاگ matlabseven در راستای اهداف جدید خود علاوه بر آموزش مطلب به آموزش دو برنامه دیگر سی پلاس پلاس و ویژوال سی خواهد پرداخت . امیدوارم به عنوان یک برنامه نویس تازه کار بتوانم اطلاعات جدیدی را در این زمینه هم منتقل نمایم .

با تشکر عباس سلیمی
کارشناس برق الکترونیک

آمار بازدید کنندگان
ip-location map it!
پیوندهای روزانه
برنامه Paint
قرار دادن عکس در پس زمینه درایوها
ساخت و تغییر فونت
تغییر دسکتاپ
محاسبه اوقات شرعی
پاسخ به چند سوال رايج در مورد Visual C++
pcode چیست؟
جلسه اول آشنایی با سیمولینک
جلسه چهارم آموزش GUI
جلسه سوم آموزشGUIi
جلسه دوم آموزش GUI
جلسه اول آموزش GUI
ادامه برنامه نویسی
آغاز برنامه نویسی در matlab
دانلود کتاب آموزش MATLAB
پورت های سریال-بخش آخر
پورتهای سریال –قسمت دوم
پورتهای سریال-قسمت اول
رسم نمودار-قسمت پنجم
رسم نمودار-قسمت چهارم
محصولات جدید matlabseven
رسم نمودار -قسمت سوم
رسم نمودار-قسمت دوم
رسم نمودار-قسمت اول
تبدیلات در مطلب
رشته ها-قسمت دوم
رشته ها-قسمت اول
محاسبات مربوط به زمان
چند دستور کاربردی
آرایه های سلولی
آرایه های اسپارس
چند جمله ای ها
اعداد مختلط
دسترسی به عناصر ماتریس
ایجاد ماتریس
وب سایت MATLAB
آرشیو پیوندهای روزانه
نوشته های پیشین
دی 1387
آذر 1387
آبان 1387
مهر 1387
شهریور 1387
اردیبهشت 1387
بهمن 1386
دی 1386
آذر 1386
آبان 1386
مهر 1386
شهریور 1386
مرداد 1386
تیر 1386
خرداد 1386
اردیبهشت 1386
پیوندها
سایت شهر اسفراین
آموزش مطلب -میهن بلاگ
به یاد بهترین و...
دهکده توریستی رویین
بیا تو امنیت !!!
مدارات الکترونیک
وبلاگ ایران سما
وبلاگ مهندسی صنایع
وبلاگ جامع برق و الکترونیک عماد
مهندسی صنایع و مقالات - ie313
وب سایت محمد شمس
نظر سنجی