大家都知道,单片机可以通过串口跟电脑的串口 通信。
那么电脑上怎么编程实现串口上位机功能跟单片机通信呢?
也许大家都觉得很复杂,因为电脑的串口跟单片机的不同的。
图形化的编程中可以使用一些控件或者串口动态链接库之类的实现串口通信。
其实编程语言本身的基础库已经实现了,我们之前不知道而已。
今天就以Python来讲。
在网上搜索Python的串口通信资料,会发现都是要导入一堆人家写好的库。
其实呢,基础的Python核心已经帮我们实现好了。
我们都知道文件操作这个基本概念吧,Python本身就实现了,另外对于我们熟悉的C语言也是,基本输入输出库已经实现了文件的读写。
言归正传,这里讲Python。
我们看一个Python的文件操作例子
#!/usr/bin/python
# -*- coding: UTF-8 -*-
# 打开一个文件
fo = open("foo.txt", "w")
print "文件名: ", fo.name
# 关闭打开的文件
fo.close()
我们注意到,通open()就可以打开一个文件,其实端口对于系统来说也是一个特别的文件,是有固定名字的。比如串口1,就是COM1
我们测试这个假设。我们先使用虚拟串口驱动在电脑上搞出来个串口
这里只有名字表示创建成功了,还没有被操作。我们仿照上面操作文件的函数来操作这个串口试试看。
我们注意到,Python没有报错,说明语法上没问题,找到了COM1,另外看串口工具,发现这里显示了配置,说明被成功的操作了。
同样的方式操作COM2
那么有人说巧合了,那我同样操作一个不存在的COM3
发现不行,这说明一个问题:open文件操作确实是可以操作串口的。
|