} struct
; 1 : m
;bits {
حالا میتونی متغیرهای بیتتو تعرف کنی:
;bits a
;bits b
...
برای توضیحات بیشتر برو توی Help برنامه ، برو توی index و تایپ کن bit fields
سلام متاسفانه من زیاد با microc کار نکردم و اینو نمیدونم . ولی فعلا از این روش استفاده کن: کلا برای صفر و یک کردن بیتهای یک بایت عملگرهای & و | رو بکار ببر . مثلا میخوای بیت 3 از بایت M رو یک کنی : ;M|=8 یا میخای همون بیت رو صفر کنی : ;M&=~8
مثالهای دیگه:
میخوای بیت 0 از بایت M رو یک کنی : ;M|=1 یا میخای همون بیت رو صفر کنی : ;M&=~1
میخوای بیت 1 از بایت M رو یک کنی : ;M|=2 یا میخای همون بیت رو صفر کنی : ;M&=~2
میخوای بیت 2 از بایت M رو یک کنی : ;M|=4 یا میخای همون بیت رو صفر کنی : ;M&=~4
میخوای بیت 4 از بایت M رو یک کنی : ;M|=16 یا میخای همون بیت رو صفر کنی : ;M&=~16 و الی آخر .
برای ساده تر شدن برنامه میتونی از define# استفاده کنی:
define bit0_high M|=1 #
حالا هرجای برنامه خواستی میتونی بجای M|=1 از bit0_high استفاده کنی . :bye
به نام خدا
سلام من خودم تونستم با بیتها در این نرم افزار کار کنم :nice: به این ترتیب که هر رجیستری که بخواهید با بیتهای آن کار کنید باید قبل ازشماره بیت یک F قرار دهید مثل PORTA.F0 که معادل همان PORTA.0 است وبرای رجیستر های دیگر هم می توان هم از این روش استفاده کرد وهم با نوشتن اسم بیت بعد از اسم رجیستر ونقطه مثل INTCON.TMR0F=0 امیدوارم که استفاده کافی از توضیحات من برده باشید
به نام خدا
سلام من خودم تونستم با بیتها در این نرم افزار کار کنم :nice: به این ترتیب که هر رجیستری که بخواهید با بیتهای آن کار کنید باید قبل ازشماره بیت یک F قرار دهید مثل PORTA.F0 که معادل همان PORTA.0 است وبرای رجیستر های دیگر هم می توان هم از این روش استفاده کرد وهم با نوشتن اسم بیت بعد از اسم رجیستر ونقطه مثل INTCON.TMR0F=0 امیدوارم که استفاده کافی از توضیحات من برده باشید
دوست عزیز من قبلا با بیت ها بدون f هم کار کردم تا هالا به مشکلی بر نخوردم
دیدگاه