完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
求助:怎么才能保证51串口只发送一次数据? 现在是不断的发送 大神赐教! void UART_init (void) { EA = 1; ES = 1; PCON |= 0x80; //使能波特率倍速位 SCON = 0x50; //8位数据,可变波特率 AUXR |= 0x40; //定时器1时钟为Fosc,即1T AUXR &= 0xfe; //串口1选择定时器1为波特率发生器 TMOD &= 0x0f; //清除定时器1模式位 TMOD |= 0x20; //设定定时器1为8位自动重装方式 TL1 = 0xFA; //设定定时初值 TH1 = 0xFA; //设定定时器重装值 ET1 = 0; //禁止定时器1中断 TR1 = 1; //启动定时器1 } void DELAY_MS (uint z) { uint x,y; for(x=z;x>0;x--) for(y=110;y>0;y--); } void UART_R (void) interrupt 4 using 1 { unsigned char UART_data; RI = 0; UART_data = SBUF; } void UART_T (unsigned char UART_data) { SBUF = UART_data; while(ti == 0); TI = 0; } void UART_TC (unsigned char *str) { while(*str != ' |