}
{
P1=0xff; }
delay();
for(i=0;i<8;i++)//设置循环次数为8 {
P1=P1>>1; //每次循环P1的各二进位右移1位,高位补0 }
delay(); //调用延时函数
//实例19:用if语句控制P0口8位LED的流水方向
#include
/ void main(void) { while(1) }
//实例20:用swtich语句的控制P0口8位LED的点亮状态 {
if(S1==0) //如果按键S1按下 P0=0x0f; //P0口高四位LED点亮 if(S2==0) //如果按键S2按下 P0=0xf0; //P0口低四位LED点亮 }
#include
unsigned int n; for(n=0;n<10000;n++) ; }
/ 函数功能:主函数
/ void main(void) {
unsigned char i;
i=0; //将i初始化为0 while(1) {
if(S1==0) //如果S1键按下 {
delay(); //延时一段时间
if(S1==0) //如果再次检测到S1键按下 i++; //i自增1
if(i==9) //如果i=9,重新将其置为1 i=1;
}
switch(i) //使用多分支选择语句
{
case 1: P0=0xfe; //第一个LED亮
break;
case 2: P0=0xfd; //第二个LED亮 break;
}
}
case 3:P0=0xfb; //第三个LED亮 break;
case 4:P0=0xf7; //第四个LED亮 break;
case 5:P0=0xef; //第五个LED亮 break;
case 6:P0=0xdf; //第六个LED亮 break;
case 7:P0=0xbf; //第七个LED亮 case 8:P0=0x7f; //第八个LED亮 break;
default: //缺省值,关闭所有LED P0=0xff;
break;
}
//实例21:用for语句控制蜂鸣器鸣笛次数
#include
/ void delay1600(void) {
unsigned char n; for(n=0;n<100;n++) ; }
/ 函数功能:延时形成800Hz音频
/ void delay800(void)
{
unsigned char n; for(n=0;n<200;n++) ; }
/ 函数功能:主函数
/ void main(void) {
unsigned int i;
while(1)
for(i=0;i<830;i++) { {
sound=0; //P3.7输出低电平 delay1600();
sound=1; //P3.7输出高电平 delay1600();
}
for(i=0;i<200;i++) {
sound=0; //P3.7输出低电平
delay800();
sound=1; //P3.7输出高电平 delay800(); }
//实例22:用while语句控制LED
}
}
#include
unsigned char m,n; for(m=0;m<100;m++) for(n=0;n<200;n++) ; }
/ 函数功能:主函数
/ void main(void) {
unsigned char i; }
//实例23:用do-while语句控制P0口8位LED流水点亮
#include
while(1) //无限循环 {
i=0; //将i初始化为0 }
while(i<0xff) //当i小于0xff(255)时执行循环体 {
P0=i; //将i送P0口显示 }
delay60ms(); //延时 i++; //i自增1