COM1和COM2口通信 串口通信

本文介绍了如何使用C语言进行COM1和COM2串口的配置,包括设置波特率、禁止中断、无校验和无停止位。通过inportb和outportb函数进行端口操作,实现数据的发送和接收,通过查询线路状态寄存器(LSR)确保数据传输的正确完成。
摘要由CSDN通过智能技术生成
#define Com1Base 0x3f8        //定义串口com1的基地址;
#define Com2Base 0x2f8        //定义串口com2的基地址;
void main()
{
   int st,fp,jp,op;
   int d=0;
   outportb(Com2Base+3,0x80);    //允许访问com2的波特率因子寄存器,禁止串口中断,无校验,无停止位;
   outportb(Com2Base+0,0x0c);    //设置com2的波特率低八位;
   outportb(Com2Base+1,0x00);    //设置com2的波特率高八位;
   outportb(Com2Base+3,0x03);    //禁止访问com2口的波特率因子寄存器,禁止串口中断,无校验,无停止位,八位数据;
   outportb(Com2Base+4,0);      //初始化串口com2的MODEM寄存器;
   outportb(Com2Base+1,0);      //初始化com2的中断允许寄存器,屏蔽串口com2
                  的中断;
   outportb(Com1Base+3,0x80);    //允许访问com1的波特率因子寄存器,禁止串口中断,无校验,无停止位;

   outportb(Com1Base+0,0x0c);        //设置com1的波特率低八位;
   outportb(Com1Base+1,0x00);        //设置com2的波特率高八位
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值