当设计的电路需要单片机和外部设备串口通信时,通常的做法是先拿到外部设备,收集设备串口通信参数和通信协议,然后用串口调试软件进行通信测试,测试完成后再考虑单片机编程;单片机编程后也不急于和设备通信,先用串口调试软件和单片机进行通信测试,通过串口调试软件查看通信代码是否正确,最后才把单片机和串口设备连接起来统一调试。
要使用串口调试软件,就要和相关硬件配合,串口现在已不是计算机的标准配置,需要用USB转串口芯片虚拟出串口。常用的集成电路有PL2303、CH341T、CP2102,其中PL2303价格便宜,CH341T支持转RS485,CP2102体积小,不需要外部晶振,成品的电路板市面上很多。这里介绍自制的一种USB转串口电路,见图1-5。
图1-5 USB转串口电路
图1-5所示电路使用了CH341T,因为其外部接RS485集成电路扩展出了RS485通信总线,能和仪表、变频器和综合保护器等有RS485接口的设备通信;电路设计中加了一个切换开关,方便用串口的TTL电平接口对单片机下载程序和调试。
串口调试软件有很多种,各有特色,本书中有关串口调试都使用STC单片机的程序下载软件里自带的串口调试软件。STC单片机程序下载软件界面见图1-6。
图1-6 STC单片机程序下载软件界面
软件界面分左右2个区域,左侧为常规的程序下载界面,使用时选对使用的单片机型号,当计算机USB接口接入USB转串口芯片后,串口号会显示接入的设备名和系统自动分配的串口号,如果当前显示的不是要下载程序的设备,可单击“扫描”或单击下拉列表选择要使用的USB转串口设备。单击“打开程序文件”,选择要下载的文件,然后看硬件选项,一般不需修改,单击“下载/编程”,等提示下载成功就完成了下载,单片机直接进入运行状态。右侧区域为功能区,选择“串口助手”就出现串口调试助手界面,使用时先选择好串口号和串口参数,再单击“打开串口”就可以使用了。接收缓冲区和发送缓冲区可根据需要选择文本模式或HEX(16进制)模式,随时可以切换。