در این بخش آموزش برنامه نویسی سی کد ویژن قرار می گیرد
avr-->c-->code vision
آموزش code vision
مدیران انجمن: رونین, شوراي نظارت

- پست: 522
- تاریخ عضویت: سهشنبه ۷ فروردین ۱۳۸۶, ۹:۳۶ ق.ظ
- محل اقامت: ایران
- سپاسهای ارسالی: 11 بار
- سپاسهای دریافتی: 763 بار
- تماس:
شکل کلی برنامه
اولین قدم شناخت شکل کلی برنامه نویسی سی است
سرامد
متغیر های عمومی
تعریف توابع
تابع اصلی
{
متغیر محلی
تعریف سخت افراری
برنامه اصلی
}
تشریح توابع
سرامد
متغیر های عمومی
تعریف توابع
تابع اصلی
{
متغیر محلی
تعریف سخت افراری
برنامه اصلی
}
تشریح توابع
هرکه را اسرار حق آموختند
مهر کردند و دهانش دوختند
مهر کردند و دهانش دوختند

- پست: 522
- تاریخ عضویت: سهشنبه ۷ فروردین ۱۳۸۶, ۹:۳۶ ق.ظ
- محل اقامت: ایران
- سپاسهای ارسالی: 11 بار
- سپاسهای دریافتی: 763 بار
- تماس:
سرامد ها برنامه هایی از پیش نوشته شده اند که برای جلوگیری از نوشتن چند باره ی آن ها در برنامه متعدد ایجاد شده اند
شکل کلی سرامد به صورت زیر می باشد
Please Login or Register to see this code
از سرامد های پرکاربرد می توان به سرامد میکروکنترلر اشاره کرد که در هر برنامه ای ضروری است و کار شناسایی سخت افزار های داخلی میکرو کنترلر را بر عهده دارد
و از دیگر سرامد ها می توان به سرامد کیبرد موشواره ال سی دی ها ی گرافیکی دوربین ها و ... اشاره کرد
شکل کلی سرامد به صورت زیر می باشد
Please Login or Register to see this code
از سرامد های پرکاربرد می توان به سرامد میکروکنترلر اشاره کرد که در هر برنامه ای ضروری است و کار شناسایی سخت افزار های داخلی میکرو کنترلر را بر عهده دارد
و از دیگر سرامد ها می توان به سرامد کیبرد موشواره ال سی دی ها ی گرافیکی دوربین ها و ... اشاره کرد
هرکه را اسرار حق آموختند
مهر کردند و دهانش دوختند
مهر کردند و دهانش دوختند

- پست: 522
- تاریخ عضویت: سهشنبه ۷ فروردین ۱۳۸۶, ۹:۳۶ ق.ظ
- محل اقامت: ایران
- سپاسهای ارسالی: 11 بار
- سپاسهای دریافتی: 763 بار
- تماس:
متغیر ها قسمت اول
متغیر ها مکان هایی از حافظه اند که مقادیری می گیرند .
متغیر ها به صورت زیر تعریف میشوند
نام متغییر نوع متغیر
- در کد ویژن متغیر ها یکی از صورت های زیر است
bit :
اعداد بولی 0 یا 1 که یک بیت حافظه اشغال می کند
char :
اعداد صحیح بین -128 و 127 که یک بایت حافظه اشغال می کنند
int :
اعداد صحیح بین -32768 و 32767 که دو بایت حافظه اشغال می کنند
long :
اعداد صحیح بین -2^31 و 2^31-1 که چهار بایت حافظه اشغال می کنند
float :
اعداد اعشاری بین +_ 1/175*10^-38- و +_ 3/402*10^38 که چهار بایت حافظه اشغال می کند
double :
اعداد اعشاری با دقت مضاعف که هشت بایت اشغال می کند
اگر قبل از نوع متغیر صحیح از کلمه ی
unsigned
استفاده شود منفی آن متغییر از بین رفته و حداکثر مقادیر آن دو برابر می شود
متغیر ها به صورت زیر تعریف میشوند
نام متغییر نوع متغیر
- در کد ویژن متغیر ها یکی از صورت های زیر است
bit :
اعداد بولی 0 یا 1 که یک بیت حافظه اشغال می کند
char :
اعداد صحیح بین -128 و 127 که یک بایت حافظه اشغال می کنند
int :
اعداد صحیح بین -32768 و 32767 که دو بایت حافظه اشغال می کنند
long :
اعداد صحیح بین -2^31 و 2^31-1 که چهار بایت حافظه اشغال می کنند
float :
اعداد اعشاری بین +_ 1/175*10^-38- و +_ 3/402*10^38 که چهار بایت حافظه اشغال می کند
double :
اعداد اعشاری با دقت مضاعف که هشت بایت اشغال می کند
اگر قبل از نوع متغیر صحیح از کلمه ی
unsigned
استفاده شود منفی آن متغییر از بین رفته و حداکثر مقادیر آن دو برابر می شود
هرکه را اسرار حق آموختند
مهر کردند و دهانش دوختند
مهر کردند و دهانش دوختند

