راح أعطيك داله مايكرو وهي جاهزه ويمكنك تعريفها في البدايه البرنامج من خلال هذه داله
1- يمكن فحص اي بت من البورت مثلا اريد اعرف حاله RB5
وهاي هي داله
كود:
#define Check_bit(var,pos) var&(1<<pos)
2- اريد أجعل اي بت =1 مثلا اريد RB4_bit=1
كود:
#define set_bit(var,pos) (var|=(1<<pos) )
3- اريد أجعل اي بت =0 مثلا اريد RB4_bit=0
كود:
#define clear_bit(var,pos) ( var&=~(1<<pos) )
4- اريد أعكس حاله اي بت مثلا اريد عكس حاله RB4 فأذا كان =1 يصبح قيمته=0 والعكس بالعكس
كود:
#define toggle_bit(var,pos) (var^=(1<<pos) )
ويمكنك كتابتها معا لكي تستخدمها في اي مشروع
كود:
#define Check_bit(var,pos) var&(1<<pos)
#define set_bit(var,pos) (var|=(1<<pos) )
#define clear_bit(var,pos) ( var&=~(1<<pos) )
#define toggle_bit(var,pos) (var^=(1<<pos) )
تلاحظ كل داله تأخذ اسم البورت ورقم البن
مثلا اريد أختبر هل RB2=1 عندها أجعل RB5=1
كود:
if( Check_bit(portb,2) !=0){set_bit(portb,5); }
على فكره هذه معلومات عامه ممكن الاستفاده منها في مشاريع مختلفه