什么是上位机 从事过嵌入式软件开发或者工控机开发的,对上位机应该都不陌生。简单来说,上位机指的是能够发送指令的计算机或者控制器,通过各类通讯获取下位机信息,控制下位机的行为等。 最典型的例子,电脑端的串口助手(上位机),通过RS232-DB9或者USB转串口,与单片机(下位机)的串口通讯,获取单片机系统的状态等。 图片来自百度百科 此系列文章,与大家讲讲如何使用Python进行串口通讯型上位机的开发。此为第一篇。 准备工作 1. 串口调试助手,用于验证通讯,此处推荐使用Uartassistant,百度一下即可轻松找到下载方法 2. Virtual Serial Port:虚拟串口,可以在没有实际串口线连接的情况,在电脑端虚拟出对接的两个串口,方便我们在没有下位机或者未就绪的情况下,验证数据的收发,下图为虚拟出COM1与COM2两个串口,并内部互联,打开两个1中调试助手,分别配置为COM1和COM2,波特率相同,在COM1发送“Hello world”,COM2即可收到 3. Pyqt5:用于开发界面,详见前面几期内容 4. PyCharm:Python IDE
Pyserial 初步使用 Pyserial API的使用参见官网: https:///pyserial/pyserial_api.html。 初始化参数: name:设备名字 常用接口 isOpen():查看端口是否被打开。 简易验证代码: 1. 使用虚拟串口,配置COM1与COM2 2. 打开串口助手,配置为COM2,9600后打开 3. Pycharm或者jupyter notebook输入如下代码并运行 运行截图如下: 1. Python打开串口后发送“Python serial port demo!” 2. 另外一端的COM2,手动输入“Yes”,Python程序接收到后打印出来 总结 本篇主要介绍了什么是上位机以及Python开发串口通讯型上位机所需的准备工作,并简单展示了如何进行串口收发。 一个好的上位机还需要更多功能,将会在接下来几期逐步深入与完善,敬请期待哦。 作者:跨界程序员Vincent |
|