一、前言
在 AI8051U单片机手册中,介绍了利用它的 USB 通过CDC的方式完成和微机之间的数据传输。按照数据手册中介绍的办法,从 STCAI 官网下载测试软件。打开其中 范例程序里面的中断模式下的示例程序。主程序相当的简洁明了。下面测试一下示例程序的功能。
二、测试单片机
设计AI8051U 测试电路板。这个电路板在之前适用于测试 USB下载电路模块的。电路很简单,核心是一片 AI8051U单片机,通过一个五芯接口与USB端口相连。这里的TXD,RXD,分别对应 USB 的 DP 和 DM 引线。P3.2端口主要是设置单片机是否进入 USB 下载模式。如果 P3.2在单片机上电的时候,被强制接低电平,单片机便进入USB下载模式,可以使用 STC ISP 软件完成程序的下载。通过弹簧夹子,将电路板上的接口与USB相连。大家可以看到,实际上 USB 引线可以相当的随意,这个USB通讯接口还是非常稳健的。
下面通过编译,下载测试软件。下载之后,单片机自动运行测试程序。可以看到,计算机设备管理器中,出现了一个新的虚拟串口。这就是AI8051U对应的 CDC 串口。下面,将虚拟串口对应的端口号修改为 COM2。
三、测试串口
在测试程序中,在USB中断中,将接收到的字符原路返回,在桌面串口终端中,可以测试这个功能,可以看到串口可以返回键盘输入的相同的字符。注意,在微机中,打开CDC 串口所使用的波特率,对于测试结果没有影响。
如果在发送之前,将所有的字符加1.可以看到,上位机通过COM2发送和接收的字符也相差1。这说明在单片机USB中断中可以对接收到的字符进行处理。
※ 总 结 ※
本文测试了 AI8051U单片机的USB功能。的确,使用单片机USB的CDC模式进行和微机之间进行串口通讯,软件编程非常简单。
参考资料[1]
蓝牙控制STC单片机USB下载程序: https://zhuoqing.blog.csdn.net/article/details/144471994
用于STC的USB下载接口模块: https://zhuoqing.blog.csdn.net/article/details/144443216