×
单片机 > 单片机程序设计 > 详情

51单片机串口向计算机发送字符串C程序

发布时间:2020-06-02 发布时间:
|
51单片机串口向计算机发送字符串C程序,本布衣实验过的,可以用,串口需有一个232-TTL电平转换
通过串口调试助手可以看到发送字符信息。波特率为9600
#include
#include
//--------------------------------
char *name_month(int n);
void Delay(int x);
void put(char str);
void initUart(void);
void putString(unsigned char const *pstr);//const
//------------------------------
void put(char str)
{
SBUF=str;
while(!TI);
TI=0;

//------------------------------
void initUart(void)
{
  TMOD=0x20;
    SCON=0x50;
    TH1=250;
    TL1=250;   
    TR1=1;
    EA = 1;
  Delay(2);
  putString("Uart init!\n");
}

//--------------------------
void Delay(int dly)
{
  int j,k;
  for (j=0;j   for(k=0;k<125;k++);
}
//---------------------------------
char *name_month(int n)
{
  static char *name[]=
          { 
          "Illegal month\n", 
          "January\n", 
          "February\n", 
          "March\n", 
          "April\n", 
          "May\n", 
          "June\n", 
          "July\n", 
          "August\n", 
          "September\n", 
          "October\n", 
          "November\n", 
          "December\n" 
                };
  return((n<1||n>12) ? name[0]:name[n]);
}
//------------------------------------
void putString(unsigned char const *pstr)//const
{
  while(1)
  {
  if(*pstr=='\0') break;
    put(*pstr++);
  }
}
//--------------------------------------
void main(void)
{
  int i; 
  char *s;
  initUart();
  putString("I come here pointer!\n");
  for (i=1;i<13;i++)
  {
      s=name_month(i);
    while(1)
    {
    if (*s=='\0') break;     
      put(*s++);
    }   
    Delay(1000);
  }
}
关键字:51单片机  串口  发送字符串

『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
ARM 汇编的必知必会