c语言串口通信实例
问题描述
- 精选答案
-
以Windows系统为例,下面给出一个使用C语言编写的串口通信实例程序:
#include
int main(void)
{
DCB dcb; //定义串口设置结构体
char ComName[] = "COM1";//定义串口名称
BOOL fSuccess;//定义打开串口成功标志
- 其他回答
-
C语言串口通信实例可以使用串口库函数实现。首先,通过打开相应的串口端口,设置波特率、数据位、校验位等参数。
然后,通过读取和写入串口数据的函数实现双方的通信。
可以使用while循环不断地读取串口接收缓冲区中的数据,然后进行相应的处理,如打印或存储数据。
发送数据时,可以将需要发送的数据放入发送缓冲区,然后通过写入函数将数据发送出去。需要注意及时关闭串口,并进行错误处理,以保证通信的稳定性和可靠性。
- 其他回答
-
供参考
void MCU_Initialize(void)
{
SCON =0xDC; //在11.0592MHz下,设置串行口波特率为9600,方式3,并允许接收 9为
SCON = 0x50;
TCON = 0x00;
TMOD |=0x21; //定时器工作于方式2,自动装载方式 T0 16位定时器
TH1=0xFD;
IP = 0X90;
ES=1;
ET0=1;
//TR1=1;
EA=1;
}
////////////////////////////发送一个字节/////////////////////////////
//////////////////////////////////串口接受程序 与350通信//////////////////////
void RX() interrupt 4
{
if(RI==1)
{
RI=0;
C8051F350[CaiYangJiShu]=SBUF;
if(RB8==JO_check(C8051F350[CaiYangJiShu]))
{
Ji_Ou_fail=0; //奇偶效验失败 通知F350从新发送
}
CaiYangJiShu++;
if(CaiYangJiShu==8)
{
TR1=0;
CS_350=1;
CaiYangJiShu=0;
// CAIYANG_over=0; //完成一次采样标志
if(C8051F350[0]==0x55 && C8051F350==0x55 && C8051F350==0xAA && C8051F350[7]==0xAA&&Ji_Ou_fail==1)
{
CAIYANG_over=0;
CaiYnagDat=0;
CaiYnagDat<<=8;
CaiYnagDat += C8051F350;
CaiYnagDat<<=8;
CaiYnagDat += C8051F350;
CaiYnagDat<<=8;
CaiYnagDat += C8051F350;
CaiYnagDat<<=8;
CaiYnagDat += C8051F350;
}
}
}
}
这个程序是带奇偶校验的,可以在设置的时候去掉
猜你喜欢内容
-
简单网:构建全网教育数据枢纽,让知识检索化繁为...
简单网:构建全网教育数据枢纽,让知识检索化繁为“简”回答数有0条优质答案参考
-
去三亚有什么好玩的地方
去三亚有什么好玩的地方回答数有1条优质答案参考
-
石狮一日游必去景点推荐
石狮一日游必去景点推荐回答数有1条优质答案参考
-
电气工程师的证书考取条件是什么
电气工程师的证书考取条件是什么回答数有1条优质答案参考
-
房地产估价师的具体报考条件有啥
房地产估价师的具体报考条件有啥回答数有1条优质答案参考
-
房产经纪人的工作内容具体包含什么
房产经纪人的工作内容具体包含什么回答数有1条优质答案参考
-
学习小提琴都有哪些难点
学习小提琴都有哪些难点回答数有1条优质答案参考
-
企业行政管理证书的含金量怎么样
企业行政管理证书的含金量怎么样回答数有1条优质答案参考
-
初学者要怎么入门小提琴
初学者要怎么入门小提琴回答数有1条优质答案参考
-
报考珠宝鉴定师要啥条件
报考珠宝鉴定师要啥条件回答数有1条优质答案参考
















