微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 单片机和PC通过串口通信

单片机和PC通过串口通信

时间:11-19 来源:互联网 点击:

/接收数据结束

check_sum -= rec_temp;//计算最终校验和

if((uchar)check_sum==rec_temp)//判断数据接收是否正确,

{//数据最后一位是校验和的后8位

rec_flag = 1;//置接收完成标志

}

}

}

}

}

//==================================================

//函数:void UART1_Demo(void)

//描述:串口通信测试程序,使用T1方式2自重载方式做波特率发生器,

//串口使用方式1,8位,可变波特率

//晶振22.1184MHz,波特率9600;

//参数:无

//返回:无

//作者:geoff日期:2010/11/08

//修改:geoff日期:2010/11/09

//版本:V1.1

//==================================================

void UART1_Demo(void)

{

UART1_Init();

TI = 1;//SBUF置空

/////测试用

LCD_RegWrite(0x80);

while(1)

{

if(rec_flag == 1)//把接收到的数据,发送到串口输出

{

rec_flag = 0;//清接收完成标志

UART1_Send_String(rec_buf,REC_BUF_LEN);

}

Rst_WDT();//喂狗

}

}

//==================================================

//函数:void main(void)

//描述:主函数

//参数:无

//返回:无

//作者:geoff日期:2010/11/08

//修改:日期:

//版本:V1.1

//==================================================

void main(void)

{

LCD_Init();//单片机LCD初始化

UART1_Demo();

}

本文通过约定特定通信协议,实现单片机和PC的通信,经过测试,单片机收发正常;出现不能通信时,可以多发几个非0XFA数据,让单片机准备接收,然后按照约定的格式发送,并保证每次发送字符长度为10个字节。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top