本文目錄一覽:
- 1、請解釋下單片機中的C語言程序
- 2、單片機流水燈要怎麼實現每次多亮一個燈,c語言
- 3、單片機c語言基本語句dat=8是什麼
- 4、單片機c程序中:if(dat&0x01);和dat|=0x80;是什麼意思?
- 5、關於單片機C語言的問題,為什麼這個函數中變量dat沒有賦初值,但是卻在後面被直接使用了?是不是因為
- 6、單片機c語言基本語句dat
請解釋下單片機中的C語言程序
在你include的頭文件里肯定有ADDO的定義,一定是個輸入端口,dat|=ADDO代表
dat=dat|ADDO;之後dat=1就是dat=dat1,左移1位,i==7就是最後1位的時候又採樣1次。
單片機流水燈要怎麼實現每次多亮一個燈,c語言
#includereg51.h
unsigned long int dat=0xffffffff;
void delay(int a)
{
while(a–);
}
main()
{
while(1)
{
dat=1;
P0=dat;
P1=dat8;
P2=dat16;
P3=dat24;
delay(30000);
if(dat==0)dat=0xffffffff
}
}
單片機c語言基本語句dat=8是什麼
unsigned int 無符號整數,這個dat被定義為無符號整數,然後將8賦值給dat,執行了這條語句後,dat的值就為8.
你也可以隨便定義幾個字母為一個數的符號,如定義shuzi為無符號整數,shuzi=8,那麼在調用shuzi的時候,就相當於調用了8,有個好處就是,dat可以隨着進程而重新賦值。
單片機c程序中:if(dat&0x01);和dat|=0x80;是什麼意思?
「」 是邏輯與
「|」 是邏輯或
if(dat 0x01): 不管dat是什麼數和0x01(00000001)做了「與」的運算後,最低位保持不變,其它位均為0.如果dat的最低位為1,則表達式為真,就會執行if語句中的內容。如果dat最低位為0,則表達式為假,不執行if語句,執行if語句後的下一條語句。
dat |= 0x80: 等價於 dat = dat | 0x80,dat和0x80做「或」的運算,意思是最高位置1,其它位保持不變。
具體的可以去參考一下C語言的相關語法。
關於單片機C語言的問題,為什麼這個函數中變量dat沒有賦初值,但是卻在後面被直接使用了?是不是因為
定義時候沒有賦值,初始化為0.
dat | = mask,這一步就是改變dat的值的,是拿0與mask按位或運算,之後把值給dat
單片機c語言基本語句dat
dat=8
也就是:
dat=dat8=dat2^3
也就是將dat的二進制值左移3位,右端用0補充
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/205991.html