你首先賦值P0=0xfe,就是p0^1亮,其他全滅,而你的zuoyi()函數(shù)在執(zhí)行完后才給P0賦值,而zuoyi()執(zhí)行完后,返回值是0;
十載的固原網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。營(yíng)銷型網(wǎng)站建設(shè)的優(yōu)勢(shì)是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整固原建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。成都創(chuàng)新互聯(lián)公司從事“固原網(wǎng)站設(shè)計(jì)”,“固原網(wǎng)站推廣”以來,每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。
左循環(huán)本征函數(shù):
函數(shù)原型:unsigned char _crol_(unsigned char a,unsigned char n);
單片機(jī)左移函數(shù)用法:
例如,P2=0xff; P2=_crol_(P2,1);//語(yǔ)法是對(duì)的,但這是沒意義的,因?yàn)閳?zhí)行程序后P2還是原值0xff
P2=0xfe; P2=_crol_(P2,1);//執(zhí)行程序后P2=0xfd
擴(kuò)展資料:
單片機(jī)相當(dāng)于一個(gè)微型的計(jì)算機(jī),和計(jì)算機(jī)相比,單片機(jī)只缺少了I/O設(shè)備。概括的講:一塊芯片就成了一臺(tái)計(jì)算機(jī)。它的體積小、質(zhì)量輕、價(jià)格便宜、為學(xué)習(xí)、應(yīng)用和開發(fā)提供了便利條件。
單片機(jī)的使用領(lǐng)域已十分廣泛,如智能儀表、實(shí)時(shí)工控、通訊設(shè)備、導(dǎo)航系統(tǒng)、家用電器等。單片機(jī)也被稱為單片微控器,屬于一種集成式電路芯片。
在單片機(jī)中主要包含CPU、只讀存儲(chǔ)器ROM和隨機(jī)存儲(chǔ)器RAM等,多樣化數(shù)據(jù)采集與控制系統(tǒng)能夠讓單片機(jī)完成各項(xiàng)復(fù)雜的運(yùn)算,無論是對(duì)運(yùn)算符號(hào)進(jìn)行控制,還是對(duì)系統(tǒng)下達(dá)運(yùn)算指令都能通過單片機(jī)完成。
參考資料來源:百度百科-單片機(jī)
# include "reg51.h" // 包含頭文件
#define uchar unsigned char
void delay02s(void) // 延時(shí)0.2s子程序
{
unsigned char i,j,k;
for ( i=2;i0;i-- )
for (j=200;j0;j-- )
for (k=250;k0;k-- );
}
void main (void) // 主函數(shù)
{
uchar i,j;
while (1) // 死循環(huán)
{
j=0x01; // j初始化為0x01,左移初始值
for(i=0;i8;i++) // for循環(huán)語(yǔ)句,完成8個(gè)循環(huán)
{
P1= ~ j; // 對(duì)變量j 中的值按位取反后,從P1口輸出
delay02s( ); // 延時(shí)0.2s
j= j1; // 左移1位
}
j=0x80; // 設(shè)置右移初始值j為0x80
for (i=0;i8;i++)
{
P1= ~ j;
delay02s( );
j= j1; // 右移1位
}
}
}