uart8051.h:
![9125154-20fe861d75658a17.JPG](https://i-blog.csdnimg.cn/blog_migrate/e27c97e84c5a962587a7c564324736e9.webp?x-image-process=image/format,png)
#ifndef __UART_H__
#define __UART_H__
#define XTAL 12000000
#define baudrate 9600
char UART_putchar(char ch);
char UART_getkey(void);
void InitCom(void);
#endif
uart8051.c:
![9125154-76f025e532f804ab.JPG](https://i-blog.csdnimg.cn/blog_migrate/78c543e4c700261813f57de34f100a27.webp?x-image-process=image/format,png)
![9125154-15e2e3399db46493.JPG](https://i-blog.csdnimg.cn/blog_migrate/2f369415dd023706cbd401d348bd1ed6.webp?x-image-process=image/format,png)
#include <reg51.h>
#include "uart8051.h"
char UART_putchar(char ch)
{
if(ch=='\n')
{
SBUF = 0x0d;
while(TI == 0);
TI=0;
SBUF = 0x0a;
}
else
SBUF = ch;
while(TI == 0);
TI = 0;
return ch;
}
char UART_getkey(void)
{
char c;
while(!RI);
c = SBUF;
RI = 0;
return(c);
}
void InitCom(void)
{
SCON=0X50;
TMOD=0X20;
PCON=0X80;
TH1=0XF3;
TL1=0XF3;
ES=0;
EA=1;
TR1=1;
}
main.c:
![9125154-10a3bed7a10afabf.JPG](https://i-blog.csdnimg.cn/blog_migrate/2d8bc24d7cf5cc4d90d14e5f74cc0d97.webp?x-image-process=image/format,png)
![9125154-d7fed064befeb89b.JPG](https://i-blog.csdnimg.cn/blog_migrate/7bcd5f0f01f71212433a604723bfd604.webp?x-image-process=image/format,png)
#include <reg51.h>
#include <stdio.h>
#include "uart8051.h"
char putchar(char ch)
{
return UART_putchar(ch);
}
char _getkey(void)
{
return UART_getkey();
}
void main(void)
{
unsigned int tem;
InitCom();
printf("´®¿Ú²âÊÔ£¬³£¹æʹÓÃ:\n");
UART_putchar('A');UART_putchar(' ');
UART_putchar('B');UART_putchar(' ');
UART_putchar('C');UART_putchar(' ');
UART_putchar('D');UART_putchar(' ');
UART_putchar('\n');
printf("Ç¿´óµÄ¸ñʽ»¯Á÷Êä³ö£º\n");
printf("Êä³öÒ»¸öÕûÐΣº%d\n",(int)6886);
printf("Êä³öÒ»¸öʵÐÍ£º%d\n",(float)68.86);
while(1)
{
printf("\nÊäÈëÒ»¸öÕûÐÍ£¬ËÍP2¿Ú×¢Òâ¹Û²ìP2¿ÚµÄµÆ:\n");
scanf("%d",&tem);
P2=tem;
}
}
编译之后,打开烧录软件烧录,然后打开串口通信助手进行调试:
![9125154-397c1947b8e7a23e.png](https://i-blog.csdnimg.cn/blog_migrate/a23ed820f85aa8f8c0e99be836b42153.webp?x-image-process=image/format,png)
如上图,分别输入1+空格,2+空格,3+空格,效果图如下:
1+空格:
![9125154-a28783025725bf97.png](https://i-blog.csdnimg.cn/blog_migrate/0be5b7dd0d6851906bd4c79bca2a004a.webp?x-image-process=image/format,png)
2+空格:
![9125154-b0eae944823166e5.png](https://i-blog.csdnimg.cn/blog_migrate/685d942ab619cd2bf603da05a655af80.webp?x-image-process=image/format,png)
3+空格:
![9125154-f4e11d6de7653138.png](https://i-blog.csdnimg.cn/blog_migrate/5381d3c2707191705ca9e664297a4dc6.webp?x-image-process=image/format,png)