wangjiu
驱动牛犊
驱动牛犊
  • 注册日期2001-10-17
  • 最后登录2010-01-16
  • 粉丝0
  • 关注0
  • 积分50分
  • 威望5点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
阅读:1302回复:2

COM1串口控制寄存器直接编程,请帮助

楼主#
更多 发布于:2004-08-13 17:39
我串口通讯时碰到一个问题,请指导:
     在windows 98 VXD RING0环境下直接对COM1口16550寄存器编程无法通讯,但当我同时打开Windows98 Msdos窗口在debug环境下向MoDem控制寄存器0x3fc口输出0x0f时,我的程序有时可以通讯?这时退出Debug,还能通讯,如果退出Msdos窗口通讯停止?
我的程序如下:
      _outp(0x3fb,0x80);  //SLAB=1
      _outp(0x3f8,0x30);   //设置除数锁存器高低位
      _outp(0x3f9,0x00);
      _outp(0x3fb,0x03);  //设定数据格式,8个数据位,一个停止位,无校验
      _outp(0x3fc,0x03);  //设置Mosdm控制信号
      _outp(0x3f9,0x00);  //禁止中断
        FIFO用各种格式试验无效
      _outp(0x3f8,0x0f);  //输出数据为什么无效?
  多谢指教!

最新喜欢:

tyanttyant
AllenZh
驱动老牛
驱动老牛
  • 注册日期2001-08-19
  • 最后登录2015-11-27
  • 粉丝19
  • 关注10
  • 积分1316分
  • 威望2387点
  • 贡献值7点
  • 好评度321点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-08-16 09:19
我串口通讯时碰到一个问题,请指导:
     在windows 98 VXD RING0环境下直接对COM1口16550寄存器编程无法通讯,但当我同时打开Windows98 Msdos窗口在debug环境下向MoDem控制寄存器0x3fc口输出0x0f时,我的程序有时可以通讯?这时退出Debug,还能通讯,如果退出Msdos窗口通讯停止?
我的程序如下:
      _outp(0x3fb,0x80);  //SLAB=1
      _outp(0x3f8,0x30);   //设置除数锁存器高低位
      _outp(0x3f9,0x00);
      _outp(0x3fb,0x03);  //设定数据格式,8个数据位,一个停止位,无校验
      _outp(0x3fc,0x03);  //设置Mosdm控制信号
      _outp(0x3f9,0x00);  //禁止中断
        FIFO用各种格式试验无效
      _outp(0x3f8,0x0f);  //输出数据为什么无效?
  多谢指教!
 

具体这个东西要查查com的通信规范了,以前直接通过写端口操作过COM和LPT等,但现在那些资料丢了,所以帮不了你
1,承接Windows下驱动/应用开发 2,本人原创虚拟鼠标/键盘,触摸屏,虚拟显卡,Mirror驱动,XP无盘的SCSI虚拟磁盘驱动等 3,windows下有尝技术服务(包括BUG调试,员工培训等) 欢迎深圳和海外企业联系.msn:mfczmh@sina.com
tyant
禁止发言
禁止发言
  • 注册日期2004-03-17
  • 最后登录2018-06-02
  • 粉丝0
  • 关注0
  • 积分74652分
  • 威望373563点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-08-16 11:16
用户被禁言,该主题自动屏蔽!
游客

返回顶部