سلام دوستان بازم عیدتون مبارک
من احتیاج دارم که به رجیستر status و بیت overflow دسترسی داشته باشم با CCS هم کار میکنم توی help خودش گشتم پیدا نکردم شما می دونید چطوری میشه این کار رو کرد؟
سلام دوستان بازم عیدتون مبارک
من احتیاج دارم که به رجیستر status و بیت overflow دسترسی داشته باشم با CCS هم کار میکنم توی help خودش گشتم پیدا نکردم شما می دونید چطوری میشه این کار رو کرد؟
سلام
متاسفانه توی کامپایلر CCS شما نمیتونید به صورت مستقیم یک رجیستر رو مقدار دهی کنید
شما باید ادرس اون رجیستر رو از توی دیتاشیت دربیارید و به صورت یک ثابت با دستور زیر
تعریفش کنید و از طریق اون نام گذاری مقدار دهی کنید یا بخونیدش
کد:#define regADD name
سلام
از دستورات #LOCATE و #BYTE و #BIT و #WORD هم میتونید برای مقدار دهی رجیستر ها استفاده کنید .
مثال :
دسترسی به بیت دریافت داده در رجیستر RCSTA
// PIC18 address
#bit CREN =0xfab.4
دسترسی به بافر spi :
#byte SSPBUF = 0x0FC9
از این به بعد CREN بیت دریافت داده در رجیستر RCSTA هست که شما میتونید اون رو صفر یا یک کنید :
CREN=0;
CREN=1;
یا SSPBUF همون بافر spi هست که شما میتونید اون رو بخونید یا بنویسید :
SSPBUF=command;
در دستور بالا command به باس spi ارسال میشه .