怎么实现MCU与pc的串口通信

大家好~!我想问下,用C51怎么实现MCU与pc的通信,功能要实现如下,单片机在UART 以为中断方式接受待定字符串“I love you”后由URAT串口以查询方式发送相关的字符串“I love you too ,I will be with you”

程序如何设计呢?能不能给些提示。能发个程序上来或者相关的程序上来就更好了谢谢~!
汇编和C都可以

#include <reg51.h>

#include <string.h>

unsigned char ch;

bit read_flag= 0 ;

void init_serialcom( void )

{

SCON = 0x50 ; //SCON: serail mode 1, 8-bit UART, enable ucvr

//UART为模式1,8位数据,允许接收

TMOD |= 0x20 ; //TMOD: timer 1, mode 2, 8-bit reload

//定时器1为模式2,8位自动重装

PCON |= 0x80 ; //SMOD=1;

TH1 = 0xFD ; //Baud:19200 fosc="11".0592MHz

IE |= 0x90 ; //Enable Serial Interrupt

TR1 = 1 ; // timer 1 run

TI=1;

}

//向串口发送一个字符

void send_char_com( unsigned char ch)

{

SBUF=ch;

while (TI== 0);

TI= 0 ;

}

//串口接收中断函数

void serial () interrupt 4 using 3

{

if (RI)

{

RI = 0 ;

ch=SBUF;

read_flag= 1 ; //就置位取数标志

}

}

main()

{

init_serialcom(); //初始化串口

while ( 1 )

{

if (read_flag) //如果取数标志已置位,就将读到的数从串口发出

{

read_flag= 0 ; //取数标志清0

send_char_com(ch);

}

}

}

这个程序由四部分组成

init_serialcom( void ) //初始化串口

send_char_com( unsigned char ch) //向串口发送字符

serial () interrupt 4 using 3 //中断串口接收字符

main() //主函数
温馨提示:内容为网友见解,仅供参考
第1个回答  2009-11-28
一般 的 C51 都有 串口通信的例程 吧

至于说PC 端,网络上例程也不少

推荐 龚建伟 的书
Visual C++_Turbo C串口通信编程实践

网络上有pdf电子文档
相似回答