به نام خداوند بخشنده و مهربان!

سلام دوستان...!

امیدوارم حال تمام هموطنای عزیزم خوب باشه. امروز یه نکته کوچک ولی مهم رو میخوام بگم!

ببینید Toggle توی انگلیسی یعنی تغییر وضعیت! توی برنامه کاربرد های مختلفی میتونه داشته باشی ولی اگه بخوایم کاربرد اونو توی میکرو بررسی کنیم میتونیم یه مثال ساده بزنیم! مثلا شما فرض کنید یه کلید و یه LED به میکرو وصل کردید (از کلید های PUSH Button که فقط لحظه ای هست یعنی اگه فشار بدید کلید وصل میشه و اگه دستتون رو از روش بردارید دوباره قطع میشه) حالا میخوایم یه برنامه بنویسیم که وقتی کلید وصل و قطع بشه (یعنی دستتمون رو بزاریم رو کلید و فشار بدیم تا وصل بشه و دستمون رو دوباره برداریم تا قطع بشه) یه LED روشن بشه و دوباره اگه اینکار رو تکرار کنیم لامپ خاموش بشه! یعنی با هر بار زدن کلید لامپ اگه روشنه خاموش بشه و اگه خاموشه روشن بشه! (به این میگن تاگل یا تغییر وضعیت یا برعکس کردن وضعیت)

توی برنامه نویسی برای تاگل خوب باید دو تا حالت داشته باشیم یعنی یا 0 یا 1 باشه! به این میگن عملگر بیتی یعنی فقط روی یک بیت تاثیر میزاره! توی برنامه نویسی علامت تاگل ^ هست!

مثلا میخوایم بیت 5 یه متغییر رو تاگل کنیم! باید یه برنامه به صورت زیر بنویسیم!

int Num=127;    // 1111111
Num^=1<<5;   // Num=1011111

خوب اینو میتونیم برای رجیستر ها هم استفاده کنیم!

مثلا توی برنامه نویسی LPC1768 برای تغییر وضعیت بیت 1 یا دومین بیت داریم:

LPC_GPIO2->FIOPIN0^= 1 << 1;

امیدوارم به دردتون خورده باشه!

موفق باشید...!

یا علی مدد...!