自定义寄存器出现error C142: 'SFR': invalid base address

今天打算自定义一个.H文件来写写代码。自定义寄存器的时候发现出现这样的问题7816.H(5): error C142: 'SFR': invalid base address。

下面是我自定义的寄存器

sfr RFCON         = 0x30;

后来百度了一下,没有能解决我问题的答案。猜想可能是这个地址不能定义,于是就是翻了一篇51的specification。找到下面这图

才知道,寄存器不能乱定义。地址要比0x7F更大才可以。改成下面的样式就OK。

sfr RFCON         = 0xA0;

 

posted on 2017-02-08 15:44  猫咪大王  阅读(3077)  评论(0编辑  收藏  举报