• VirtualBox Ubuntu虚拟机串口编程


    VirtualBox Ubuntu虚拟机串口编程 

    此文适用于Ubuntu虚拟机实现串口通信,可以在虚拟机上运行程序,直接将windows下的串口映射到虚拟机上即可。在网上找了半天,没有找到合适的教程,而且网上的版本比较老。加之自己摸索,现将过程整理如下,便于日后复习与其他人使用。

    首先我的VirtualBox的版本为5.2.16,目前已经支持了四个串口了(网上的好多教程还只支持两个)。言归正传:

    1、关闭虚拟机,打开VirtualBox的设置菜单,找到串口选项,如下图所示:

     

       2、目前只支持四个串口,肯定够一般程序使用了。选中启用串口选项,这样就可以配置串口信息了,下面将个选项详细说明下:

    串口编号:需要映射的串口号(此为Windows下串口设备连接的串口号)

    端口模式:这里有五个选项,分别说明下:

     

    未连接:创建串口,但是没有建立物理连接

    主机管道:把串口设置成主机上的一个管道pipe

    主机设备:串口对应主机上的设备,例如此处COM3,那么对应到Ubuntu上为/dev/ttyS2,这里我使用的这种模式。这样就可以在虚拟机上访问这个串口名实现串口通信了。

    裸文件:将串口输出,放到一个文件里面去。具体设置,就很简单,直接将文件路径填上就可以了;

    TCP:这个没有细研究,应该是通过ip:port的形式访问串口吧。

        这里主要选择了主机设备,这样就可以在虚拟机上访问对应的串口了

    启动虚拟机,然后

    可以通过命令查看linux上串口状态:

              sudo setserial -g /dev/ttyS*(若是没有setserial命令根据提示安装就行)

          这里可以看出串口设备的状态,此时ttyS2对应的状态如下:

    其他串口都为unknown,即不可用,只有ttyS2为可用串口,这样我们就可以通过操作文件那样open,read,write来操作这个串口了。需要调用tcgetattr,tcsetattr等设置串口的属性,这里不介绍串口使用。

    最后:需要注意的是,这里有可能因为权限问题open串口失败,这里要检查下是否有相应的权限。直接sudo chmod 777 /dev/ttyS2修改下权限,或者sudo方式运行应用程序即可。

              

  • 相关阅读:
    ubuntu下安装chromium浏览器adobe flash插件
    Eclipse运行时提示failed to create the java virtual machine 解决方法
    64位Ubuntu下不能生成R.java文件的问题(Android)
    Ubuntu下Eclipse的中文支持(GBK)
    Android工程编译错误:The project cannot be built until build path errors are resolved
    Apache POI
    ubuntu下安装Google拼音输入法
    [导入]ThinkPHP新手推荐学习路线
    [导入]示例Blog发表日志的程序流程(总结)
    [导入][视频] ThinkPHP入门第一步
  • 原文地址:https://www.cnblogs.com/wisdomyzw/p/9592905.html
Copyright © 2020-2023  润新知