基于WINCE的多串口扩展系统的设计
3.3 多路异步串口通信的WINCE 应用程序
在本系统中我们用 CSerialPort 类对TL16C554 驱动进行了串口应用程序的封装,该类基于多线程,其工作流程如下:首先设置好串口参数,如波特率等;然后开启串口监视工作线程监测串口接收到的数据(S3C2440以中断方式接收数据)或其他串口事件,再以消息方式通知主线程,从而激发消息处理函数来进行数据处理,这是对接收数据而言的;发送数据可以直接向串口发送。下面是对CSerialPort 类使用方法的简单描述:
CSerialPort m_SerialPort; /* 定义扩展串口对象 */
m_SerialPort.OpenPort(_T(EUT1:), 19200); /* 以19200 的波特率打开扩展串口EUT1*/
m_SerialPort.m_pReceiveCallback = (ReceiveCallback*) (receiveByte);
/* 监听串口接收数据的回调函数 */
m_SerialPort.WriteChar(byte, 1); /* 从扩展串口发送一个字节数据 */
结 语
本文利用ARM9 处理器+CPLD+16C554 的方案设计基于WINCE 的多路串口扩展系统的软硬件,并成功应用于多终端采集系统中,表明系统方案的正确性。同样利用此方案可以扩展更多的串口芯片从而提高系统串口通道数,另外系统中SD 卡内的应用程序可以灵活配置,从而适应更多的应用场合。系统具有广泛的应用前景。
参考文献
[1] Volnei A. Pedroni. Circuit Design with VHDL[M]. Beijing: Publishing House of Electronics Industry.2007.
[2] Douglas Boling. Programming Windows Embedded CE 6.0 Developer Reference[M]. Washington,USA:arrangement with the original publisher.2008.
[1] 邓川云,樊庆文等.基于嵌入式WinCE的远程数据采集系统[J].微计算机信息.2009,6-1:94-95.
[3] 周建设.Windows CE 设备驱动及BSP开发指南[M].北京:中国电力出版社,2009.
[4] 薛大龙,陈世帝,王韵.Windows CE 嵌入式系统开发从基到实践[M].北京:电了工业出版社,2008.
[5] 赵建领.Protel 电路设计与制版宝典[M].北京:电了工业出版社,2007.
[6] 王海祥,陈美君.基于ARM9的串口扩展设计[J].计算机与现代化,2008,12:84-87.
[7] 周建芳,黄凤辰.基于TL16C554的水情中心站多路数据接收[J].中国科技信息,2005,18:10.
本文作者创新点:使用嵌入式 ARM9 处理器与CPLD 处理器带串口扩展芯片进行多串口扩展系统设计,系统稳定可靠,可广泛用于多终端采集系统。
- Linux嵌入式系统开发平台选型探讨(11-09)
- VxWorks实时操作系统下MPC8260ATM驱动的实现(11-11)
- VXWORKS内核分析(11-11)
- Linux内核解读入门(11-09)
- linux文件系统基础(02-09)
- 基于Winodws CE的嵌入式网络监控系统的设计与实现(03-05)