简单的串口通信调试,封装pcomm.dll库实现,目前主要功能:串口读写数据、缓冲区清空、串口输出字符触发事件,满足一般上位机对下位机的控制操作。
封装API函数列表:
int WINAPI sio_ioctl(int port, int baud, int mode);
int WINAPI sio_getch(int port);
int WINAPI sio_read(int port, char *buf, int len);
int WINAPI sio_putch(int port, int term);
int WINAPI sio_write(int port, char *buf, int len);
int WINAPI sio_flush(int port, int func);
long WINAPI sio_iqueue(int port);
long WINAPI sio_oqueue(int port);
int WINAPI sio_lstatus(int port);
int WINAPI sio_lctrl(int port, int mode);
int WINAPI sio_cnt_irq(int port, VOID (CALLBACK *func)(int port), int count);
int WINAPI sio_modem_irq(int port, VOID (CALLBACK *func)(int port));
int WINAPI sio_break_irq(int port, VOID (CALLBACK *func)(int port));
int WINAPI sio_Tx_empty_irq(int port, VOID (CALLBACK *func)(int port));
int WINAPI sio_break(int port, int time);
int WINAPI sio_flowctrl(int port, int mode);
int WINAPI sio_Tx_hold(int port);
int WINAPI sio_close(int port);
int WINAPI sio_open(int port);
long WINAPI sio_getbaud(int port);
int WINAPI sio_getmode(int port);
int WINAPI sio_getflow(int port);
int WINAPI sio_DTR(int port, int mode);
int WINAPI sio_RTS(int port, int mode);
int WINAPI sio_baud(int port, long speed);
int WINAPI sio_data_status(int port);
int WINAPI sio_term_irq(int port, VOID (CALLBACK *func)(int port), char code);
int WINAPI sio_linput(int port, char *buf, int lne, int term);
int WINAPI sio_putb_x(int port, char *buf, int len, int tick);
int WINAPI sio_putb_x_ex(int port, char *buf, int len, int tms);
int WINAPI sio_view(int port, char *buf, int len);
int WINAPI sio_TxLowWater(int port, int size);
int WINAPI sio_AbortWrite(int port);
int WINAPI sio_SetWriteTimeouts(int port, DWORD TotalTimeouts);
int WINAPI sio_GetWriteTimeouts(int port, DWORD *TotalTimeouts);
本文由 donque 创作,采用 知识共享署名4.0 国际许可协议进行许可
本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名
最后编辑时间为: Jan 20, 2019 at 06:51 pm