我是51单片机学徒也学着写了一个星三角控制电路
单片机源程序如下:
- /***************************************
- 单片机采用STC89C52RC
- ****************************************/
- #include<reg52.h>
- sbit x0=P3^4; //x0启动
- sbit x1=P3^6; //x1停止
- sbit y0=P1^0; //y0主接触器
- sbit y1=P1^1; //y1星形接触器
- sbit y2=P1^2; //y2三角形接触器
- void main()
- {
- unsigned char t ; //声明定时器
- TMOD=0x10; //定时器1工作模式
- TH1=(65536-50000)/256; //定时器1高8位初始值
- TL1=(65536-50000)%256; // 定时器1低8位初始值
- TR1=1; //启动定时器1
-
- while(1)
- {
- if((x0==0||y0==0)&&x1==1)y0=0; //按下x0启动y0置on主接触器吸合
- else y0=1;
- if(y0==0) //y0置on启动定时器1
- {
-
- if(TF1==1)
- {
- TF1=0;
- TH1=(65536-50000)/256;
- TL1=(65536-50000)%256;
- t++;
- if(t<=100)(y1=0,y2=1); //5秒内y1星形接触器吸合
-
- if(t>=100)(y1=1,y2=0,TR1=0); //5秒后y1复位,y2三角形接触器吸合
- }}
-
- if(x1==0)(t=1,y1=1,y2=1,TR1=1); //按下 x1停止y0,y1,y2,定时器全部复位
- }
- }
复制代码
所有资料51hei提供下载:
定时器无触点C语言星三角控制.zip
(12.53 KB, 下载次数: 11)
|