用三个开关模拟三相电的安全监测 程序+仿真+注释
仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)
单片机源程序如下:
- #include < reg51.h >
- sbit ledA=P1^1; //定义三个指示灯端口
- sbit ledB=P1^3;
- sbit ledC=P1^5;
- sbit PA=P1^0; //定义三个按钮端口
- sbit PB=P1^2;
- sbit PC=P1^4;
- sbit ZD=P3^2; //中断信号输入口
- /********************************************************
- 主程序
- ********************************************************/
- void main(void)
- {
- // IT0=0; //电平触发方式
- IT0=1; //下跳沿触发方式
- EA=1; //开总中断
- EX0=1; //开外部中断0
- while(ZD) //把是否有中断信号作为正常状态的运行依据
- {
- ledA=0;
- ledB=0;
- ledC=0;
- }
- }
- /********************************************************
- 外部中断0服务程序 *
- ********************************************************/
- void int0 (void) interrupt 0
- {
- while(!ZD) //神来之笔
- ledA=PA,ledB=PB,ledC=PC;
- }
- /********************************************************/
复制代码
所有资料51hei提供下载:
20161111144-李作鑫-中断作业2.rar
(69.91 KB, 下载次数: 13)
|