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

📄 uart2io.c

📁 use USB WITH 8051 做通訊, 包含源碼.
💻 C
字号:
//
//        www.dainau.com
//
#include <AT89X51.H>

void init(void);
void waitRI(int t);
char sendbyte (char c);  


main()
{ 
  char indata;

  init();

  while(1){
    waitRI(0);
    indata=SBUF;
    RI=0;
    switch (indata) {
           case 'A':
                sendbyte(P0);
 				break;
           case 'B':
                sendbyte(P1);
 				break;
           case 'C':
                sendbyte(P2);
 				break;
           case 'D':
                sendbyte(P3 | 3);	//uart
 				break;
           case 'E':
			    waitRI(0);
                P0=SBUF;
 				break;
           case 'F':
			    waitRI(0);
                P1=SBUF;
 				break;
           case 'G':
			    waitRI(0);
                P2=SBUF;
 				break;
           case 'H':
			    waitRI(0);
                P3=SBUF | 3 ;		//uart
 				break;
           default:
 				break;
    }
  }
}

void waitRI(int t)
{
  if(t==0) 
    while(RI==0){
    //  LED=!LED;
    }
  else
    while(--t>0){
       if(RI==1) break;
    //   LED=!LED;
  }
}

void init(void)
{
  
  PCON = 0x80;
  TMOD = 0x21;
  TH1  = 0xFF;
  TCON = 0x55;
  SCON = 0x50;
  
  EA=0;
  ES=0;
  TI=1;

}

char sendbyte (char c)  
{

  while (!(SCON & 0x02));       /* while (!TI); */
  SCON &= 0xFD;                 /* TI = 0 */
  return (SBUF = c);
}


⌨️ 快捷键说明

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