資源描述:
《單片機(jī)c語言簡(jiǎn)單編程》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、1、點(diǎn)亮2、3、5、8四個(gè)發(fā)光二極管。(課后作業(yè))#includesbitLED2=P1^0;sbitLED3=P1^3;sbitLED5=P1^5;sbitLED8=P1^6;main(){LED2=0;//第二盞燈亮LED3=0;//第三盞燈亮LED5=0;//第五盞燈亮LED8=0;//第八盞燈亮while(1);}2、設(shè)計(jì)走馬燈和數(shù)碼管逐一顯示數(shù)字。(課后作業(yè))#includevoidDelay(){unsignedintj;j=30000;while(j--);}//
2、時(shí)間延時(shí)函數(shù)voidmain(){inta[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//數(shù)碼管顯示段碼intb[10]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,0xaa,0x55};//點(diǎn)亮燈的段碼unsignedchari;while(1){for(i=0;i<10;i++){P1=b[i];P2=a[i];Delay();}}}3、開關(guān)K1控制加,開關(guān)K2控制減,開關(guān)K3控制復(fù)位。當(dāng)減到小于0的時(shí)
3、候再從99開始減,當(dāng)加到99的時(shí)候又從0開始加。(課后作業(yè))#includesbitBIT1=P3^0;sbitBIT2=P3^1;sbitButton1=P3^7;sbitButton2=P3^6;sbitButton3=P3^5;unsignedchara[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//數(shù)碼管顯示段碼voidDelay(unsignedintt){unsignedinti,j;for(i=0;i4、)for(j=0;j<252;j++){;}}//時(shí)間延遲函數(shù)的定義voidmain(){chardat=0;//有符號(hào)數(shù)intb[10]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,0xaa,0x55};//跑馬燈顯示的段碼unsignedcharz;while(1){for(z=0;z<10;z++){BIT1=0;BIT2=1;P2=a[dat/10];Delay(20);P2=0xff;//消隱,防止個(gè)位的數(shù)在十位顯示,導(dǎo)致顯示亂碼BIT1=1;BIT2=0;P2=a
5、[dat%10];Delay(20);P2=0xff;//消隱P1=b[z];Delay(20);//跑馬燈顯示if(Button1==0){dat++;if(dat>=99)dat=0;while(Button1==0);}//按鍵1是控制加的,當(dāng)加到大于等于99時(shí)又從0開始加if(Button2==0){dat--;if(dat<=0)dat=99;while(Button2==0);}//按鍵2是控制減的,當(dāng)減到小于等于0時(shí)再從99開始減if(Button3==0){dat=0;while(Button3=
6、=0);}}//按鍵3是控制復(fù)位的,任何時(shí)候按下就歸0}}4、開始1、2、3、4閃爍,按一下K1,5、6、7、8閃爍,再按一下K1全部閃爍。(課堂作業(yè))#includesbitK1=P3^0;unsignedcharstate=0;voidDelay(unsignedintt){unsignedinti,j;for(i=0;i7、f;Delay(20);}elseif(state==1){P1=0x0f;Delay(20);P1=0xff;Delay(20);}elseif(state==2){P1=0x00;Delay(20);P1=0xff;Delay(20);}if(K1==0){state++;if(state>=3)state=0;while(K1==0);}}}5、先是1、2、3、4燈閃8下,再5、6、7、8燈閃8下。循環(huán)閃爍。(實(shí)驗(yàn)一2)#includevoidDelay(){unsignedintj;j=
8、50000;while(j--);}main(){chari=0;while(1){for(i=0;i<16;i++){if(i<8){P2=0Xf0;Delay();P2=0xff;Delay();}elseif(i<16){P2=0X0f;Delay();P2=0xff;Delay();}}}}6、逐個(gè)點(diǎn)亮8個(gè)發(fā)光二極管(第一次亮一個(gè)。。。最后全亮,然后再重新開始)(