單片機c語言if
㈠ 51單片機c語言IF語句除了嵌套,怎麼寫同時滿足3個條件才執行循環體的語句
程序代碼:
void main()
{
while(1)
{
if(P0_0==1) //如果P0.0為高電平
{
LED=0; //點亮一個LED燈
delayms(5000); //如果在這個延時的5秒內,P0.0轉為了低電平,程序則不會繼續執行後面的語句,我需要繼續執行,該如何處理?
if(P0_0==0)
break;
}
}
}
延時之後做個P0_0的判斷就可以了吧,break跳出循環。
㈡ 在51單片機c語言中if(1)代表什麼意思
永遠為真的判斷條件。也就是說只要運行到這個if,一定執行else前的內容而不是else後的內容。
㈢ 弱弱的問下,單片機c語言中,判斷一個變數如if(fl==1)和if(fl==2)這兩個判斷是等價的嗎
不等價
如果這么寫 if(f1) 只要f1非0都是等價的
因為 非0即為真, if(f1==1) 指當f1等於1的時候條件才成立才為真。同樣 if(f1==2) 指當f1等於2的時候條件才成立才為真.
如果寫成if(f1) 則指 f1隻要不等於0條件就成立
㈣ 單片機C語言中這句話是什麼意思 if( DEC
這個地方set_st 相當於一個標志,或者說是一個條件,#define DEC P3_2這是個宏定義,你看到DEC就當成是P3_2就行了;
if(DEC==0&&set_st==1)
shangxian--;
要搞清楚這句話的意思,必須先搞清楚&&這個符號的意思,if(DEC==0&&set_st==1)這句話的意思是 如果DEC 的電平是0而且set_st的電平是1,即這兩個條件同時滿足的時候,shangxian這個變數減小;、
[email protected]
㈤ 單片機c語言if狀態判斷怎麼寫
你這ROW1,ROW2是兩個按鍵嗎?是要按下按鍵,改變兩種狀態,分別為0、1,是這樣嗎?
那狀態可以聲明一個unsigned
char
型變數啊,如,
unsigned
cha
state;
就可用了,state=0;
state=1;
也可以定義一個位變數,更節省內存。如
bit
state;
也同樣用法,state=0;
state=1;
再判斷狀態時,就可以寫成
if(state==0)
{
//狀態=0,做什麼
}
if(state==1)
{
//狀態=1,做什麼
}
㈥ 51單片機C語言if判斷語句及邏輯或能寫在一起嗎
只能這樣寫:if(a==0x45 || a==0x14);
(a==0x45||0x14),將是先計算 0x45||0x14 的結果,再與 a 比較,顯然不正確;
㈦ 3、單片機C語言中的」if「語句是循環語是對的嗎
不對的。if是判斷語句,不是循環語句。if要和goto配合起來才能起到循環的作用,不過現在不用goto了,因為它破壞了程序的結構化設計。
㈧ 單片機C語言為什麼這個程序執行到IF語句時沒有延時呢
unsigned
i,tt,m,n;
,應該加上int
,否則m=30000,超過了m的范圍
㈨ else if和if語句的用法,C語言單片機
基本上情況一樣,假設在if中不修改i的值的話。但如果在if中修改i的值就不一樣了。
第一種情況是 三個if都可能執行,但第二種情況只會執行其中的一個if。
例如:
i=11時,下面程序雖然看起來很無聊,但是確實可能存在的:
if(i>10)
{
i =9;
}
if(i<10)
{
i=8;
}
則這兩個if都會執行,最後i=8了。
但是
if(i>10)
{
i=9;
}
else if(i<10)
{
i=8;
}
則只會執行if,不會執行else if,兩個是互斥的。最後i=9.
㈩ 單片機if語句格式
sbit P2^0=A1;
sbit P1^0=A2;
sbit 語句等號後邊應該是地址。
sbit P2^0=A1;能通過編譯碼?本人試一下:test.C(6): error C141: syntax error near '^', pected '='
很遺憾,沒通過。
如果改成 sbit A1=P2^0; sbit A2=P1^0;試試。注意分號,語句只能使用英文字元。
還有if(A1=0) 也不妥吧,比較應為== 即 if(A1==0)才好。
另外else 後邊不應有分號。
修改後的代碼如下:
#include<reg52.h>
sbit A1=P2^0; //sbit P2^0=A1;
sbit A2=P1^0;//sbit P1^0=A2;
void main()
{
while(1)
{
if(A1==0)
{
A2=1;
}
else//esle;//單詞也不對。
{
A2=0;
}
}
}
僅供參考。