单片机论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 646|回复: 2
收起左侧

帮看一下小的单片机串口程序 字符显示不对

[复制链接]
里本来 发表于 2017-5-23 15:28 | 显示全部楼层 |阅读模式
ddd.png Q8C}G08R3S2KX%V7H%CSWKO.png
显示的两个结果如图,为什么字符显示就不对?????

这是显示字符的程序
#include<stc12c5a60s2.h>


void InitUSART()
  {
   SCON=0x50;
   TMOD=0x20;
   TH1=0xFD;
   TL1=0xFD;
   TR1=1;
  }
//串口1发送数据
void Tx_Byte(char T_Byte)
{
   TI=0;
   SBUF=T_Byte;
   while(TI==0);
   TI=0;
}


void main()
{
  while(1)
  {
    char b=9;
    InitUSART();

     Tx_Byte(b);
   }
}

这是显示字符串的
//初始化串口1
#include<stc12c5a60s2.h>


void InitUSART()
  {
   SCON=0x50;
   TMOD=0x20;
   TH1=0xFD;
   TL1=0xFD;
   TR1=1;
  }
//串口1发送数据
void UartPrintf(unsigned char *p)                                //发送字符串
{        
         while(*p)
         {
                 SBUF=*(p++);
                while(TI==0)
                {

                };
                TI=0;
        }   
}

void main()
{
  while(1)
  {
    char c=9;
    InitUSART();

     UartPrintf("chuan kou ce shi");
   }
}


回复

使用道具 举报

 楼主| 里本来 发表于 2017-5-23 15:38 | 显示全部楼层
没有人吗
回复

使用道具 举报

imxuheng 发表于 2017-5-23 16:54 | 显示全部楼层
给你优化了一下

#include<reg52.h>    //包含单片机寄存器的头文件
#include <intrins.h>
#define XTAL 11059200L //System frequency
#define BAUD 9600 //UART baudrate

void InitUSART()
  {
    SCON  = 0x50;                        // SCON: 模式 1, 8-bit UART, 使能接收  
    TMOD |= 0x20;               // TMOD: timer 1, mode 2, 8-bit 重装
        TH1 = (unsigned char)(256 - XTAL/12/32/BAUD);
    TL1 = TH1;     //初值等于重载值
    ET1 = 0;       //禁止T1中断
    ES  = 1;       //使能串口中断
    TR1 = 1;       //启动T1
        EA    = 1;   
  }

//串口1发送数据
void UartPrintf(unsigned char *p)                                //发送字符串
{        
         while(*p)
         {
                 SBUF=*(p++);
                while(TI==0)
                {

                };
                TI=0;
        }   
}

void main()
{
  while(1)
  {
    char c=9;
    InitUSART();

     UartPrintf("chuan kou ce shi");
   }
}
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|单片机论坛 |51黑电子论坛单片机 联系QQ:125739409;技术交流QQ群582644647

Powered by 单片机教程网

快速回复 返回顶部 返回列表