㈠ sbit在單片機中的表示和作用
位定義,如 sbit a=P0^0; 就表示a代表P0^0口。
a=1; P0^0口就輸出高電平,sbit就是s位,代表二進制數的多少位,在單片機裡面一般有8位和16位立即數和地址。
位定義:
sbit led=P1^1;
//LED燈接在P1.1口
(1)單片機c語言sbit擴展閱讀:
注意事項
在C語言里,如果直接寫P1.0,C編譯器並不能識別,而且P1.0也不是一個合法的C語言變數名,所以得給它另起一個名字。
sbit的用法有三種:
1、sbit 位變數名=地址值
2、sbit 位變數名=SFR名稱^變數位地址值
3、sbit 位變數名=SFR地址值^變數位地址值
如定義PSW中的OV可以用以下三種方法: sbit OV=0xd2
1、說明:0xd2是OV的位地址值 sbit OV=PSW^2
2、說明:其中PSW必須先用sfr定義好 sbit OV=0xD0^2
3、說明:0xD0就是PSW的地址值
因此這里用sfr P1_0=P1^0;就是定義用符號P1_0來表示P1.0引腳,也可以起P10一類的名字,只要下面程序中也隨之更改就行了。
㈡ 51單片機用C語言,sbit怎麼使用什麼作用呢什麼含義
1.
sbit是一種數據類型,表示一個位,值為0或1
2.
舉個例子:
sbit
CLK=P3^0;
其中CLK佔一個位,表示埠P3^0,表示輸出給這個埠的數據不是0就是1.
(lz學過51,所以P3^0的含義就不用我多解釋了吧)
3.
lz如有其他問題可追問
㈢ C語言中sbit是什麼意思,與bit有什麼區別
1.C語言中沒有sbit關鍵字,這個是編譯器裡面的關鍵字。 sbit應該是keil c51中的關鍵字,表示位寄存器。一個埠8位,用這個關鍵字,可以單個位操作。
2.bit和sbit都是C51擴展的變數類型。典型應用是:sbit P0_0=P0^0;//即定義P0_0為P0口的第1位,以便進行位操作。bit和int char之類的差不多,只不過char=8位, bit=1位而已。都是變數,編譯器在編譯過程中分配地址。除非你指定,否則這個地址是隨機的。這個地址是整個可定址空間,RAM+FLASH+擴展空間。bit只有0和1兩種值,意義有點像Windows下VC中的BOOL。
㈣ keil編程時sbit的意義及用法
keil編程時sbit的意義及用法:
定義 P0.6為LED ,程序中的P0.6都用LED表明 。
是編譯器不識別P0.6(P0.6用P^6表明)。
用LED程序比較易讀,知道這個口是接1個LED。
sbit是C51擴展的變數類型。
典型應用是sbit P0_0=P0^0://即定義P0_0為P0口的第1位,以便進行位操作。
sbit一定要寫在MAIN函數前面,不然主函數里不識別未定義的這些。
㈤ 單片機C語言編程關於sbit定義老是會出錯,求解。
keil c51 sbit為什麼放到主函數外面
(http://..com/link?url=-)
sbit聲明的部分是編譯器預處理的部分,就是為了給寄存器(位或位元組)取個別名,是在函數沒有編譯之前必須完成的,放在主函數中就是編譯中要處理的內容了,對於那些符號地址,C編譯器不認識,有的名字也不允許(如P1.1),必須在編譯之前進行替代,就是sbit聲明,替代的內容為相應單片機寄存器的頭文件里邊定義的,如REG51.H
㈥ 單片機C編程sbit指令是什麼意思
定義特殊功能寄存器的位變數。
典型應用是:sbit P0_0=P0^0;//即定義P0_0為P0口的第1位,以便進行位操作。
希望解釋對你有幫助。
㈦ 單片機,sbit什麼意思
sbit single bit 。。。。。。。。。。。。就是一位。。。。。。。
㈧ 單片機c語言里 sbit P1_0=0x90語句的作用是什麼
這個是C51單片機特有的語句之一。
sbit是C51擴展的變數類型,用來定義特殊功能寄存器的位變數。
P1_0指的是晶元管腳上的標准輸入輸出管腳1.0。由於P1.0並不是合法的C語言變數,所以用下劃線_代替.,以P1_0表示P1.0。
當執行
sbit
P1_0
=
0x90時,就是把管腳
P1.0的值,賦值為0x90。
也就是對應的8個管腳,依次按照0x90的二進制值B10010000來輸出電平,依次為高低低高低低低低。
㈨ sbit在單片機中的意思是什麼
sbit在單片機中的意思是定義特殊功能寄存器的位變數,bit和sbit都是C51擴展的變數類型,在C語言里如果直接寫P1.0,C編譯器是不能夠識別的,而且P1.0也不是一個合格的C語言變數名,所以必須要給它起另外一個名字,這里就會起名為P1_0。
sbit有三種用法:
第一種方法:sbit bit variable name=address value。
第二種方法:sbit bit variable name=SFR name^ variable bit address value。
第三種方法:sbit bit variable name=SFR address value^ variable bit address value.