请问bioscom函数是什么用的 谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 函数名: bioscom 功 能: 串行I/O通信 用 法: int bioscom(int cmd, char abyte, int port); 程序例: #include <bios.h> #include <conio.h> #define COM1 0 #define DATA_READY 0x100 #define TRUE 1 #define FALSE 0 #define SETTINGS ( 0x80 | 0x02 | 0x00 | 0x00) int main(void) { int in, out, status, DONE = FALSE; bioscom(0, SETTINGS, COM1); cprintf("... BIOSCOM [ESC] to exit ...\n"); while (!DONE) { status = bioscom(3, 0, COM1); if (status & DATA_READY) if ((out = bioscom(2, 0, COM1) & 0x7F) != 0) putch(out); if (kbhit()) { if ((in = getch()) == '\x1B') DONE = TRUE; bioscom(1, in, COM1); } } return 0; } 函数申明: int bioscom(int cmd, char byte, int port) 函数用途: RS232串口通信口操作 头 文 件: bios.h 输入参数: cmd: 0-初始化串口,1-发送一个字符,2-接受一个字符,3:返回串口状态byte: 波特率和发送位数设置,各位的含义如下: B7,B6,B5:波特率设置,具体设置为:9600波特-111,4800-110,2400-101,1200-100,600-011,300-010 B4,B3 :奇偶校验设置,具体设置为:00或10-无奇偶,01-奇校验,11-偶校验。 B2 :停止位个数,1-2个停止位,0-1个停止位 B1,B0 :10-7个数据位; 11-8个数据位port:串口号,0,1,2,3等 输出参数: 返 回 值: 16位的串口状态信息,各位的含义分别如下: 高8位 低8位(cmd=0,1,3时) 当cmd=2时,低8位用于保存接收的数据 B15: 超时错误 B7: 检测到线路信号 B14: 发送移位寄存器空 B6: 振铃指示 B13: 发送保持寄存器空 B5: 数据装置就绪 B12: 中止检测错误 B4: 数据发送结束 B11: 帧错误 B3: 线路信号变化 B10: 奇偶错误 B2: 脉冲后沿振铃检测 B9 : 溢出错误 B1: 数据装置就绪变化 B8 : 数据准备就绪 B0: 数据发送结束变化 MFC中不变矩的相关问题 DIALOG作为参数传递过程中,HWND丢失了。 工具栏的工具提示怎么实现? 很简单的一个问题,就是不知道怎么办? CString 类型如何转换为CArray类型? 如何得到几个月后的日期?谢谢 向 CDataGrid 控件邦定数据的问题 求助--.lib 如何截获IE的密码提示窗口(急) 如何动态生成带3D边框的EDIT控件? 帮忙看看这个SQL语句的问题 有哪位高手,而且是中国人!请黑掉这个网站!
功 能: 串行I/O通信
用 法: int bioscom(int cmd, char abyte, int port);
程序例: #include <bios.h>
#include <conio.h> #define COM1 0
#define DATA_READY 0x100
#define TRUE 1
#define FALSE 0 #define SETTINGS ( 0x80 | 0x02 | 0x00 | 0x00) int main(void)
{
int in, out, status, DONE = FALSE; bioscom(0, SETTINGS, COM1);
cprintf("... BIOSCOM [ESC] to exit ...\n");
while (!DONE)
{
status = bioscom(3, 0, COM1);
if (status & DATA_READY)
if ((out = bioscom(2, 0, COM1) & 0x7F) != 0)
putch(out);
if (kbhit())
{
if ((in = getch()) == '\x1B')
DONE = TRUE;
bioscom(1, in, COM1);
}
}
return 0;
}
函数用途: RS232串口通信口操作
头 文 件: bios.h
输入参数: cmd: 0-初始化串口,1-发送一个字符,2-接受一个字符,3:返回串口状态
byte: 波特率和发送位数设置,各位的含义如下:
B7,B6,B5:波特率设置,具体设置为:9600波特-111,4800-110,2400-101,1200-100,600-011,300-010
B4,B3 :奇偶校验设置,具体设置为:00或10-无奇偶,01-奇校验,11-偶校验。
B2 :停止位个数,1-2个停止位,0-1个停止位
B1,B0 :10-7个数据位; 11-8个数据位
port:串口号,0,1,2,3等
输出参数:
返 回 值: 16位的串口状态信息,各位的含义分别如下:
高8位 低8位(cmd=0,1,3时) 当cmd=2时,低8位用于保存接收的数据
B15: 超时错误 B7: 检测到线路信号
B14: 发送移位寄存器空 B6: 振铃指示
B13: 发送保持寄存器空 B5: 数据装置就绪
B12: 中止检测错误 B4: 数据发送结束
B11: 帧错误 B3: 线路信号变化
B10: 奇偶错误 B2: 脉冲后沿振铃检测
B9 : 溢出错误 B1: 数据装置就绪变化
B8 : 数据准备就绪 B0: 数据发送结束变化