学习串口通讯时在网上找到的例子,虽然不是很顺利,但总算在这个程序的基础上实现了发送和接受。
下面的代码可能不是最好,但是根据注释,理解COM口的初始化和通讯步骤是没有问题了。
#include
<
dos.h
>
#include
<
stdio.h
>
#include
<
conio.h
>

#ifdef __cplusplus
#define
__CPPARGS ...
#else
#define
__CPPARGS
#endif

#define
PORT1 0x3F8
#define
INTVECT 0x0C

int
bufferin
=
0
;
int
bufferout
=
0
;
char
ch;
char
buffer[
1025
]; 
void
interrupt(
*
oldportlisr)(__CPPARGS); 
void
interrupt PORTINT(__CPPARGS)
{
int c;
do
{
c = inportb(PORT1 + 5);
if (c & 1)
{
buffer[bufferin] = inportb(PORT1);
这是一个通过MS-DOS和Turbo C 3.0编译的COM串口通信示例程序,介绍了如何初始化COM口并进行数据发送与接收。程序设置波特率、数据位、停止位等参数,并利用中断处理接收数据,同时将接收到的数据写入文件'com.log'。用户可以按ESC退出程序。

最低0.47元/天 解锁文章
6944

被折叠的 条评论
为什么被折叠?



