|
ZXC-0168 應(yīng)用舉例.jpg (454.38 KB, 下載次數(shù): 44)
下載附件
2023-11-13 14:01 上傳
ZXC-0168 標(biāo)識圖.jpg (533.77 KB, 下載次數(shù): 41)
下載附件
2023-11-13 14:01 上傳
ZXC-0168 原理圖_00.jpg (1.5 MB, 下載次數(shù): 35)
下載附件
2023-11-13 14:01 上傳
/************* 功能說明 **************
開關(guān)信號控制對應(yīng)繼電器輸出點動方法2
使用 if....while....語句實現(xiàn)繼電器輸入控制輸出(一對一)
******************************************/
#include "STC8A8K64D4.h" //包含此頭文件后,里面聲明的寄存器不需要再手動輸入,避免重復(fù)定義
#include "intrins.h" //一般程序中需要使用到空指令_nop_();字符循環(huán)移位指令_crol_等時使用。
#define uchar unsigned char//宏定義無符號字符型
#define uint unsigned int //宏定義無符號整型
/************* 本地常量聲明 **************/
/************* 光耦隔離輸入口 **************/
sbit IN1= P5^5;//光耦隔離輸入口1
sbit IN2= P4^0;//光耦隔離輸入口2
sbit IN3= P6^4;//光耦隔離輸入口3
sbit IN4= P6^5;//光耦隔離輸入口4
sbit IN5= P6^6;//光耦隔離輸入口5
sbit IN6= P6^7;//光耦隔離輸入口6
sbit IN7= P3^2;//光耦隔離輸入口7
sbit IN8= P3^3;//光耦隔離輸入口8
sbit IN9= P3^4;//光耦隔離輸入口9
sbit IN10= P3^5;//光耦隔離輸入口10
/************* 光耦隔離繼電器輸出口 **************/
sbit OUT1= P4^3;//繼電器輸出口1
sbit OUT2= P2^7;//繼電器輸出口2
sbit OUT3= P2^6;//繼電器輸出口3
sbit OUT4= P2^5;//繼電器輸出口4
sbit OUT5= P2^4;//繼電器輸出口5
sbit OUT6= P2^3;//繼電器輸出口6
sbit OUT7= P2^2;//繼電器輸出口7
sbit OUT8= P2^1;//繼電器輸出口8
sbit OUT9= P4^2;//繼電器輸出口9
sbit OUT10= P2^0;//繼電器輸出口10
sbit RUN= P4^4;//運行狀態(tài)指示燈
sbit FMQ= P0^7;//蜂鳴器控制腳
//========================================================================
// 函數(shù): void main()
// 描述: 主函數(shù)。
// 參數(shù): none.
// 返回: none.
//========================================================================
void main()//主函數(shù)
{
P0M1 = 0x00; P0M0 = 0x00; //設(shè)置為準(zhǔn)雙向口
P1M1 = 0x00; P1M0 = 0x00; //設(shè)置為準(zhǔn)雙向口
P2M1 = 0x00; P2M0 = 0x00; //設(shè)置為準(zhǔn)雙向口
P3M1 = 0x00; P3M0 = 0x00; //設(shè)置為準(zhǔn)雙向口
P4M1 = 0x00; P4M0 = 0x00; //設(shè)置為準(zhǔn)雙向口
P5M1 = 0x00; P5M0 = 0x00; //設(shè)置為準(zhǔn)雙向口
P6M1 = 0x00; P6M0 = 0x00; //設(shè)置為準(zhǔn)雙向口
P7M1 = 0x00; P7M0 = 0x00; //設(shè)置為準(zhǔn)雙向口
RUN=0; //運行指示燈亮
while (1)//主函數(shù)執(zhí)行循環(huán)掃描
{
if(IN1==0){OUT1=0;while(!IN1);OUT1=1;} //如果IN1有信號輸入OUT1繼電器吸合,等待IN1信號消失OUT1繼電器斷開
if(IN2==0){OUT2=0;while(!IN2);OUT2=1;} //如果IN2有信號輸入OUT2繼電器吸合,等待IN2信號消失OUT2繼電器斷開
if(IN3==0){OUT3=0;while(!IN3);OUT3=1;} //如果IN3有信號輸入OUT3繼電器吸合,等待IN3信號消失OUT3繼電器斷開
if(IN4==0){OUT4=0;while(!IN4);OUT4=1;} //如果IN4有信號輸入OUT4繼電器吸合,等待IN4信號消失OUT4繼電器斷開
if(IN5==0){OUT5=0;while(!IN5);OUT5=1;} //如果IN5有信號輸入OUT5繼電器吸合,等待IN5信號消失OUT5繼電器斷開
if(IN6==0){OUT6=0;while(!IN6);OUT6=1;} //如果IN6有信號輸入OUT6繼電器吸合,等待IN6信號消失OUT6繼電器斷開
if(IN7==0){OUT7=0;while(!IN7);OUT7=1;} //如果IN7有信號輸入OUT7繼電器吸合,等待IN7信號消失OUT7繼電器斷開
if(IN8==0){OUT8=0;while(!IN8);OUT8=1;} //如果IN8有信號輸入OUT8繼電器吸合,等待IN8信號消失OUT8繼電器斷開
if(IN9==0){OUT9=0;while(!IN9);OUT9=1;} //如果IN9有信號輸入OUT9繼電器吸合,等待IN9信號消失OUT9繼電器斷開
if(IN10==0){OUT10=0;while(!IN10);OUT10=1;} //如果IN10有信號輸入OUT10繼電器吸合,等待IN10信號消失OUT10繼電器斷開
}
}
/********************************************************************
結(jié)束
*********************************************************************/
|
|