/******************************************************************
- 功能描述:主函数
- 隶属模块:无
- 函数属性:无
- 参数说明:无
- 返回说明:无
- 注:.....
******************************************************************/
void main(void)
{
SCON=0xD0; //UART工作于方式3 波特率为(1+SMOD)·(定时器1的溢出率)/32 REN=1接收允许
PCON=0x0; //不倍频,晶振24M
AUXR|=0X40; //T1工作在1T模式*12
TMOD=0x20; //T1工作于8位自动重装模式
TH1 =0xFD; //波特率20833*12=250K
TL1 =0xFD;
TR1=1; //开定时器1
PS=1; //设置串口中断为最高优先级
ES=1; //开UART中断
EA=1; //开总中断
WDT_CONTR= 0x3d; //开看门狗 64分频 16M 0.67s
cnt=3; //3通道
EN_485=0; //MAX485收发选择 EN_485=1发, EN_485=0收
P1M1=0X00; //P1口设为推挽输出
P1M0=0XFF;
P3M1=0X00; //P3口设为推挽输出 P3.7为普通IO
P3M0=0XFE;
//==================
COM=0;
P1=0;
Work_LED=0;
R=G=Y=OFF;
Delay(10);
while(1)
{
DMX512_ok=0;
DMX_channel=0;
WDT_CONTR= 0x3d;
RGB();
if(!DMX512_ok)
{
Tianbian(); //无信号
}
}
}
|