开发工具:
文件大小: 288kb
下载次数: 0
上传时间: 2009-06-27
详细说明: 用C语言做的DOS界面的串口通信程序 void setPort(int size, char check, int stop){ unsigned char b = 0x00; disable(); switch(size){ case 6:b |= 0x01; break; case 7:b |= 0x02;break; case 8:b |= 0x03; break; } switch(check){ case 'N': case ' n':b &= ~0x08;break; case 'J': case 'j':b |= 0x08; break; case 'O': case 'o':b |= 0x18;break; } switch(stop){ case 1: b &= ~0x04;break; case 2: b |= 0x04;break; } outportb(PORT[PORTNUM] + 3, b); /*register interrupt*/ outportb(PORT[PORTNUM] + 1, 0x01);/*接收中断*/ outportb(PORT[PORTNUM] + 4, 0x0b);/*零MODEM,恒有效状态*/ oldhandle = getvect(INTR[PORTNUM]);/*取得硬中断向量表的中断处理程序*/ setvect(INTR[PORTNUM],newhandle); /*开启IRQx*/ outportb(0x21, inportb(0x21) & INTRENTER[PORTNUM]); enable(); } /* baund:波特率 */ void initCom(int baund){ unsigned char b; disable(); outportb(PORT[PORTNUM] + 3, 0x80);/*设DLAB=1*/ outportb(PORT[PORTNUM] + 1, 0X00);/*高八位设0*/ switch(baund){ case 2400:b = 0x30;break; case 3600:b = 0x20;break; case 4800:b = 0x18;break; case 7200:b = 0x10;break; case 9600:b = 0x0c;break; } outportb(PORT[PORTNUM], b); enable(); } void closeCom(){ disable(); setvect(INTR[PORTNUM],oldhandle); enable(); } void setDefineOpion(){ } void readOpion(){ } int AcceptOrRefuse(){ int index=0; int key = 0; int ret; char str[2][7]={"accpet","refuse"}; while(key!=13) { gotoxy(12,5+index); textcolor(15); printf("%s",str[index]); index=1-index; gotoxy(12,5+index); textcolor(13); printf("%s",str[index]); key=bioskey(0); key=key&0xff; } if (index == 0){ ret = 0; strcpy(sendmsg, "_accept"); strcat(sendmsg, "\0"); sendMessage(); } else { ret = 1; strcpy(sendmsg, "_refuse"); strcat(sendmsg, "\0"); sendMessage(); } return ret; } int waiting() { clock_t start; clock_t end; int ret = -1; int point=1; strcpy(recvmsg, "\0"); while(1) { start=clock(); while(1) { end=clock(); if((end-start)/18.2>0.5) break; } if(point==0) { printf("\b \b\b \b\b \b"); point=1; continue; } printf("."); point++; if(point==4) { point=0; } if (recvmsg[0] != '\0') { break; } } if(strcmp(recvmsg,"_refuse")==0){ } else{ ret = 0; } strcpy(recvmsg, "\0"); return ret; } ...展开收缩
(系统自动生成,下载前可以参看下载内容)
下载文件列表
相关说明
- 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
- 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度。
- 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
- 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
- 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
- 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.