我在一个头文件里这样定义:<br />#pragma DATA_SEG MY_ZEROPAGE<br />typedef union<br />{<br />byte Byte;<br />struct <br />{<br />byte FLAG0 :1;<br />byte FLAG1 :1;<br />byte FLAG2 :1;<br />byte FLAG3 :1;<br />byte FLAG4 :1;<br />byte FLAG5 :1;<br />byte FLAG6 :1;<br />byte FLAG7 :1;<br />} Bits;<br />} FLAGSTR;<br />extern volatile FLAGSTR _FLAG;<br /><br />#define FLAG _FLAG.Byte<br />#define FLAG_FLAG0 _FLAG.Bits.FLAG0<br />#define FLAG_FLAG1 _FLAG.Bits.FLAG1<br />#define FLAG_FLAG2 _FLAG.Bits.FLAG2<br />#define FLAG_FLAG3 _FLAG.Bits.FLAG3<br />#define FLAG_FLAG4 _FLAG.Bits.FLAG4<br />#define FLAG_FLAG5 _FLAG.Bits.FLAG5<br />#define FLAG_FLAG6 _FLAG.Bits.FLAG6<br />#define FLAG_FLAG7 _FLAG.Bits.FLAG7<br />#endif<br /><br />然后调用的时候,显示这个警告:<br />L1823: External object _FLAG in E:Demodemo_DataStandardObjectCodeSci.c.o created by default |
|