close

在Microchip的組語中最常用來操作BIT的就是BSF、BCF與BTFSC、BTFCC,但在標準C語言中對於Bit 的使用並不多,由於在單晶片的程式撰寫中,常常需要對Bit作一些判斷與設定,所以Hitech C提供一個方法來定義一個8位元的變數中的每一個Bit,

 

首先定義一個Unsigned char變數 value,可以直接定義其暫存器位置為0x30,

 static unsigned char value @ 0x30; 

 

然後定義value變數中的每一個Bit的定義與位置,如var0是指value的第一個bit,位置在0x30暫存器的第一個bit,其他以此類推

 static bit var0 @ (unsigned)&value*8+0; 

 static bit var1 @ (unsigned)&value*8+1;

 static bit var2 @ (unsigned)&value*8+2;

 static bit var3 @ (unsigned)&value*8+3;

 static bit var4 @ (unsigned)&value*8+4;

 static bit var5 @ (unsigned)&value*8+5;

 static bit var6 @ (unsigned)&value*8+6;

 static bit var7 @ (unsigned)&value*8+7;

 這裡提供一個範例,用來說明如何在兩種語言中操作Bit: 

最後value的值為B’00001011’

可以用Watch與breakpoint看一下value的變化。

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 fishark 的頭像
    fishark

    魚的方舟圖形語言的世界 - LabVIEW & Arduino & Python工作室 - 新網站https://labview-tech.blogspot.com/

    fishark 發表在 痞客邦 留言(0) 人氣()