2021/07/30


  以78F0849单片机为例,其短直接寻址区域为FE20~FEDF。定义在这个区域内的变量支持位寻址,故要使用自定义的位变量,首先要把变量定义在这个区域内:
__saddr __no_init __BITS8 bSegTmp0; /* 定义一个变量bSegTmp0在短直接寻址区域 */

#define bBit0     bSegTmp0.no0      /* 用宏定义方便使用 */
#define bBit1     bSegTmp0.no1

int main(void)
{
    while(1)
    {
				if (bBit0)
				{
            bBit1 = 1;
        }
        else
        {
           bBit1 = 0;
        }
    }
}