串口2

/*-----------------------------------------------  
  名称:串口通信  
  网站:www.doflye.net  
  编写:shifang  
  日期:2009.5  
  修改:无  
  内容:连接好串口或者usb转串口至电脑,下载该程序,打开电源  
        打开串口调试程序,将波特率设置为9600,无奇偶校验  
        晶振11.0592MHz,发送和接收使用的格式相同,如都使用  
        字符型格式,设置正确后接受框可以看到UART test,技术论坛:www.doflye.net thank you!  
------------------------------------------------*/  
  
#include<reg52.h> //包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义                          
#include"delay.h"  
/*------------------------------------------------  
                   函数声明  
------------------------------------------------*/  
void SendStr(unsigned char *s);  
/*------------------------------------------------  
                    串口初始化  
------------------------------------------------*/  
void InitUART  (void)  
{  
  
    SCON  = 0x50;               // SCON: 模式 1, 8-bit UART, 使能接收    
    TMOD |= 0x20;               // TMOD: timer 1, mode 2, 8-bit 重装  
    TH1   = 0xFD;               // TH1:  重装值 9600 波特率 晶振 11.0592MHz    
    TR1   = 1;                  // TR1:  timer 1 打开                           
    EA    = 1;                  //打开总中断  
    //ES    = 1;                  //打开串口中断  
}                              
/*------------------------------------------------  
                    主函数  
------------------------------------------------*/  
void main (void)  
{  
  
InitUART();  
  
  
  
while (1)                         
    {  
    SendStr("UART test,技术论坛:www.doflye.net thank you!");  
    DelayMs(240);//延时循环发送  
    DelayMs(240);  
    }  
}  
  
/*------------------------------------------------  
                    发送一个字节  
------------------------------------------------*/  
void SendByte(unsigned char dat)  
{  
 SBUF = dat;  
 while(!TI);  
      TI = 0;  
}  
/*------------------------------------------------  
                    发送一个字符串  
------------------------------------------------*/  
void SendStr(unsigned char *s)  
{  
 while(*s!='\0')// \0 表示字符串结束标志,  
                //通过检测是否字符串末尾  
  {  
  SendByte(*s);  
  s++;  
  }  
}  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值