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

📄 uart.c

📁 ADS开发的BOOTLOADER,针对2410,是某培训班出的!
💻 C
字号:

#include "2410addr.h"
#include "uart.h"


void uart_send(char *wrbuf)

{int i;
char *p;
p=wrbuf;
while(*p!='\0')
    {while(!(rUTRSTAT0&0x02));
     rUTXH0=*(p++);
     for(i=0;i<100;i++);
    }
 
}

char getc()
{while(!(rUTRSTAT0&0x01));
return rURXH0;

}


void uart_receive(char *buff)
{char *wrbuf;
char c;

wrbuf=buff;
while((c=getc())!='\r')
 { 
 if(c=='\b')
 {wrbuf--;
 sendc(c);
 sendc(' ');
 sendc(c);
 continue;
 }  

*(wrbuf++)=c;
sendc(c);
}
*wrbuf='\0';
uart_send("\n\r");
}



void sendc(char c)
{while(!(rUTRSTAT0&0x02));
rUTXH0=c;
}





char do_getc(unsigned long int timeout , int * eorror)
{unsigned char c;
unsigned long int do_timeout;
unsigned long int wreorror;
 do_timeout=timeout;
while(!(rUTRSTAT0&0x01))
      {
       if(timeout==0) break;
          timeout--;
          

       }

if(timeout==0)
   {wreorror=-1;
   c=0;
    }
else {
      c=rURXH0;
      wreorror=rUERSTAT0;
      }


if(wreorror)
   {if(eorror)
      {*eorror=wreorror;
      }
   }
   return (c);
 }


void uart_send_ii(int agrc,    char **argv)

{int i;
const char *p;
if(agrc<2)
{uart_send("Wrong.\n\r");
return;
}
p=argv[1];
while(*p!='\0')
    {while(!(rUTRSTAT0&0x02));
     rUTXH0=*(p++);
     for(i=0;i<100;i++);
    }
 
uart_send("\n\r");
}




⌨️ 快捷键说明

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