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

📄 com.c

📁 一个51单片机下编写红外遥控接收程序
💻 C
字号:

#include  "headfiles\headfiles.h"

struct baudStaff
{
     char t1;
     char pcon;
};


//Crystal Freq  =  18.432MHz

struct baudStaff code baudList[] =
{
    {0xff,0x80}, /*0   1152000*/
    {0xfe,0x80}, /*1    576000*/
    {0xfd,0x80}, /*2    288000*/
    {0xfc,0x80}, /*3    144000*/
    {0xf6,0x80}, /*4    115200*/
    {0xec,0x80}, /*5     57600*/
    {0xe2,0x80}, /*6     38400*/
    {0xd8,0x80}, /*7     28800*/
    {0xc4,0x80}, /*8     19200*/
    {0x88,0x80}  /*9      9600*/
};

void RandT(void) interrupt 4
{
  unsigned char tmp;
   if(TI)
   {
      TI=0;
      return;
   }
   if(RI)
   {
       RI=0;
       tmp = SBUF;
  //     P1 = tmp;
       SBUF = tmp;
   }
}

void SetCom(char baudNum)
{
      SCON = 0x50;
      PCON = baudList[baudNum].pcon;
      REN  = 1;
      TMOD = 0x21;
      TH1  = baudList[baudNum].t1;
	  TL1  = baudList[baudNum].t1;
      AUXR = AUXR|0x40;
      TR1  = 1;
      ES   = 1;
      EA   = 1;
}



void Send_Str(unsigned char *str)
{
   while(*str!= '\0')
     {
	    SBUF = *str;
		str++;
		Delay(30);
	 }
}


void Send_HEX_char(unsigned char ch)
{
    unsigned  char tmp;
	tmp = ((ch&0xF0)>>4);
	if(tmp<10)
	 {
	   SBUF = tmp+48;
	 }
	else
	 {
	   SBUF = tmp+55;
	 }
	Delay(30);
	tmp = ch&0x0F;
	if(tmp<10)
	 {
	   SBUF = tmp+48;
	 }
	else
	 {
	   SBUF = tmp+55;
	 }
	Delay(30);
}

⌨️ 快捷键说明

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