中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-06-23 13:14
中国DOS联盟论坛 » 站务公告 & 版主讨论 » [建议]强烈建议! 查看 2,422 回复 4
楼 主 [建议]强烈建议! 发表于 2003-11-20 00:00 ·  中国 陕西 西安 电信
初级用户
★★
忍者
积分 376
发帖 86
注册 2003-10-16 00:00
22年会员
UID 11361
性别 男
状态 离线
编程区需要高手介入,好多问题至今还是问题,没有得到解答!
SOS:C里边的串口怎么定义,好象没人知道!
以C语言软件开发为主:http://sunny1979.icpcn.com
2 发表于 2003-11-21 00:00 ·  中国 河南 信阳 联通
元老会员
★★★★★
步行的人
积分 9,654
发帖 3,351
注册 2003-03-11 00:00
23年会员
UID 1113
性别 男
来自 湖北
状态 离线
这一块我不太熟..不敢发言..
弄花香满衣,掬水月在手。
明月鹭鸟飞, 芦花白马走。
我自一过后,野渡现横舟。
青云碧空在,净瓶水不流。
http://dos.e-stone.cn/guestbook/index.asp
======中國DOS聯盟=====
我的新网页http://rsds.7i24.com欢迎光顾
3 有谁帮我? 发表于 2003-11-24 00:00 ·  中国 陕西 西安 电信
初级用户
★★
忍者
积分 376
发帖 86
注册 2003-10-16 00:00
22年会员
UID 11361
性别 男
状态 离线
有谁帮我?
以C语言软件开发为主:http://sunny1979.icpcn.com
4 发表于 2003-11-24 00:00 ·  中国 台湾 中华电信(HiNet)数据中心
初级用户
积分 168
发帖 16
注册 2003-11-21 00:00
22年会员
UID 13141
性别 男
状态 离线
何為"串口"可以解釋一下嗎
5 发表于 2003-11-25 00:00 ·  中国 安徽 芜湖 电信
初级用户
积分 146
发帖 11
注册 2003-06-22 00:00
23年会员
UID 5691
性别 男
状态 离线
TC for DOS下控制串口
在Trubo C for DOS下要通过串口发送数据,就需要知道串口地址,然后才可以向该地址直接发送字符。
程序如下:
#include
#include
#include
#include
#include
#include
#include
typedef short SHORT;

#define WAITIME 30000
#define DBUF 0X0 /* DATA BUFFER REGISTER */
#define LSR 0x5 /* line status register */

static SHORT portaddress={0x3f8,0x2f8,0x3e8,0x2e8};
/* 串口地址 COM1 COM2 COM3 COM4 */
static SHORT portadd; /*串口号码*/

/*发送数据到指定地址*/
void Out_func( port, c )
SHORT port;
char c;
{
SHORT i = 0;

do
{
i++;
if (i == WAITIME) break;
}
while (!(inp(port+LSR) & 0x20)); /* 0x3ed */
/* wait until trans preparation */

if (i < WAITIME)
outp(port+DBUF,c);
}

/*把连续的字符串分解成单个字符发送*/
void Out_Array( num, str )
SHORT num;
char *str;
{
SHORT i;
char *p;

p = str;
for ( i = 0; i<num; i++, p++ )
Out_func( portadd, *p );
}

/*初始化串口*/
void light_init()
{
Out_func( portadd, 0x1b );
Out_func( portadd, 0x40 );

/*发送清屏命令*/
Out_func( portadd, 0x0c );
}


论坛跳转: