zhliao2

风雨兼程,一路向北-------fpga (Keep a quiet heart study)
MCU发送字符串或字符给PC(字符格式,ASCII格式)

晶振11.0592MHz,发送和接收使用的格式相同,都使用字符型格式,PC一直接受的Crazy_Didong!

#include<reg52.h>                 

#define uint unsigned int

//串口初始化
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;                //打开串口中断,注意了,若ES打开的话则PC接受的都是00
}                            

//发送一个字节
void SendByte(unsigned char dat)
{
 SBUF = dat;
 while(!TI);
      TI = 0;
}

//发送一个字符串
void SendStr(unsigned char *s)
{
    while(*s!='\0')// \0 表示字符串结束标志,通过检测是否字符串末尾
    {
        SendByte(*s);
        s++;
    }
}


//延时1ms
void delay1ms ( uint z )
{
    uint x, y;
    for ( x = z; x > 0; x -- )
        for ( y = 110; y > 0; y -- );
}


//主函数
void main (void)
{
    InitUART();

    while (1)                       
    {
        SendStr("Crazy_Didong!");//发送字符串
        //SendByte ('o');//显示0,用字符的格式表示 
        //SendByte (65); //显示A,用10进制的格式表示
        //SendByte (0x40); //显示A,用十六进制的格式表示
        delay1ms(500);
    }
}

posted on 2012-07-08 13:42  zhliao  阅读(1112)  评论(0)    收藏  举报