新大陆终端辅口驱动不起来

枫之哀伤 2011-03-10 09:04:56
void open_port1() //打开辅口
{
//printf("\033!2;0;0;0Y\033[/50h"); //2:2400波特率;0无奇偶校验;0数据位8位;0停止位1位
printf("\033[/50;0h");
}

void close_port() //禁止辅口
{
printf("\033[/50l");
}

void set_tx_mode() //辅口数据直接送主机
{
printf("\033[/53h");
}
void set_rx_mode() //收到一个字符即送往主机
{
printf("\033[/54l");
}
void start_tran() //通知终端给辅口发送数据已经开始
{
printf("\033[/51h");
}
void finish_tran() //通知终端给辅口发送数据已经结束
{
printf("\033[/51l");
}
int get_message()
{
char ch, temp[10];
long i, j, waittime;
int oldstatus;
FILE * fp ;

waittime = 200000 ;
oldstatus = fcntl(0,F_GETFL) ;
fcntl(0,O_NDELAY) ;

open_port1() ;

set_tx_mode() ;
set_rx_mode() ;

start_tran() ;

ch = 'a' ;
putchar(ch) ;

finish_tran() ;

fflush(stdin) ;

for ( i=0; i<5; i++)
{
for ( j=0; j<waittime; j++)
if ((ch = getchar())!=EOF) break ;

if ((ch>47)&&(ch<58)&&(ch!=EOF))
{
temp[i] = ch ;
}
else break;
}

temp[5] = '\0';
if ( i>3 )
{
i = atoi(temp) ;
}
else
i = -3;
close_port() ;
fcntl(0,F_SETFL,oldstatus) ;
fflush(stdin) ;
fflush(stdout) ;
return i ;
}

这个问题谁知道啊,设备没有什么问题,运行的时候新大陆终端不提示启动辅口相关信息,应该是辅口没驱动起来
...全文
58 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

3,881

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 其它技术问题
社区管理员
  • 其它技术问题社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