51单片机 串口发送数据(只是发送)

51单片机 串口发送数据(只是发送)用于调试。

#include <reg51.h>

#define uchar unsigned char 
#define uint unsigned int

#define XTAL 11059200 // CUP 晶振频率
#define baudrate 9600 // 通信波特率


/*************************************************
函数:uart_init
功能:初始化串口
出口:void
入口:void
*************************************************/
void uart_init()
{

	TMOD = 0x20; // 定时器1工作于8位自动重载模式, 用于产生波特率
	TH1=(unsigned char)(256 - (XTAL / (32L * 12L * baudrate)));
	TL1=(unsigned char)(256 - (XTAL / (32L * 12L * baudrate))); // 定时器0赋初值
	SCON = 0x50;
	PCON = 0x00;
	TR1 = 1;
	IE = 0x00; // 禁止任何中断

}


/*************************************************
函数:uart_tx_byte
功能:串口发送一个字节
出口:void
入口:一个字节
*************************************************/
void uart_tx_byte(uchar str)
{
	SBUF=str;
	while(TI == 0);
	TI = 0;
}
/*************************************************
函数:uart_tx_string
功能:串口发送一个字符串
出口:void
入口:字符串数组
*************************************************/
void uart_tx_string(uchar *str)
{
	while(*str!='\0')
	{
		uart_tx_byte(*str++);
	}
}

void main(void)
{
    *str="123"
    uart_init(); 
    uart_tx_byte('0');
    uart_tx_string(str);
}

猜你喜欢

转载自blog.csdn.net/fzf1996/article/details/90601283