1樓:匿名使用者
這樣實現:
sbit p20=p2^0;
char consum=0;
char i,bitflag=0x01;
for(i=0;i<8;i++)
if(consum==3) p20=1;
希望我的回答對你有幫助,有什麼問題歡迎一起**,謝謝。
2樓:匿名使用者
如果是c51微控制器
#include
void main()}}
//如果找完一次p0口後都不夠三個1 則進行下一次找描p0=0x00; //
i=0;
}//while's end
}//main's end
思想就是不斷的迴圈移位和位與的方式判斷p0口,直到p0口有加到三個一的時候才跳出,寫得不怎麼好你自己根據需要去修改!
3樓:做而論道
#include
sbit p2_0 = p2^0;
void main()}
4樓:
你的題目本身錯誤太多。
另外,你這種方法是不可行的。
5樓:夜貓叫楓子
我覺得,你去看一下 郭天祥 的十天學會微控制器c語言教程 很不錯
6樓:匿名使用者
我認為你把有3個1的數都列出來組成陣列,
tab[a]=
然後再用for函式去查詢對比。
微控制器p0^0,p0^1,p0^2這些是什麼意思,是不是表示那個介面的地址?
7樓:匿名使用者
p0^0,p0^1,p0^2分別表示p0口的d0、d1、d2位,也可以理解為其地址,其實p0口就一個地址即80h,p0^0,p0^1,p0^2只是這個地址代表的前三位。
8樓:匿名使用者
表示p0口的某一位,p0^0是名稱,非地址,地址是p0暫存器裡的某個地址
9樓:匿名使用者
這是微控制器c語言中位定義的用法,若寫作sbit led=p1^0;則含義為p1口的d0位輸出控制led。
10樓:騎天干蒿曜
微控制器中sbit
p0=p2^0是一個位變數定義語句,意思是定義位變數p0為p2.0。但是從這句話本身來說,在編譯時會出錯的,因為p0是內部關鍵字,代表p0口,不能用來表示使用者自定義變數。
keil中c語言寫c51的程式 怎麼把要要用到的io口合併,如 sbit a=p0^0; sbit b=p0^1; sbit c=p0^2;
11樓:不要神話
是無法把三個位合併起來用的,你只能是整個p0口一起賦值,但是賦值的時候可以遮蔽p0口的高5位,比如你要讓a b c都等於1而p0口其他位不變只需要寫上:p0|=0x07,意思就是讓p0口與0x07按位或,或完之後低三位就都變成1了而高5位不變,如果你要讓a b c都等於0則只需寫:
p0&=0xf8,這樣相當於讓低三位與0按位與,與完之後就變成0了
微控制器c語言 p1^0 = 1 和p0 = 0xff
12樓:匿名使用者
^微控制器p1埠共8個引腳 ,分別為p1^0-p 1^7 組合語言一般寫成p1.0
p1^0=1,就是讓這個埠的第一個回引腳輸出高電平答
p0埠也有8個引腳 p0 = 0xff就是讓該埠8個引腳均輸出高電平
13樓:愛夜
p1^0 表示 p1i/o口裡面的0號引腳 。 =1 表示 給這個引腳賦值1 (就是高電平)
p0 = 0xff 置為高電平
14樓:匿名使用者
第一個意思是是p1 i/o口的第0位(第0個引腳)賦值為1,第二個是直接對p0口一次完全賦值(8個引腳)。
在51微控制器中,sbit con=p0^0 中的^**?
15樓:匿名使用者
^是c語言標準運算子
參看51微控制器標頭檔案
以p2^4;為例, 看他的定義 會找到sfr (p2 , 0xa0);
sbit (p2_7 , 0xa0, 7);
sbit (p2_6 , 0xa0, 6);
sbit (p2_5 , 0xa0, 5);
sbit (p2_4 , 0xa0, 4);
sbit (p2_3 , 0xa0, 3);
sbit (p2_2 , 0xa0, 2);
sbit (p2_1 , 0xa0, 1);
sbit (p2_0 , 0xa0, 0);
再看sbit (p2_4 , 0xa0, 4);的定義#define sbit(x, y, z) sbit x = y^z
16樓:
「^」是取位符號,sbit con=p0^0,取p0口的第0位
微控制器C語言程式設計題,微控制器C語言程式設計題
爬行的山羊 這是兩個題啊。哈哈好做,第一個有c語言的冒泡法排序,第二個用中斷,讀,輸出就可以 include define led0 0 define led1 1 define led2 2 define ledport p2 sbit sw0 p1 0 sbit sw1 p1 1 sbit sw...
微控制器c語言字串對比問題,微控制器C語言字串對比問題
要寫for迴圈判斷,不能直接用 也不能用strcmp等標準庫裡面的函式 風若遠去何人留 c語言字串對比可以呼叫標準庫函式strcmp。該函式宣告在string.h中,形式為 int strcmp char a,char b 返回值有三種情況,1,0或 1.其比較原則為 1 從第一個字元開始按照asc...
微控制器除法運算,微控制器中C語言如何實現浮點除法運算
如果直接用c程式寫,那就沒必要考慮除法的細節了,比如unsigned int a,b,c a 0x3456 b 0x1040 c a b 如果你想用匯編搞定,那沒辦法,老老實實的寫或者網上 書上 找這樣的程式,肯定能找到的。不過我可以說一下演算法,那就是相減,被除數連續不斷的減去除數,直到差小於除數...