拨码开关控制实验电路图 流程图 /* 基本开关控制实验 */ //==宣告区================================= #include //定义8051头文件,引入reg52.h #define SW P2//定义开关接至P2 #define LED P1//定义LED接至P 1 //==主程式================================= main()//主程序开始 { SW=0xff;//规划输入端口 while(1)//无穷循环,程式一直跑 LED=SW;//读取开关(P2)状态,输出到LED(P1) }//主程序结束 思考一下! 在本实验里,有没有“抖动”的困扰? 若希望拨码开关中的 S1、S3、S5三个开关都 on,则前四个 LED 亮;S2 或 S4 或 S6开关 on,则后四个 LED 亮;S7及 S8 开关 on, 则所有LED全亮,程序应如何编写? 若将拨码开关换成一般家里墙壁上的开关,而 LED换成继电器(RELAY),是否可作为家里的负载控制? 按钮ON-OFF 控制实验 按钮 ON-OFF 控制实验电路图 流程图如下: /* 基本按钮 ON-OFF 控制实验 */ //==声明区======================================= #include//定义8051 头文件,引入reg52.h sbit PB1=P2^0;//声明按钮1 接至P2.0 sbit PB2=P2^1;//声明按钮2 接至P2.1 sbit LED=P1^0;//声明LED 为P1.0 //==主程式======================================= main()//主程序开始 { LED=1;//关闭LED PB1=PB2=1;//规划输入端口 while(1)//无穷循环,程式一直跑 { if (PB2==0) LED=1;//若按下PB2,则关闭LED else if (PB1==0) LED=0;//若按下PB1,则点亮LED }//while 循环结束 }//结束程序 思考一下! 在本实验里,有没有“抖动”的困扰? 若将按钮开关当成启动电机的 ON-OFF 开关,而 LED 换成继电器(RELAY),是否可作为电机控制? 若同时按下 PB1 与 PB2 按钮会怎样? 按钮切换式控制实验 按钮切换式控制实验电路图 流程图 实验代码: /* 按钮切换式控制实验 */ //==声明区===================================== #include//定义8051 头文件,引入reg52.h sbit PB1=P2^0;//声明PB1 接至P2.0 sbit LED=P1^0;//声明LED 接至P1.0 void debouncer(void);//声明防弹跳函数 //==主程序===================================== main()//主程式开始 { LED=1;//关闭LED PB1=1;//规划P2.0 为输入埠 while(1)//无穷循环,程序一直跑 { if (PB1==0)//若按下 PB1 { debouncer();//呼叫防弹...