您现在所在的是:

串口通信

回帖:2个,阅读:3401 [上一页] [1] [下一页]
951
Rockey99
文章数:12
年度积分:50
历史总积分:951
注册时间:2003/3/17
发站内信
发表于:2003/5/3 20:35:00
#0楼
各位:
    我是一个将要毕业的大四学生,我的毕业设计的题目是“基于PLC的通信控制”,是pc与plc之间的通信。
    我用的plc是omron的CQM1. 我编了一个程序。但在执行是,计算机就弹出“系统无法打开应用程序要求的COM1口”,我试过换成COM2口,也不行。我反复检查过通信协议,没问题。我用CX-Programmer里的一个梯形图Trafficlights,它可以成功下载到PLC里,但,当我用基于C语言编的通信程序去执行一些命令时,就出现了我所说的情况。
    请给我点指点吧!!!!!!
   
   EMAIL:yuan-rocket@163.net
   盼复!
951
Rockey99
文章数:12
年度积分:50
历史总积分:951
注册时间:2003/3/17
发站内信
发表于:2003/5/8 1:19:00
#1楼
我就是但用初始化那部分程序去执行,也不行。一下是那部分:
第一个:.
/* PlC-PC serial communication progam */
#include<dos.h>
#define com1 0
/*initialize the com*/
main()
{
int j;
clrscr();
j=bioscom(0,0xfe,com1);
printf("the statu of the port after being initialized is %x\n",j);
printf("%x",j);
getch();
}



另外一个:
/*initialize the seril port*/
#include "dos.h"
void portinit(int port,unsigned char code)
{
union REGS r;
r.x.dx=port;
r.h.ah=0;
r.h.al=code;
int86(0x14,&r,&r);
printf("\nthe statu of port after being initialized is %x\n",r.h.ah);
}
/*test the port if it can be opened with the portinit only*/
void portinit(int port,unsigned char code);
main()
{
 union REGS r ;
 int port=0;
 unsigned char code=0xfe;
 portinit(port,code);
 getch();
}
951
Rockey99
文章数:12
年度积分:50
历史总积分:951
注册时间:2003/3/17
发站内信
发表于:2003/5/20 0:59:00
#2楼
问题已经解决了。原来是别的应用程序占用了COM口。

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2024 Gkong.com, All Rights Reserved

46.8003