我在C中编写了一个程序,将一个字节发送到串口(com)。 我用BIOSCOM发送数据 但我猜它没有打开端口。 请告诉我如何打开和关闭C中的COM端口。
我的代码在这里:
#define COM1 1;
bioscom (1 , 65 , COM1);
请帮帮我......
答案 0 :(得分:5)
我使用以下Win32 API在命令行Win32实用程序中打开串口:
CreateFile
- 使用字符串COMx
作为文件名,将x
替换为串口号。
BuildCommDCB
和SetCommState
- 用于设置参数(波特率,奇偶校验,数据位,停止位)。
ReadFile
和WriteFile
- 用于使用CreateFile
返回的句柄进行读写。
CloseHandle
- 关闭CreateFile
返回的句柄。
在MSDN上搜索有关每个功能的文档,您应该可以快速开始工作。
答案 1 :(得分:0)
其中一个bioscom API(API编号0)用于初始化(未打开)串口:例如指定波特率等。
假设bioscom正在使用BIOS API,我认为不需要打开串口:因为串口硬件已经存在,并且BIOS输出到硬件。
但是,当操作系统将处理器置于保护模式并安装特定于操作系统的设备驱动程序时,操作系统可能会禁用BIOS API。
我不知道bioscom,但是Google finds documentation and examples of how to use it。