- پست: 522
- تاریخ عضویت: سهشنبه ۷ فروردین ۱۳۸۶, ۹:۳۶ ق.ظ
- محل اقامت: ایران
- سپاسهای ارسالی: 11 بار
- سپاسهای دریافتی: 763 بار
- تماس:
متغیر ها قسمت دوم
متغیر ها در سه جا می توانند ذخیره شوند
در ram برای این کار هیچ پییشوندی لازم نیست
در rom برای این کار از پیشوند eeorom استفاده می شود
در flash برای این کار از پیشوند flash استفاده می شود
متغیر های که در رم ذخیره می شوند پس از ریست از بین می روند
متغیر هایی که در فلش ذخیره می شوند ثابت می باشند و امکان مقدار دادن در ادامه برنامه به آن موچود نمی باشد
همچنین استفاده از پیشوند باعث ثابت شدن متغیذ می شود
متغیر ها یا محلی اند و یا عمومی اند
اگر در اول برنامه قبل از تابع main تعریف شده یاشند متغیر عمومی و اگر در داخل یک تابع تعربف شده باشند متغیر محلی اند
از متغیر عمومی در تمام قسمت های برنامه می توان استفاده کرد
ولی از متغیر محلی فقط در داخل همان تابع استفاده می شود و با اتمام اجرای تابع آن ها ازبین می روند
در ram برای این کار هیچ پییشوندی لازم نیست
در rom برای این کار از پیشوند eeorom استفاده می شود
در flash برای این کار از پیشوند flash استفاده می شود
متغیر های که در رم ذخیره می شوند پس از ریست از بین می روند
متغیر هایی که در فلش ذخیره می شوند ثابت می باشند و امکان مقدار دادن در ادامه برنامه به آن موچود نمی باشد
همچنین استفاده از پیشوند باعث ثابت شدن متغیذ می شود
متغیر ها یا محلی اند و یا عمومی اند
اگر در اول برنامه قبل از تابع main تعریف شده یاشند متغیر عمومی و اگر در داخل یک تابع تعربف شده باشند متغیر محلی اند
از متغیر عمومی در تمام قسمت های برنامه می توان استفاده کرد
ولی از متغیر محلی فقط در داخل همان تابع استفاده می شود و با اتمام اجرای تابع آن ها ازبین می روند
هرکه را اسرار حق آموختند
مهر کردند و دهانش دوختند
مهر کردند و دهانش دوختند

- پست: 522
- تاریخ عضویت: سهشنبه ۷ فروردین ۱۳۸۶, ۹:۳۶ ق.ظ
- محل اقامت: ایران
- سپاسهای ارسالی: 11 بار
- سپاسهای دریافتی: 763 بار
- تماس:
آرايه ها
آرایه ها n بعدی ماتریس های n بعدی هستند که به صورت زیر تعیریف می شوند
Please Login or Register to see this code
Please Login or Register to see this code
اگر جنس اعضا از نوع char باشد به آرایه ؛ رشته نیز می گویند
Please Login or Register to see this code
آرایه ها نیز مانند متغیر ها داری دو نوع محلی عمومی می باشد
Please Login or Register to see this code
Please Login or Register to see this code
اگر جنس اعضا از نوع char باشد به آرایه ؛ رشته نیز می گویند
Please Login or Register to see this code
آرایه ها نیز مانند متغیر ها داری دو نوع محلی عمومی می باشد
هرکه را اسرار حق آموختند
مهر کردند و دهانش دوختند
مهر کردند و دهانش دوختند

