error C141: syntax error near '='这个错误很多?这些错误怎么改?

#include<stdio.h>
#include<reg51.h>
#include<intrins.h>
#include<absacc.h>
#include<math.h>
#define uchar unsigned char
typedef unsigned char uchar;
typedef unsigned int uint;
sbit PWMPIN = P3^4;
sbit MOTOLCONZ = P1^3;
sbit MOTOLCONF = P1^4;
uchar smode, cyclet;
sbit GATESENSOR = P3^2;
sbit SENSORB1 = P3^1;
sbit SENSORB2 = P1^5;
sbit SENSORB3 = P1^6;
sbit SENSORB4 = P3^0;
sbit COMPARATOR = P3^6;
bit flagclose;
void IniTimer01()
{
TMOD = 0X11;
ET0 = 1;
EA = 1;
}
void main()
{
IniTimer01();
while(1)
{
OpenDoor();
CloseDoor();
}
}
//********************PWM发生子程序*******************//
void Timer0() interrupt 1
{
cyclet = ~cyclet;
TR0 = 0;
if(cyclet)
{
TH0 = 0XFC;
TL0 = 0XE0;
if (smode = =0)
PWMPIN = 0;
else
PWMPIN = 1;
}
else
{
TH0 = 0XFF;
TL0 = 0X28;
if (smode = =0)
PWMPIN = 1;
else
PWMPIN = 0;
}
TR0 = 1;
}
void StartMotol(uchar direct, uchar speed) //direct 1:正转 0:反转 speed 0:慢速 1:快速
{
smode = (speed = =0)?0:0xff;
TR0 = 0;
TH0 = 0XFC;
TL0 = 0XE0;
TR0 = 1;
if(direct)
{
MOTOLCONZ = 0;
MOTOLCONF = 1;
}
else
{
MOTOLCONZ = 1;
MOTOLCONF = 0;
}
}
//******************开关门子程序***************//
void OpenDoor()
{
uchar tcnt;
if((GATESENSOR = =1)&&(COMPARATOR = =1))
return;
StartMotol(1,1);
while(SENSORB2 = =0); //判断是否减速
StartMoto1(1,0);
while(SENSORB1 = =0); //判断是否停止转动
StopMotol();
tcnt = 0;
while(tcnt<101)
{
TR1 = 0;
TH1 = 0X3C;
TL1 = 0XB0;
TF1 = 0;
TR1 = 1;
while(TF1 = =0);
TF1 = 0;
if(GATESENSOR = =1)
tcnt = 0;
else
tcnt + +;
}
flagclose = 1;
}
void CloseDoor()
{
if(flagclose = =0)
return;
flagclose = 0;
StartMotol(0,1);
while(SENSORB3 = =0) //判断是否减速
{
if(GATESENSOR = =1)
return;
if(COMPARATOR = =0)
return;
}
StartMotol(0,0);
while(SENSORB4 = =0) //判断是否停止转动
{
if(GATESENSOR = =1)
return;
if(COMPARATOR = =0)
return;
}
StopMotol();
}

红外传感.C(31): warning C206: 'OpenDoor': missing function-prototype
红外传感.C(32): warning C206: 'CloseDoor': missing function-prototype
红外传感.C(50): error C141: syntax error near '='
红外传感.C(61): error C141: syntax error near '='
红外传感.C(76): error C141: syntax error near '='
红外传感.C(76): error C141: syntax error near ')'
红外传感.C(76): error C141: syntax error near ':'
红外传感.C(80): error C202: 'TRO': undefined identifier
红外传感.C(104): error C231: 'OpenDoor': redefinition
红外传感.C(107): error C202: 'GATESENSOR': undefined identifier
红外传感.C(107): error C141: syntax error near '='
红外传感.C(107): error C141: syntax error near '&&'
红外传感.C(107): error C141: syntax error near '='
红外传感.C(107): error C141: syntax error near ')'
红外传感.C(112): error C141: syntax error near '='
compiling 智能门禁程序.c...
..\DESKTOP\智能门禁程序.C(7): error C141: syntax error near 'unsigned'
Target not created
去掉这一行#define uchar unsigned char