首先需要做union和位域的定义,union的作用是可用不同的方法读写同一变数。如上例, TSCSTR 是一个字节類型, 可用三种方法读写:Byte (第一句), Bits (第二组) 和 MergedBits (第三组)。Byte就是一个字节的读写, Bits就是可用各比特(PS0, PS1, PS2, , TRST, TSTOP, TOIE, TOF)读写, 在这里,PS0是TSCSTR的bit 0, PS1是bit 1, 如此类推, 最後也可以3比特一起来。 (MergedBits的grpPS便等於PS2, PS1, PS0了!)
接着要定义变数, 上例 _TSC 便是一个在0x20地址的TSCSTR。
在程式里便可改变0x20的任何一位了, 在上例, 我们用Bits的定义设定PS0(即是bit 0)为一。另外也可一字节的改: _TSC.Byte = _TSC.Byte | 0x01; |