Keil 编译中的syntax error near...简单问题求助
在keil编译器中编译c程序,出现了 syntax error near"]", 程序不复杂,想请教一下是哪错了。多谢。
#include<reg51.h>
#define uint unsigned int
#define uchar unsigned char
void delay(uint k);
void delayus(uint k);//延时
void write_LCD_command(uchar command);//命令写入LCD
void write_LCD_data(uchar data_a);//数据写入LCD
void init_1602(void);//初始化LCD
void clear_LCD();//LCD清屏
sbit P1_0=P1^0;
sbit P1_1=P1^1;
sbit P3_3=P3^3;
sbit P3_4=P3^4;
sbit P3_5=P3^5;
sbit P3_6=P3^6;
sbit k=P1^0;
sbit k1=P1^1;
sbit L1=P3^6;
sbit L2=P3^5;
sbit L3=P3^3;
sbit S=P3^4;
sbit rs=P2^4;
sbit rw=P2^5;
sbit en=P2^6;
void write_LCD_command(uchar command)//命令写入LCD
{
rw=0;//写入LCM
rs=0;//指令寄存器
en=1;//始能端
P0=command;//写命令
delay(20);//延时40*20us
en=0;//关闭始能端
rw=1;//读取LCM
}
void write_LCD_data(uchar data_a)//数据写入LCD//.......2
{
rw=0;
rs=1;
en=1;
P0=data_a;
delay(1);//40us
en=0;
rw=1;
}
void init_1602(void)//初始化LCD/////...................3
{
write_LCD_command(0x38);// 0x38 单行显示//8位传输
write_LCD_command(0x0c);// 0x0C 屏幕开启//光标不出现//不闪烁
}
void clear_LCD()//LCD清屏...........................4
{
write_LCD_command(0x01);//0x01 LCD清屏
write_LCD_command(0x02);//0x02 光标回到左上角
}
void delay(uint k)//延时..................................8
{
k=10*k;//40us
while(k--);
}
//main ()
main(unsigned int i,unsigned char str[])
{
if(k==1)
L3=1;
else
L3=0;
if(k1==0)
{
L2=0;
L1=1;
S=0;
}
else
{
L1=0;
L2=1;
S=1;
delay(10);
S=0;
delay(5);
L2=0;
}
str[]={"state=11111111"};
str[7]=P1^0;
str[8]=P1^1;
str[9]=P1^2;
str[10]=P1^3;
str[11]=P1^4;
str[12]=P1^5;
str[13]=P1^6;
str[14]=P1^7;
for(i=0;i<16;i++);
write_LCD_data(str[i]);
}