- پست: 522
- تاریخ عضویت: سهشنبه ۷ فروردین ۱۳۸۶, ۹:۳۶ ق.ظ
- محل اقامت: ایران
- سپاسهای ارسالی: 11 بار
- سپاسهای دریافتی: 763 بار
- تماس:
ساختمان
ساختمان ها مجموعه هایی از متغیر ها ثابت ها رشته ها آرایه ها و ساختمان های دیگر هستند
اگر شما از یک شی مشخصاتی دارید بهترین وسیله برای بیان ساختمان می باشد وبه صورت زیر تعریف می شود
Please Login or Register to see this code
Please Login or Register to see this code
برای استفاده از ساختمان از کل به جز حرکت کرده و وسط آن نقطه می گذاریم
Please Login or Register to see this code
اگر شما از یک شی مشخصاتی دارید بهترین وسیله برای بیان ساختمان می باشد وبه صورت زیر تعریف می شود
Please Login or Register to see this code
Please Login or Register to see this code
برای استفاده از ساختمان از کل به جز حرکت کرده و وسط آن نقطه می گذاریم
Please Login or Register to see this code
هرکه را اسرار حق آموختند
مهر کردند و دهانش دوختند
مهر کردند و دهانش دوختند

- پست: 522
- تاریخ عضویت: سهشنبه ۷ فروردین ۱۳۸۶, ۹:۳۶ ق.ظ
- محل اقامت: ایران
- سپاسهای ارسالی: 11 بار
- سپاسهای دریافتی: 763 بار
- تماس:
اشاره گر ها مکان هایی از حافظاه اند که به آدرس متغییر دیگری اشاره می کنند و به صورت زیر تعریف می شوند
Please Login or Register to see this code
Please Login or Register to see this code
اشاره گر ها فقط آدرس متغیر ها از جنس خود را نگه می دارند و دادن آدرس دیگر متغیر ها غلط است
Please Login or Register to see this code
Please Login or Register to see this code
اشاره گر ها فقط آدرس متغیر ها از جنس خود را نگه می دارند و دادن آدرس دیگر متغیر ها غلط است
هرکه را اسرار حق آموختند
مهر کردند و دهانش دوختند
مهر کردند و دهانش دوختند

- پست: 522
- تاریخ عضویت: سهشنبه ۷ فروردین ۱۳۸۶, ۹:۳۶ ق.ظ
- محل اقامت: ایران
- سپاسهای ارسالی: 11 بار
- سپاسهای دریافتی: 763 بار
- تماس:
عملگرها قسمت اول
عملگر ها قسمت اول
+ جمع
- تفریق
* ضرب
/ تقسیم
++ افزایش یک واحدی
-- کاهش یک واحدی
% باقی مانده ی تقسیم
= انتساب
>> شیفت به چپ
<< شیفت به راست
~ not منطقی
& and منطقی
| or منطقی
! not بولی
&& and بولی
|| or بولی
=+ اول جمع سپس انتساب
=- اول تفریق سپس انتساب
=* اول ضرب سپس انتساب
=/ اول تقسیم سپس انتساب
=% اول باقی مانده سپس انتساب
== شرط برابری
=! شرط نابرابری
< شرط بزرگتر بودن
> شرط کوچکتر بودن
=> شرط کوچکتر یا مساوی بودن
=< شرط بزرگتر یا مساوی بودن
& استخراج آدرس
* روجوع به آدرس
+ جمع
- تفریق
* ضرب
/ تقسیم
++ افزایش یک واحدی
-- کاهش یک واحدی
% باقی مانده ی تقسیم
= انتساب
>> شیفت به چپ
<< شیفت به راست
~ not منطقی
& and منطقی
| or منطقی
! not بولی
&& and بولی
|| or بولی
=+ اول جمع سپس انتساب
=- اول تفریق سپس انتساب
=* اول ضرب سپس انتساب
=/ اول تقسیم سپس انتساب
=% اول باقی مانده سپس انتساب
== شرط برابری
=! شرط نابرابری
< شرط بزرگتر بودن
> شرط کوچکتر بودن
=> شرط کوچکتر یا مساوی بودن
=< شرط بزرگتر یا مساوی بودن
& استخراج آدرس
* روجوع به آدرس
هرکه را اسرار حق آموختند
مهر کردند و دهانش دوختند
مهر کردند و دهانش دوختند

