⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 io.c

📁 SM5964 ISP程序。.........
💻 C
字号:
#include<io.h>
#include<reg52.h>
#include<stdio.h>
Interrupt(void uart(void),4)
{
 if(RI==1)
 	{
 	rx_buffer_wr(SBUF);
	RI=0;
 	}
}
/*char _getkey(void)
{
char c;
c=rx_buffer_rd();
return(c);
}
/*void rs232output(char tx_buffer_char[50])
{
  uchar i;
  for(i=0;i<50;i++)
  	{
  	SBUF=tx_buffer_char[i];
	WAIT_EO_TX;
    if(tx_buffer_char[i]=='\n')
    break;
    uart_tx(0x0d);
  	}
	uart_tx(0x0d);
}*/
void uart_rx_enable(void)
{
rx_index_wr=rx_index_rd=nb_rx_data=0;
WAIT_EO_TX;
uart_tx(XON);
ES=1;
}
void uart_rx_disable(void)
{
 ES=0;
 TI=1;
}
void rx_buffer_wr(uchar rx_data)
{
nb_rx_data++;
rx_buffer[rx_index_wr]=rx_data;
rx_index_wr=(rx_index_wr+1)%RX_BUF_SIZE;
if((tx_off==FALSE)&&(nb_rx_data>XOFF_THRESH))
      {
      uart_tx(XOFF);
	  tx_off=TRUE;
       }
}
uchar rx_buffer_rd(void)
{
 uchar rx_data;
 //EA=0;
 nb_rx_data--;
 //EA=1;
 rx_data=rx_buffer[rx_index_rd];
 rx_index_rd=(rx_index_rd+1)%RX_BUF_SIZE;
 data_cnt++;
 if(data_cnt==0) uart_tx('.');
 //EA=0;
 if((tx_off==TRUE)&&(nb_rx_data<XON_THRESH))
 	{
 	uart_tx(XON);
	tx_off=FALSE;
 	}
 //EA=1;
 return(rx_data);
}
void uart_tx(uchar tx_data)
{
SBUF=tx_data;
WAIT_EO_TX;
}































⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -