1樓:
人工語言,可以理解為一些規定,哪有為什麼呀。
2樓:
授之以漁吧
你有沒有考慮一下便程式的時候為什麼要引用標頭檔案? 如果不呢?
去看一下 #include或者是類似的標頭檔案你就會發現有
例:sfr p1 = 0x90;
這樣的一行即定義p1 與地址0x90 對應,p1 口的地址就是0x90.
sfr的定義在標頭檔案reg51.h或reg52.h中。
在c51裡,利用sbit可訪問ram中可定址位或sfr中可定址位。
如果直接寫p1.0,c 編譯器並不能識別,而且p1.0 也不是一個合法的c語言變數名,所以得給它另起一個名字,比如p1_0,可是p1_0 是不是就是p1.
0呢?c 編譯器可不這麼認為,所以必須給它們建立聯絡,這裡使用了keil c的關鍵字sbit 來定義,sbit 的用法有三種:
第一種方法:sbit 位變數名=地址值
第二種方法:sbit 位變數名=sfr 名稱^變數位地址值
第三種方法:sbit 位變數名=sfr 地址值^變數位地址值
例如,定義p1 中的p1.1腳可以用以下三種方法:
sbit p1_1=0x92 (1)說明:0x92是p1.1 的位地址值
sbit p1_1=p1^1 (2)說明:其中p1必須先用sfr 定義好
sbit p1_1=0x90^2 (3)說明:0x90 就是p1的地址值
微控制器程式中sbit p1_1=p1^0是什麼意思?
3樓:匿名使用者
sbit p1_1=p1^0的意思是 定義p1^0這個位的名字為p1_1;之後寫p1_1的地方就是p1^0這個i/o口,你也可以不用,凡是有p1_1的地方就寫p1^0也可以~~
4樓:匿名使用者
每個埠都有預設值的,一般情況下是0,你不賦值並不代表他沒有值,你可以每次都給他賦予不用的埠確定的值
5樓:匿名使用者
#includesbit p1_1=p1^0;unsigned int a ;void main()}sbit是位定義,636f707962616964757a686964616f31333332633639sbit p1_1=p1^0;是為把p1.0這一位定義成p1_1(相當於一個識別符號),在main函式中的p1_1=0; 相當於p1.0=0 ,即p1.
0輸出低電平。 在函式中不允許對p0~p3口進行為位操作的,故使用前要先進行位定義。 又如:
#includesbit led=p1^0;unsigned int a ;void main()}與你上面的程式一樣的效果!如有不清楚歡迎追問!
6樓:匿名使用者
把p1.0位的值送入p1.1位
7樓:匿名使用者
用p1_1這個變數名來代替p1.0位
微控制器c語言 p1^0 = 1 和p0 = 0xff
8樓:匿名使用者
^微控制器p1埠共8個引腳 ,分別為p1^0-p 1^7 組合語言一般寫成p1.0
p1^0=1,就是讓這個埠的第一個回引腳輸出高電平答
p0埠也有8個引腳 p0 = 0xff就是讓該埠8個引腳均輸出高電平
9樓:愛夜
p1^0 表示 p1i/o口裡面的0號引腳 。 =1 表示 給這個引腳賦值1 (就是高電平)
p0 = 0xff 置為高電平
10樓:匿名使用者
第一個意思是是p1 i/o口的第0位(第0個引腳)賦值為1,第二個是直接對p0口一次完全賦值(8個引腳)。
求微控制器彙編程式用定時器計數器在p10口線上產
500us週期方抄波 佔空比 2 5 即高電平bai200us,低du電zhi平300us 0000h ajmp start 000bh ajmp t0int 0030h start mov sp,60h setb ea setb et0 mov tmod,01 t0為工作 方式1clr p1.0 ...
51微控制器中c 1是什麼意思,51微控制器C語言中 和 的意思是什麼?
51微控制器中c 1表示 運算時有進位或者借位。如果c是自己定 bai義的變數,那du麼這個就是單純的賦zhi值語句。如果c是psw 程dao序狀態字 版,用於儲存指令執行結 權果的狀態資訊 中的cy 進位標誌位 那麼這句就是表明之前,執行的某些算術運算或者邏輯運算產生了進位或借位了。變數賦值!51...
這是51微控制器程式語言這個code是什麼作用?在c語
因為微控制器ram很有限,這些陣列裡的內容是不變的,所以將他們儲存到rom中,code關鍵字的作用就是告訴編譯器把這些內容寫到rom中 你好,這個是 的意思,是定義一些十六進位制的 的。c語言中是沒有這個的,這也是微控制器程式語言和c語言的一個差別 說明串列埠助手在51微控制器除錯過程中的用途.c語...