日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]1首先區(qū)分bit和sbitbit和int char之類的差不多,只不過char=8位, bit=1位而已。都是變量,編譯器在編譯過程中分配地址。除非你指定,否則這個地址是隨機(jī)的。這個地址是整個可尋址空間,RAM+FLASH+擴(kuò)展空間。bit只有0

1首先區(qū)分bit和sbit

bit和int char之類的差不多,只不過char=8位, bit=1位而已。都是變量,編譯器在編譯過程中分配地址。除非你指定,否則這個地址是隨機(jī)的。這個地址是整個可尋址空間,RAM+FLASH+擴(kuò)展空間。bit只有0和1兩種值,意義有點像Windows下VC中的BOOL。

sbit是對應(yīng)可位尋址空間的一個位,可位尋址區(qū):20H~2FH。一旦用了sbi xxx = REGE^6這樣的定義,這個sbit量就確定地址了。sbit大部分是用在寄存器中的,方便對寄存器的某位進(jìn)行操作的。

sbit的用法有三種:

  第一種方法:sbit位變量名=地址值

  第二種方法:sbit位變量名=SFR名稱^變量位地址值

  第三種方法: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一類的名字,只要下面程序中也隨之更改就行了。

注意:"^"實質(zhì)代表的是異或運算,可以算一下,恰好符合。

2.Sfr用法

sfr似乎不是標(biāo)準(zhǔn)C語言的關(guān)鍵字,而是Keil為能直接訪問80C51中的SFR而提供了一個新的關(guān)鍵詞,其用法是:sfrt變量名=地址值。

例:sfr P1 = 0x90;

這樣的一行即定義P1與地址0x90對應(yīng),P1口的地址就是0x90.

SFR的定義在頭文件reg51.h或reg52.h中。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