- پست: 522
- تاریخ عضویت: سهشنبه ۷ فروردین ۱۳۸۶, ۹:۳۶ ق.ظ
- محل اقامت: ایران
- سپاسهای ارسالی: 11 بار
- سپاسهای دریافتی: 763 بار
- تماس:
عملگر ها قسمت دوم
عملگر ها قسمت دوم
کدهای دوگانه ی زیر برابرند
Please Login or Register to see this code
Please Login or Register to see this code
Please Login or Register to see this code
Please Login or Register to see this code
Please Login or Register to see this code
Please Login or Register to see this code
Please Login or Register to see this code
کدهای دوگانه ی زیر برابرند
Please Login or Register to see this code
Please Login or Register to see this code
Please Login or Register to see this code
Please Login or Register to see this code
Please Login or Register to see this code
Please Login or Register to see this code
Please Login or Register to see this code
هرکه را اسرار حق آموختند
مهر کردند و دهانش دوختند
مهر کردند و دهانش دوختند

- پست: 522
- تاریخ عضویت: سهشنبه ۷ فروردین ۱۳۸۶, ۹:۳۶ ق.ظ
- محل اقامت: ایران
- سپاسهای ارسالی: 11 بار
- سپاسهای دریافتی: 763 بار
- تماس:
توابع
تابع ها قسنت هایی در برنامه هستند که کد ها در داخل آن ها اجرا می شود هر تابع اول باید تعریف شوند سپس استفاده شوند و در آخر تشریح شوند
تعریف توابع
تعزیف ها در اول برنامه نوشته شود
Please Login or Register to see this code
مانند
Please Login or Register to see this code
استفاده از توابع
توابع برای این که شروع به کار کنند کافی است اسم آن ها آورده شود به همراه مقدار ورودی ها
الین تابعی که بدون فراخوانی و تعربف در اول شروع برنامه اجرا می شود تابع main است
پس توابع را باید در توابع دیگر صدا زد
برای مثال فراخوانی توابع بالا
Please Login or Register to see this code
تشریح توابع
در پایان برنامه باید توابع تشریح شوند که به صورت زیر به کار می روند
Please Login or Register to see this code
مانند
Please Login or Register to see this code
تابع ها قسنت هایی در برنامه هستند که کد ها در داخل آن ها اجرا می شود هر تابع اول باید تعریف شوند سپس استفاده شوند و در آخر تشریح شوند
تعریف توابع
تعزیف ها در اول برنامه نوشته شود
Please Login or Register to see this code
مانند
Please Login or Register to see this code
استفاده از توابع
توابع برای این که شروع به کار کنند کافی است اسم آن ها آورده شود به همراه مقدار ورودی ها
الین تابعی که بدون فراخوانی و تعربف در اول شروع برنامه اجرا می شود تابع main است
پس توابع را باید در توابع دیگر صدا زد
برای مثال فراخوانی توابع بالا
Please Login or Register to see this code
تشریح توابع
در پایان برنامه باید توابع تشریح شوند که به صورت زیر به کار می روند
Please Login or Register to see this code
مانند
Please Login or Register to see this code
هرکه را اسرار حق آموختند
مهر کردند و دهانش دوختند
مهر کردند و دهانش دوختند